L1-025 正整數A+B

題的目標很簡單,就是求兩個正整數AB的和,其中AB都在區間[1,1000]。稍微有點麻煩的是,輸入并不保證是兩個正整數。

輸入格式:

輸入在一行給出AB,其間以空格分開。問題是AB不一定是滿足要求的正整數,有時候可能是超出范圍的數字、負數、帶小數點的實數、甚至是一堆亂碼。

注意:我們把輸入中出現的第1個空格認為是AB的分隔。題目保證至少存在一個空格,并且B不是一個空字符串。

輸出格式:

如果輸入的確是兩個正整數,則按格式A + B = 和輸出。如果某個輸入不合要求,則在相應位置輸出?,顯然此時和也是?

輸入樣例1:

123 456

輸出樣例1:

123 + 456 = 579

輸入樣例2:

22. 18

輸出樣例2:

? + 18 = ?

輸入樣例3:

-100 blabla bla...33

輸出樣例3:

? + ? = ?
?
思路:考慮到可以用第一個出現的空格分隔成兩部分,直接用string或者字符串接收,注意接收方式的不同,后面的部分有空格,用getline或者gets接收,再判斷四種情況,另外注意數值可能超出1到1000范圍,有關于最后兩個測試點......
 1 #include<iostream>
 2 #include<cstring>
 3 #include<cmath>
 4 using namespace std;
 5 int main()
 6 {
 7     string str1,str2;
 8     cin>>str1;
 9     getchar();
10     getline(cin,str2);
11     int flag1=0,flag2=0;
12     for(int i=0;i<str1.size();i++)
13     {
14         if(str1[i]<'0'||str1[i]>'9')
15         {
16             flag1=1;
17             break;
18         }
19     }
20     if(flag1==0)
21     {
22         if(stoi(str1)<1||stoi(str1)>1000)
23         flag1=1;
24     }
25     for(int i=0;i<str2.size();i++)
26     {
27         if(str2[i]<'0'||str2[i]>'9')
28         {
29             flag2=1;
30             break;
31         }
32     }
33     if(flag2==0)
34     {
35         if(stoi(str2)<1||stoi(str2)>1000)
36         flag2=1;
37     }
38     if(flag1==0&&flag2==0)
39     {
40         cout<<str1<<" + "<<str2<<" = "<<stoi(str1)+stoi(str2)/*atoi(str1.c_str())+atoi(str2.c_str())*/<<endl;
41     }
42     else if(flag1==0&&flag2==1)
43     {
44         cout<<str1<<" + "<<"?"<<" = "<<"?"<<endl;
45     }
46     else if(flag1==1&&flag2==0)
47     {
48         cout<<"?"<<" + "<<str2<<" = "<<"?"<<endl;
49     }
50     else if(flag1==1&&flag2==1)
51     {
52         cout<<"?"<<" + "<<"?"<<" = "<<"?"<<endl;
53     }
54     return 0;
55  } 

?

?

轉載于:https://www.cnblogs.com/xwl3109377858/p/10295695.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/249782.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/249782.shtml
英文地址,請注明出處:http://en.pswp.cn/news/249782.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

到底多大才算高并發?

一、什么是高并發 定義&#xff1a; 高并發(High Concurrency)是使用技術手段使系統可以并行處理很多請求。關鍵指標&#xff1a; -響應時間(Response Time) -吞吐量(Throughput) -每秒查詢率QPS(Query Per Second) -每秒事務處理量TPS(Transaction Per Second) -同時在…

eclipse安裝maven插件

1、在線安裝插件 a.打開eclipse&#xff0c;菜單“Help”-“Install New Software...” b.在Work with 地址欄輸入&#xff1a;http://download.eclipse.org/releases/對應eclipse版本名稱 c.在filter框中輸入maven d.選擇“Collaboration”-“m2e - Maven Integration for Ecl…

VS2017 網站打包發布生成的文件中包含.pdb文件,解決辦法

右鍵點擊項目屬性&#xff0c;選擇打包/發布 Web&#xff0c;勾選 排除生成的調試符號&#xff1a; 再次發布&#xff0c;就不會再生成.pdb文件 轉載于:https://www.cnblogs.com/JoinLet/p/10297254.html

java分布式學習路線

先理解為什么需要分布式&#xff0c;因為服務器處理的能力需要提升&#xff0c;這里有兩個方面&#xff0c;第一是縱向 也就是增加cpu的能力&#xff0c;或者加內存&#xff1b;另一個方向就是 橫向 &#xff0c;就是分布式。將本來一臺計算機的壓力分給多太計算機&#xff0c;…

深入Nginx之《常用參數配置技巧》

常見參配置實戰技巧 下面會講解實戰中應該怎么配置更為合理。 1.user 默認是nobody&#xff0c;如果使用nobody&#xff0c;Nginx在運行過程中會出現很多操作沒有權限&#xff0c;比如寫硬盤。一般都是用低于root級別的用戶&#xff0c;比如www&#xff0c;并且可以在linux下設…

transform、transition 動畫效果

