C言語の構造体の問題が分かりません
以下のソースコードを使って次の2つの問題に答えよ。というものです。
#include<stdio.h>
#include<math.h>
struct cartes{
double x,y; /*x-axis,y-axis*/
};
struct polar{
double r,th; /*radius,theta*/
};
struct cartes p2c(struct polar a)
{
struct cartes d;
d.x=a.r*cos(a.th);
d.y=a.r*sin(a.th);
return d;
}
struct polar c2p(struct cartes b)
{
struct polar e;
e.r=sqrt(b.x*b.x+b.y*b.y);
e.th=atan(b.y/b.x);
return e;
}
void main(void)
{
struct cartes c;
struct cartes c1={1,1},c2={1,1.7320508},c3={1.7320508,1};
struct polar p1,p2,p3;
struct polar p={1.41421356,0.7853982};
p1=c2p(c1);
p2=c2p(c2);
p3=c2p(c3);
c=p2c(p);
printf("radius=%lf, theta=%lf(radians)\n",p.r,p.th);
printf("x-axis=%lf, y-axis=%lf\n",c1.x,c1.y);
printf("radius=%lf, theta=%lf(radians)\n",p2.r,p2.th);
printf("x-axis=%lf, y-axis=%lf\n",c.x,c.y);
}
1.2次元直行座標における2点の座標を与えられて、2点間の距離を求める関数を作り、正しく動作するようにせよ。
2.複素数を構造体として定義せよ。次に2つの複素数変数を受けてその和、差、積、商を求める関数を作り、正しく動作するようにせよ。
以上2つの問題についてソースコードを書いてご説明いただければ幸いです。
補足
おっしゃるとおりです。 「輸出入は関係ない」という補足がありました。 これは閉鎖経済と解釈して良いのでしょうか? アルファベットが何を示しているのかは、全く示されていませんでした。 ということは、まずこれらが何を示しているのかを調べる必要がありますね。