3.7 week3习题|minigram 3

2019-03-17  本文已影响0人  反复练习的阿离很笨吧

pageObject的注册 1 2 1
pageObject的data属性
运算表达式的数据绑定
使用开发者工具查看和修改页面状态数据

using namespace std;
#include <cmath>
#include <math.h>
#include <iostream>
#include <cstdio>

int main(int argc, const char * argv[]) {
    // insert code here...
    float a,b,c;
    float x1,x2;
    double esp=pow(10,-7);
    cin>>a>>b>>c;
    if(pow(b,2) == 4 * a * c)
    {
        x1=-b/(2*a);
        printf("x1=x2=%.5f",x1);
    }
    else if(pow(b,2) > 4 * a * c)
    {
        x1 = (-b + sqrt(b*b-4*a*c))/(2*a);
        x2 = (-b - sqrt(b*b-4*a*c))/(2*a);
        printf("x1=%.5f;x2=%.5f",x1,x2);
    }
    else{
        x1=-b/(2*a)+esp;
        x2=sqrt(4*a*c-b*b) / (2*a);
        printf("x1=%.5f+%.5fi;x2=%.5f-%.5fi",x1,x2,x1,x2);
    }
    return 0;
}
  1. 用sqrt()要#include <math.h>
    用pow()要#include <cmath>
    这谁记得住啊?
  2. printf()里面的输出参数是没有&的。
    输出时,只需要值就行了;而输入时,就是把值赋值给具体的变量时,必须知道变量的地址。
  3. x1=-b/(2*a)+esp;
    没有这个esp小值,会出现-0??
    https://blog.csdn.net/u013721768/article/details/51125175
using namespace std;
#include <iostream>
#include <cstdio>

int main(int argc, const char * argv[]) {
    // insert code here...
    int a,b;
    char ch;
    cin>>a>>b>>ch;
    switch(ch)
    {
        case '+':cout<<a+b<<endl;break;
        case '-':cout<<a-b<<endl;break;
        case '*':cout<<a*b<<endl;break;
        case '/':
            if(b!=0)
            {
                cout<<a/b<<endl;break;
            }
            else
            {
                cout<<"Divided by zero!";
            }
            break;
        default:cout<<"Invalid operator!";
    }
    return 0;
}

之前没写过switch case,看着面生,以为只能switch整数……

上一篇下一篇

猜你喜欢

热点阅读