diff options
Diffstat (limited to 'rushs/evalexpr/handling_complex/complex.c')
| -rw-r--r-- | rushs/evalexpr/handling_complex/complex.c | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/rushs/evalexpr/handling_complex/complex.c b/rushs/evalexpr/handling_complex/complex.c deleted file mode 100644 index 79a10be..0000000 --- a/rushs/evalexpr/handling_complex/complex.c +++ /dev/null @@ -1,51 +0,0 @@ -#include "complex.h" - -#include <stdio.h> - -void print_complex(struct complex a) -{ - printf("complex(%.2f ", a.real); - - if (a.img < 0) - { - printf("- %.2fi", -a.img); - } - else - { - printf("+ %.2fi", a.img); - } - printf(")\n"); -} - -struct complex neg_complex(struct complex a) -{ - struct complex z = { -a.real, -a.img }; - return z; -} - -struct complex add_complex(struct complex a, struct complex b) -{ - struct complex z = { a.real + b.real, a.img + b.img }; - return z; -} - -struct complex sub_complex(struct complex a, struct complex b) -{ - return add_complex(a, neg_complex(b)); -} - -struct complex mul_complex(struct complex a, struct complex b) -{ - struct complex z = { a.real * b.real - a.img * b.img, - a.real * b.img + a.img * b.real }; - return z; -} - -struct complex div_complex(struct complex a, struct complex b) -{ - struct complex z = { - (a.real * b.real + a.img * b.img) / (b.real * b.real + b.img * b.img), - (a.img * b.real - a.real * b.img) / (b.real * b.real + b.img * b.img) - }; - return z; -} |
