• 算法提高 6-17复数四则运算


                %g不会输出无用的0;

              刚开始用int 结果应该是double 

                                                                                                      算法提高 6-17复数四则运算  
    时间限制:1.0s   内存限制:512.0MB
        
      设计复数库,实现基本的复数加减乘除运算。
      输入时只需分别键入实部和虚部,以空格分割,两个复数之间用运算符分隔;输出时按a+bi的格式在屏幕上打印结果。参加样例输入和样例输出。
      注意考虑特殊情况,无法计算时输出字符串"error"。
    样例输入
    2 4 * -3 2
    样例输出
    -14-8i
    样例输入
    3 -2 + -1 3
    样例输出
    2+1i
    #include<iostream>
    #include<cstdio>
    #include<cstring>
    using namespace std;
    int main()
    {
        double a,b,c,d;
        double s1=0,s2=0;
        char s;
        scanf("%lf%lf",&a,&b);
        getchar();
        scanf("%c",&s);
        scanf("%lf%lf",&c,&d);
       // printf("c=%c
    ",s);
       int flag=0;
        if(s=='*')
            {
                s1=a*c-b*d;
                s2=b*c+a*d;
            }
         if(s=='/')
         {
             if(c==0&&d==0)
                   {
                       printf("error");
                       flag=1;
                   }
             else
             {
               s1=((a*c+b*d)/(c*c+d*d));
              s2=(b*c-a*d)/(c*c+d*d);
             }
    
         }
         if(s=='-')
         {
             s1=a-c;
             s2=b-d;
         }
         if(s=='+')
         {
             s1=a+c;
             s2=b+d;
         }
         if(flag==0)
         {
         if(s2>0&&s1!=0)
         printf("%g+%gi
    ",s1,s2);
         if(s2<0&&s1!=0)
         printf("%g%gi
    ",s1,s2);
         if(s2==0)
           printf("%g
    ",s1);
         if(s1==0&&s2!=0)
           printf("%gi",s2);
    
         }
        return 0;
    }
  • 相关阅读:
    asp.net中插件开发模式说明
    Url路径重写的原理
    Linux上搭建各种环境(一)
    常见Post提交数据方式接口测试
    Jmeter4.0----CSV Data Set Config_使用表格进行参数化(22)
    弱网测试----App
    性能测试基础
    使用fiddler实现手机抓包
    Jmeter4.0----发送邮箱之SMTP Sampler(21)
    Jmeter4.0----发送测试结果到邮箱之邮件观察仪(20)
  • 原文地址:https://www.cnblogs.com/cancangood/p/4357870.html
Copyright © 2020-2023  润新知