Advertisement
PaweU

str zesp

Dec 4th, 2018
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.01 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. struct algebr {
  5.     int re;
  6.     int im;
  7. };
  8.  
  9. struct wykladn {
  10.     double modul;
  11.     double arg;
  12. };
  13.  
  14. //wersja 1
  15.  
  16. void przelicz (struct algebr liczba, struct wykladn *wynik) {
  17.     wynik->modul=sqrt(liczba.re*liczba.re+liczba.im*liczba.im);
  18.     wynik->arg=acos(liczba.re/wynik->modul);
  19. }
  20.  
  21. //wersja 2
  22.  
  23. struct wykladn licz_strukturowo (struct algebr liczba) {
  24.     struct wykladn obliczenia;
  25.     obliczenia.modul = sqrt(liczba.re*liczba.re+liczba.im*liczba.im);
  26.     obliczenia.arg = acos(liczba.re/obliczenia.modul);
  27.     return obliczenia;
  28. }
  29.  
  30. int main (void) {
  31.  
  32.     struct algebr liczba = {1,-2};
  33.     struct wykladn wynik;
  34.  
  35.     //wersja 1: funkcja void ze wskaznikiem do wynik
  36.     przelicz (liczba, &wynik);
  37.  
  38.  
  39.     //wersja 2: funcja struct ktora zwraca strukture z obliczeniami
  40.     //wynik = licz_strukturowo (liczba);
  41.  
  42.  
  43.     printf ("Modul liczby zespolonej %d", liczba.re);
  44.     if (liczba.im > 0) printf ("+");
  45.     printf ("%di to %.2lf, a jej argument to %.2lf\n", liczba.im, wynik.modul, wynik.arg);
  46.  
  47.     return 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement