zoukankan      html  css  js  c++  java
  • 【00NOIP普及组】计算器的改良(信息学奥赛一本通 1910)(洛谷 1022)

    【题目描述】

    NCL是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委托的一个任务:需要在该公司某型号的计算器上加上解一元一次方程的功能。实验室将这个任务交给了一个刚进入的新手ZL先生。为了很好的完成这个任务,ZL先生首先研究了一些一元一次方程的实例:

    4+3x=8

    6a-5+1=2-2a

    -5+12Y=0

    ZL先生被主管告之,在计算器上键入的一个一元一次方程中,只包含整数、小写字母 及十、一、=这三个数学符号(当然,符号“一”既可作减号,也可作负号)。方程中并没有括号,也没有除号,方程中的字母表示未知数。

     【输入】

    输入一个一元一次方程,可认为输入的一元一次方程均为合法的,且有唯一实数解。

    【输出】

    将解方程的结果(精确至小数点后三位)输出。

    【输入样例】

    6a-5+1=2-2a

    【输出样例】

    a=0.750

    转载自:[NOIP2000] 提高组 洛谷P1022 计算器的改良 - SilverNebula - 博客园 
    https://www.cnblogs.com/SilverNebula/p/5954915.html

     1 /*by SilverN*/
     2 #include<algorithm>
     3 #include<iostream>
     4 #include<cstring>
     5 #include<cstdio>
     6 #include<cmath>
     7 using namespace std;
     8 int n,f;
     9 int side;
    10 int num;
    11 char s[500];
    12 char tar;
    13 int main(){
    14     int x=0,f=1;
    15     side=1;
    16     scanf("%s",s);
    17     char ch;
    18     int len=strlen(s);
    19     s[len]='+';
    20     for(int i=0;i<=len;i++){
    21         ch=s[i];
    22         if( (ch<'0' || ch>'9' ) ){
    23             if(ch<'a' || ch>'z'){
    24                 num+=-1*x*f*side;
    25                 x=0; f=1;
    26             }
    27         }
    28         if(ch>='a' && ch<='z'){
    29             tar=ch;
    30             if(!x)x=1;x=x*f*side;
    31             n+=x;
    32             x=0;f=1;
    33             continue;
    34         }
    35         if(ch>='0' && ch<='9'){
    36             x=x*10+ch-'0';
    37             continue;
    38         }
    39         if(ch=='='){side=-1;continue;}//等号以后的项要变号 
    40         if(ch=='-'){f=-1;continue;}
    41         if(ch=='+'){f=1;continue;}
    42     }
    43     double ans=(double)num/(double)n;
    44     if(ans==-0)ans=0;
    45     printf("%c=%.3f
    ",tar,ans);
    46     return 0;
    47 }
  • 相关阅读:
    【应试】数据通信与网络
    【应试】操作系统OS
    【笔记】 卷积
    【HDU 5920】 Ugly Problem
    【笔记】位运算
    【洛谷P1378】油滴扩展
    【洛谷 P1120】 小木棍[数据加强版]
    [codeforces]Round #538 (Div. 2) F. Please, another Queries on Array?
    [BZOJ]2563: 阿狸和桃子的游戏
    [BZOJ]4668: 冷战
  • 原文地址:https://www.cnblogs.com/ljy-endl/p/11296470.html
Copyright © 2011-2022 走看看