计算机的改良

简化题意:

  输入一个一元一次方程,解方程(只有加减,没有乘除)

这道题难度并不大,只是较复杂的模拟,但是其实这道题是一个很好的例子。

什么例子?

就是c++程序的意义和应用:是用来解决问题的

现在的刷题是为了以后能更好地解决问题

#include<bits/stdc++.h>
using namespace std;
char x; int coe,value,opp=1;
double ans;
int main(){
    char c=getchar(); 
    int cur=0,sign=1; bool value_gotten=false;
    while (true){
        if (c>='a' && c<='z'){
            x=c; if (cur==0 && !value_gotten) coe+=opp*sign,value_gotten=false; 
            else coe+=opp*sign*cur,cur=0,sign=1,value_gotten=false;
        }
        else if (c=='-') value+=-opp*sign*cur,cur=0,sign=-1,value_gotten=false; 
        else if (c=='+') value+=-opp*sign*cur,cur=0,sign=1,value_gotten=false;
        else if (c>='0' && c<='9') cur=cur*10+c-'0',value_gotten=true;
        else if (c=='=') value+=-opp*sign*cur,cur=0,sign=1,opp=-opp,value_gotten=false;
        else {value+=-opp*sign*cur;break;}
        c=getchar();
    }
    ans=double(value)/coe;//计算ans 
    printf("%c=%.3lf",x,ans);
    return 0;
}

  希望大家能找到学习c++的意义何在,并在这条路上坚定不移走下去!

posted @ 2019-07-28 16:32  收废品的老头子  阅读(229)  评论(0编辑  收藏  举报