1. 任务描述
把极坐标(r,θ) (θ之单位为度)转换为直角坐标( X,Y)。
转换公式是:
x=r.cosθ
y=r.sinθ
2. 代码实现
/*
*Copyright(c)2018,CSDN
*All rights reserved.
*文件名称:ordinate_transfer.cpp
*作 者:马娅芳
*完成日期:2018.12.30
*版 本 号:v1.0
*问题描述:把极坐标转换为直角坐标
*程序输入:某一点的极坐标
*程序输出:该点对应的直角坐标
*/
#include <stdio.h>
#include <math.h>
int main(){
double r, angle, x, y;
double pi = acos(-1);
scanf("%lf", &r);
printf("r = %lf\n", r);
scanf("%lf", &angle);
printf("angle = %lf\n", angle);
x = r * cos(angle /( 2 * pi ));
y = r * sin(angle /( 2 * pi));
printf("x = %lf\n",x);
printf("y = %lf\n",y);
return 0;
}
3. 运行结果
4. 知识点总结
(1)在标准C数学函数里(标准C数学函数集,参考文档《C/C++语言参考》),cos 使用规则如下:
需要注意的是cos()带入计算的参数是弧度,因此输入角度后需要进行角度到弧度的转换,转换公式是:弧度=角度/2π。而 π 需要使用定义为一个常量,使用pi = acos(-1),就可以得到精准的 π 值。
(2)为明显看出该点坐标在极坐标系和直角坐标系下的值,可以在输入之后将极坐标系下的值打印出来。