负数 的 极坐标 与 角度 转化

 直接编译运行即可

 

#include <bits/stdc++.h>
using namespace std;
#define PI 3.14159265
void menu()
{
    printf("********   转化器  ************\n");
    printf("*****  0 - 退出       *********\n");
    printf("*****  1 - 极坐标转   *********\n");
    printf("*****  2 - 直角坐标转 *********\n");
    printf("*******************************\n");
    printf("请选择 $ ");
}
void fun2()
{
    cout << "输入直角坐标,用空格分隔:\n";
    double a, b;
    cin >> a >> b;
    double len = sqrt(a*a+b*b);
    double alpha = atan(b/a);
    alpha = alpha * 180 / PI;
    if(alpha < 0)
        alpha += 90;
    printf("%6f,%6f\n",len, alpha);
}
void fun1()
{
    cout << "输入长度,角度,用空格分隔:\n";
    double len, alpha;

    cin >> len >> alpha;
    alpha = alpha * PI /180;
    double a = len * cos(alpha);
    double b = len * sin(alpha);

    printf("%6f,%6f\n",a, b);
}
int main()
{
    char buf[12];
    menu();
    scanf("%s",buf);
    while(buf[0]!='0')
    {
        switch(buf[0])
        {
        case '1':
            fun1();
            break;
        case '2':
            fun2();
            break;
        case '0':
            ;
            break;
        default:
            printf("输入错误!\n");
        }
        menu();
        scanf("%s",buf);
    }
    system("cls");
    cout << "感谢使用!\n";
    system("pause");
    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值