R7-1 正整数A+B (15 分)

题的目标很简单,就是求两个正整数AB的和,其中AB都在区间[1,1000]。稍微有点麻烦的是,输入并不保证是两个正整数。

输入格式:

输入在一行给出AB,其间以空格分开。问题是AB不一定是满足要求的正整数,有时候可能是超出范围的数字、负数、带小数点的实数、甚至是一堆乱码。

注意:我们把输入中出现的第1个空格认为是AB的分隔。题目保证至少存在一个空格,并且B不是一个空字符串。

输出格式:

如果输入的确是两个正整数,则按格式A + B = 和输出。如果某个输入不合要求,则在相应位置输出?,显然此时和也是?

样例1:">输入样例1:

123 456

输出样例1:

123 + 456 = 579

输入样例2:

22. 18

输出样例2:

? + 18 = ?

输入样例3:

-100 blabla bla...33

输出样例3:

? + ? = ?

有一测试点没过,范围是【1,1000】但是在if判断的时候写成了stoi(a)<0||stoi(a)>1000,然后觉得小于零多此一举就把stoi(a)<0删了

然而结果也出入意料的错了还不知道在哪

#include<iostream>
using namespace std;
int main(){string a,b;cin>>a;getchar();getline(cin,b);for(int i=0;i<a.size();i++){if(!isdigit(a[i])||stoi(a)>1000){a="?";break;}}for(int i=0;i<b.size();i++){if(!isdigit(b[i])||stoi(b)>1000){b="?";break;}}if(a=="?"||b=="?")cout<<a<<" + "<<b<<" = ?"<<endl;else  cout<<a<<" + "<<b<<" = "<<stoi(a)+stoi(b)<<endl;return 0;
}

以下为正确代码

#include<iostream>
using namespace std;
int main(){string a,b;cin>>a;getchar();getline(cin,b);for(int i=0;i<a.size();i++){if(!isdigit(a[i])||stoi(a)<1||stoi(a)>1000){a="?";break;}}for(int i=0;i<b.size();i++){if(!isdigit(b[i])||stoi(b)<1||stoi(b)>1000){b="?";break;}}if(a=="?"||b=="?")cout<<a<<" + "<<b<<" = ?"<<endl;else cout<<a<<" + "<<b<<" = "<<stoi(a)+stoi(b)<<endl;return 0;
}

R7-1 正整数A+B (15 分)相关推荐

  1. 天梯赛 L1-025 正整数A+B (15 分) 小坑不断

    天梯赛 L1-025 正整数A+B (15 分) 小坑不断 题目 题的目标很简单,就是求两个正整数A和B的和,其中A和B都在区间[1,1000].稍微有点麻烦的是,输入并不保证是两个正整数. 输入格式 ...

  2. 38行代码AC——L1-025 正整数A+B (15分)(~解题报告~)

    立志用更少的代码做更高效的表达 题的目标很简单,就是求两个正整数A和B的和,其中A和B都在区间[1,1000].稍微有点麻烦的是,输入并不保证是两个正整数. 输入格式: 输入在一行给出A和B,其间以空 ...

  3. 团体程序设计天梯赛-练习集L1-025 正整数A+B (15分)(getline输入)

    题目: 题的目标很简单,就是求两个正整数A和B的和,其中A和B都在区间[1,1000].稍微有点麻烦的是,输入并不保证是两个正整数. 输入格式: 输入在一行给出A和B,其间以空格分开.问题是A和B不一 ...

  4. 天梯赛 L1-025 正整数A+B (15 分)

    重要的是string的find函数与substr #include <iostream> #include <cstring> using namespace std;bool ...

  5. 团队程序设计天梯赛考点内容总结(15分以上题)

    L1: L1-002 打印沙漏 (20 分) 字符模拟 L1-003 个位数统计 (15 分) 字符模拟 L1-005 考试座位号 (15 分) 模拟 L1-006 连续因子 (20 分) 数学因数分 ...

  6. python 7-8 对于给定的正整数N,求它的位数及其各位数字之和。 (15 分)

    python python 7-8 对于给定的正整数N,求它的位数及其各位数字之和. (15 分) python 7-8 对于给定的正整数N,求它的位数及其各位数字之和. (15 分) python ...

  7. 7-184 正整数A+B (15 分)

    7-184 正整数A+B (15 分) 题的目标很简单,就是求两个正整数A和B的和,其中A和B都在区间[1,1000].稍微有点麻烦的是,输入并不保证是两个正整数. 输入格式: 输入在一行给出A和B, ...

  8. B1091 N-自守数 (15分)

    B1091 N-自守数 (15分) 如果某个数 \(K\)的平方乘以\(N\) 以后,结果的末尾几位数等于 \(K\),那么就称这个数为"\(N\)-自守数".例如 \(3×92 ...

  9. 7-4 递增序列 (15 分)

    7-4 递增序列 (15 分) 递增序列指的是,在序列中,对于任何两个相邻的数b[i]和bi+1,总有b[i]<b[i+1].现在,给你一个序列b[1],b[2],-b[n],和一个正整数d,每 ...

最新文章

  1. RHEL6系列更换epel源
  2. Python(6):工程组织结构
  3. “约见”面试官系列之常见面试题第十四篇之所有数据类型(建议收藏)
  4. 华为虚拟服务器lanip地址,2018软考网络工程师《华为基础实验》十九配置路由器为DHCPServer...
  5. wpf之窗口ShowDialog
  6. learning java AWT 布局管理器 GridLayout
  7. fastcopy会损坏硬盘_绚丽多彩 卓有不凡 三星移动固态硬盘T5金属红新品评测
  8. @Aspect不生效
  9. 叔叔阿姨,我真的不会修电脑
  10. 非QQ会员如何克隆好友
  11. 游戏设计的艺术:一本透镜的书——第十六章 故事和游戏结构能用间接控制巧妙地联合起来
  12. H5打开QQ聊天窗口
  13. 如何将电脑文件自动备份到u盘?
  14. 视频教程-系统集成项目管理工程师5天修炼-软考
  15. java 与 c gzip_zlib和gzip生成不同的数据
  16. 微信昵称可以加雪花了!好友看到后都懵了……
  17. “00后”博士,拟入职南京大学当副研究员!曾经4岁上小学、14岁读本科!
  18. 最新发布!校园视频监控新版国标抢先看
  19. 改变世界的数学公式,yyds
  20. 一个靠谱的国外maven镜像地址

热门文章

  1. python+Django学习资源汇总-更新中
  2. ESDF建图库voxblox的安装编译过程
  3. Java基础---集合的概述---list、set、map、泛型、collections
  4. JAVA中 fastjson两个JSONArray叠加,合并 ,方法 addAll()
  5. 解决mac安装homebrew后报错-bash: brew: command not found
  6. dskinlite自适应dpi
  7. Android中Service的使用
  8. 隐藏虚拟键盘,解决键盘挡住UITextField问题
  9. linux下gdb的简单使用
  10. 从实践的角度来回顾一下SQL注入