弟弟的作业
来源:互联网 发布:js初始化加载 编辑:程序博客网 时间:2024/06/03 02:20
1365: 弟弟的作业
描述
题目描述:
你的弟弟刚做完了“100以内数的加减法”这部分的作业,请你帮他检查一下。每道题目(包括弟弟的答案)的格式为a+b=c或者a-b=c,其中a和b是作业中给出的,均为不超过100的非负整数;c是弟弟算出的答案,可能是不超过200的非负整数,也可能是单个字符"?",表示他不会算。
输入:
输入文件包含不超过100行,以文件结束符结尾。每行包含一道题目,格式保证符合上述规定,且不
包含任何空白字符。输入的所有整数均不含前导0。输出:
输出仅一行,包含一个非负整数,即弟弟答对的题目数量。
样例输入
1+2=3
3-1=5
6+7=?
99-0=99
样例输出
2
这道题我直接无脑用字符串处理的,其实可以更简单一些,就是用scanf控制输入,数字用%d 然后答案用%c 因为可能是?
这样会简单一些
#include<bits/stdc++.h>using namespace std;int main(){string s;int sum = 0;while(cin>>s){if(s[s.size()-1] == '?')continue;else{int n1,n2,n3;int flag,flag1,flag2;//分别记录符号和等号的位置,flag为0则为加,1为减 n1 = n2 = n3 = 0;for(int i=0;i<s.size();i++){if(s[i] == '+'){flag = 0;flag1 = i;} if(s[i] == '-'){flag = 1;flag1 = i;}if(s[i] == '='){flag2 = i;}}for(int i = 0;i < flag1;i ++){n1 = n1*10 + (s[i]-'0');}for(int i = flag1 +1;i < flag2;i ++){n2 = n2*10 + (s[i]-'0');}for(int i = flag2 +1;i < s.size();i ++){n3 = n3*10 + (s[i]-'0');}if(flag == 0 && n1 + n2 == n3)sum ++;if(flag == 1 && n1 - n2 == n3)sum ++;}}cout<<sum<<endl;return 0;}
阅读全文
0 0
- 1086: 弟弟的作业
- 弟弟的作业
- 弟弟的作业
- NYOJ663 弟弟的作业
- 弟弟的作业
- NYOJ-弟弟的作业
- 弟弟的作业
- 弟弟的作业
- nyoj663弟弟的作业
- NYOJ弟弟的作业
- 1012: 弟弟的作业
- 1664 弟弟的作业
- openjudge 弟弟的作业
- 弟弟的作业
- 弟弟的作业
- 弟弟的作业
- 2542: 弟弟的作业
- 弟弟的作业
- 大话设计模式-备忘录模式学习总结
- json数据处理
- 面向对象程序设计上机练习十(运算符重载)
- MS COCO数据集比赛参与(participate)(来自官网)
- 内存之三
- 弟弟的作业
- JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
- 如何获取uitableview中最上面的可见cell的索引
- iOS 检测网络状态的2个方法
- PHP 使用session
- 数据挖掘学习------------------2-关联规则-1-基本概念
- DOTween:Sequence
- YOLOv2源码分析(一)
- java多线程(2)-实现生产者/消费者模式