transform 轉換&#xff0c;變形 origin 定義旋轉基點&#xff08;left top center right bottom 坐標值&#xff09; transform-origin: 50px 50px; transform-origin: left;。 rotate 旋轉 transform:rotate(50deg) 旋轉角度可以為負數&#xff0c;需要先定義…

eslint 規則

"off"或0- 關閉規則 "warn"或1- 將規則作為警告打開&#xff08;不影響退出代碼&#xff09; "error"或2- 將規則作為錯誤打開&#xff08;觸發時退出代碼為1&#xff09;轉載于:https://www.cnblogs.com/smzd/p/10844161.html

分布式學習路線

由于分布式系統所涉及到的領域眾多&#xff0c;知識龐雜&#xff0c;很多新人在最初往往找不到頭緒&#xff0c;不知道從何處下手來一步步學習分布式架構。 本文試圖通過一個最簡單的、常用的分布式系統&#xff0c;來闡述分布式系統中的一些基本問題。 負載均衡分布式緩存分…

洛谷p2704 炮兵陣地

典型的狀態壓縮題&#xff0c;只是要定義dp[i][j][k]&#xff0c; #include<bits/stdc.h>using namespace std;int n,m,state[1<<10],tot0;int dp[110][66][66],sum[1<<10],mp[110];int getsum(int x){ int cnt0; while(x){ if(x&1) cnt; …

Flask 框架app = Flask(__name__) 解析

1 #!/usr/local/bin/python2 # codingutf-83 4 from flask import Flask5 app Flask(__name__)6 7 app.route(/)8 def hello_world():9 return Hello World! 10 11 if __name__ __main__: 12 app.run(host0.0.0.0,port9000) 第4行&#xff0c;引入Flask類&#x…

發布訂閱

發布訂閱 在軟件架構中&#xff0c;發布訂閱是一種消息范式&#xff0c;消息的發送者&#xff08;稱為發布者&#xff09;不會將消息直接發送給特定的接收者&#xff08;稱為訂閱者&#xff09;。而是將發布的消息分為不同的類別&#xff0c;無需了解哪些訂閱者&#xff08;如果…

ps 命令

ps 為我們提供了進程的一次性的查看&#xff0c;它所提供的查看結果并不動態連續的&#xff1b;如果想對進程時間監控&#xff0c;應該用 top 工具。kill 命令用于殺死進程。linux上進程有5種狀態: 1. 運行(正在運行或在運行隊列中等待) 2. 中斷(休眠中, 受阻, 在等待某個條件的…

python練習題-day8

1、有如下文件&#xff0c;a1.txt&#xff0c;里面的內容為&#xff1a; 老男孩是最好的培訓機構&#xff0c; 全心全意為學生服務&#xff0c; 只為學生未來&#xff0c;不為牟利。 我說的都是真的。哈哈 分別完成以下的功能&#xff1a; a,將原文件全部讀出來并打印。 with o…

消息中間件應用場景

消息中間件應用場景

IDEA開發vue.js卡死問題

在執行cnpm install后會在node_modules這個文件下面生成vue的相關依賴文件&#xff0c; 這個時候當執行cnpm run dev命令時&#xff0c;會導致IDEA出現卡死的問題&#xff0c;解決方法如下&#xff1a; 轉載于:https://www.cnblogs.com/heqiuyong/p/10301925.html

[BZOJ4698][SDOI2008]Sandy的卡片(后綴自動機)

差分之后就是求多串LCS。 對其中一個串建SAM&#xff0c;然后把其它串放在上面跑。 對SAM上的每個狀態都用f[x]記錄這個狀態與當前串的最長匹配長度&#xff0c;res[x]是對每次的f[x]取最小值。答案就是res[]的最大值。 考慮f[x]的求法&#xff0c;把s[]放在SAM上跑時&#xff…

點對點

數據傳輸的可靠性是通過數據鏈路層和網絡層的點對點和傳輸層的端對端保證的。點對點是基于MAC地址或者IP地址&#xff0c;是指一個設備發數據給另外一個設備&#xff0c;這些設備是指直連設備包括網卡&#xff0c;路由器&#xff0c;交換機。端對端是網絡連接&#xff0c;應用程…

none

module.exports {root: true,env: {node: true},extends: [plugin:vue/essential, vue/prettier],rules: {no-console: process.env.NODE_ENV production ? error : off,no-debugger: process.env.NODE_ENV production ? error : off,prettier/prettier: [error,{// tab縮…

MQ消息中間件介紹

消息隊列技術是分布式應用間交換信息的一種技術&#xff0c;消息隊列可駐留在內存或者磁盤上&#xff0c;隊列存儲消息直到它們被應用程序讀走&#xff0c;通過消息隊列&#xff0c;應用程序可以獨立的執行—它們不需要知道彼此的位置&#xff0c;或者繼續執行前不需要等待接收…

22 塊級元素和行內元素

學習的初期&#xff0c;我們就要知道&#xff0c;標準文檔流等級森嚴。標簽分為兩種等級&#xff1a; 行內元素塊級元素比如h1標簽和span&#xff0c;同時設置寬高&#xff0c;來看瀏覽器效果&#xff0c;那么你會發現&#xff1a; 行內元素和塊級元素的區別&#xff1a;&#…