Я начал учить си++. Класс комплексных чисел и операции с ними. Объясните, пожалуйста, построчено – что где происходит((.., чтобы мне что-то понять. Заранее, большое спасибо!!!
Я начал учить си++. Класс комплексных чисел и операции с ними. Объясните, пожалуйста, построчено – что где происходит((.., чтобы мне что-то понять. Заранее, большое спасибо!!!
Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.
27 марта 2009 в 10:02
А может он не знает, что такое "комплексные числа"? Тогда K&R не помогут
27 марта 2009 в 1:01
по поводу последнего обращайтесь к книжке Кернигана и Ричи.
27 марта 2009 в 0:04
Ну скорее Си, а не Си++
И это никак не класс, а структура, с набором функций для работы с ней.
По поводу объяснений – может стоит сначала попробовать изучить язык?
27 марта 2009 в 0:01
"Объясните, пожалуйста, построчено – что где происходит"
26 марта 2009 в 23:05
А что ты знать хочешь?)
26 марта 2009 в 23:03
#include "complex.h"
#include <math.h>
complex_t mul(complex_t x, complex_t y)
{
complex_t t;
t.a=x.a*y.a-x.b*y.b;
t.b=x.a*y.b+x.b*y.a;
return t;
}
complex_t add(complex_t x, complex_t y)
{
complex_t t;
t.a=x.a+y.a;
t.b=x.b+y.b;
return t;
}
complex_t d(complex_t x, complex_t y)
{
complex_t t;
t.a=(x.a*y.a+x.b*y.b)/(y.a*y.a+y.b*y.b);
t.b=(x.b*y.a-x.a*y.b)/(y.a*y.a+y.b*y.b);
return t;
}
void eq(complex_t *x, complex_t y)
{
x->a=y.a;
x->b=y.b;
}
complex_t neg(complex_t x)
{
complex_t t;
t.a=-x.a;
t.b=-x.b;
return t;
}
double absval(complex_t x)
{
double r;
r=sqrt((x.a)*(x.a)+(x.b)*(x.b));
return r;
}
26 марта 2009 в 23:03
это h-файл
#ifndef __COMPLEX_H__
#define __COMPLEX_H__
typedef struct
{double a,b;}
complex_t,*pcomplex_t;
complex_t mul(complex_t x, complex_t y);
complex_t add(complex_t x, complex_t y);
complex_t d(complex_t x, complex_t y);
void eq(complex_t *x, complex_t y);
complex_t neg(complex_t x);
double absval(complex_t x);
#endif