Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- struct urojone
- {
- int a[2];
- int b[2];
- };
- void wybor(int *rodzaj)
- {
- printf("Program wykonuje podstawowe operacje arytmetyczne na liczbach zespolonych\n");
- printf("Jesli chcesz dodac liczby zespolone nacisnij 1\nJesli chcesz odejmowac liczby zespolone nacisnij 2\nJeœli chcesz pomnozyc liczby zespolone nacisnij 3\nJeœli chcesz podzielic liczby zespolone nacisnij 4\n");
- scanf("%d", &*rodzaj);
- }
- void liczby(struct urojone *s)
- {
- printf("Podaj liczbe rzeczywista do 1 liczby zespolonej\n");
- scanf("%d", &s->a[0]);
- printf("Podaj liczbe urojona do 1 liczby zespolonej\n");
- scanf("%d", &s->a[1]);
- printf("Podaj liczbe rzeczywista do 2 liczby zespolonej\n");
- scanf("%d", &s->b[0]);
- printf("Podaj liczbe urojona do 2 liczby zespolonej\n");
- scanf("%d", &s->b[1]);
- printf("Twoja pierwsza liczba zespolona: %d %dj\n",s->a[0],s->a[1]);
- printf("Twoja druga liczba zespolona: %d %dj\n",s->b[0],s->b[1]);
- }
- void dodawanie(int wynik[2], struct urojone *s)
- {
- wynik[0]=s->a[0]+s->b[0];
- wynik[1]=s->a[1]+s->b[1];
- }
- void odejmowanie(int wynik[2],struct urojone *s)
- {
- wynik[0]=s->a[0]-s->b[0];
- wynik[1]=s->a[1]-s->b[1];
- }
- void mnozenie(int wynik[2],struct urojone *s)
- {
- int j=-1;
- wynik[0]=s->a[0]*s->b[0]+(s->a[1]*s->b[1]*j);
- wynik[1]=s->a[0]*s->b[1]+s->a[1]*s->b[0];
- //printf("\n\n%d %dj", wynik[0], wynik[1]);
- }
- void dzielenie(int wynik[2],struct urojone *s)
- {
- int j=-1;
- wynik[0]=(s->a[0]*s->b[0]+(s->a[1]*(s->b[1]*(-1))*j))/(pow(s->b[0],2)-pow(s->b[1],2)*j);
- wynik[1]=(s->a[0]*(s->b[1]*(-1))+s->a[1]*s->b[0])/(pow(s->b[0],2)-pow(s->b[1],2)*j);
- }
- void obliczenia(int rodzaj, int wynik[2],struct urojone uro)
- {
- if(rodzaj == 1)
- {
- dodawanie(wynik,&uro);
- }
- if(rodzaj == 2)
- {
- odejmowanie(wynik,&uro);
- }
- if(rodzaj == 3)
- {
- mnozenie(wynik,&uro);
- }
- if(rodzaj == 4)
- {
- dzielenie(wynik,&uro);
- }
- }
- int main()
- {
- struct urojone uro;
- int rodzaj;
- int wynik[2];
- wybor(&rodzaj);
- liczby(&uro);
- obliczenia(rodzaj,wynik,uro);
- printf("Wynik wynosi %d %dj",wynik[0],wynik[1]);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement