PAT-B 1067 試密碼【模擬】
PAT-B 1067 試密碼
https://pintia.cn/problem-sets/994805260223102976/problems/994805266007048192
題目
當你試圖登入某個系統卻忘了密碼時,系統一般只會允許你嘗試有限多次,當超出允許次數時,賬號就會被鎖死。本題就請你實現這個小功能。
輸入
輸入在第一行給出一個密碼(長度不超過 20 的、不包含空格、Tab、回車的非空字串)和一個正整數 N(≤ 10),分別是正確的密碼和系統允許嘗試的次數。隨後每行給出一個以回車結束的非空字串,是使用者嘗試輸入的密碼。輸入保證至少有一次嘗試。當讀到一行只有單個 # 字元時,輸入結束,並且這一行不是使用者的輸入。
輸出
對使用者的每個輸入,如果是正確的密碼且嘗試次數不超過 N,則在一行中輸出 Welcome in
,並結束程式;如果是錯誤的,則在一行中按格式輸出 Wrong password: 使用者輸入的錯誤密碼
;當錯誤嘗試達到 N 次時,再輸出一行 Account locked
,並結束程式。
樣例輸入
Correct%pw 3
correct%pw
Correct@PW
whatisthepassword!
Correct%pw
#
樣例輸入
Wrong password: correct%pw
Wrong password: Correct@PW
Wrong password: whatisthepassword!
Account locked
分析
簡單模擬,具體看程式。
C++程式
#include<iostream>
#include<string>
using namespace std;
int main()
{
string password,s;
int n,wrong=0;//wrong表示錯誤次數
cin>>password>>n;
getchar();//吸收回車符
while(1)
{
getline(cin,s);
if(s=="#")
break;
else if(s==password)
{
cout<<"Welcome in"<<endl;
break;
}
else
{
cout<<"Wrong password: "<<s<<endl;
if(++wrong==n)
{
cout<<"Account locked"<<endl;
break;
}
}
}
return 0;
}
相關文章
- PAT-B 1081 檢查密碼【模擬】密碼
- PAT-B 1076 Wifi密碼WiFi密碼
- PAT-B 1027 列印沙漏 【模擬】
- PAT-B 1058 選擇題 【模擬】
- PAT-B 1061 判斷題【模擬】
- PAT-B 1071 小賭怡情【模擬】
- PAT-B 1054 求平均值 【模擬】
- PAT-B 1072 開學寄語【模擬】
- PAT-B 1084 外觀數列 【模擬】
- PAT-B 1085 PAT單位排行【模擬】
- PAT-B 1018 錘子剪刀布 【模擬】
- PAT-B 1019 數字黑洞【陣列+模擬】陣列
- PAT-B 1017 A除以B【模擬 大數除法】
- PAT-B 1059 C語言競賽【模擬】C語言
- PAT-B 1024 科學計數法【模擬+字串】字串
- PAT-B 1077 互評成績計算【模擬】
- PAT-B 1012 數字分類【簡單模擬】
- 模擬考試參考程式碼
- PAT-B 1025 反轉連結串列【模擬+對映】
- PAT-B 1069 微博轉發抽獎【模擬+集合】
- PAT-B 1008 陣列元素迴圈右移問題【簡單模擬】陣列
- linux模擬windows嘗試LinuxWindows
- ADAMS 指令碼模擬指令碼
- 2020年焊工(高階)模擬試題及焊工(高階)模擬考試
- jmeter模擬spike測試(尖峰測試)JMeter
- 智駕模擬測試實戰之自動泊車HiL模擬測試
- PAT-B 1001 害死人不償命的(3n+1)猜想【模擬】
- Charles 模擬弱網測試
- ---ios模擬弱網測試---iOS
- modelsim 獨立模擬vivado的IP核及模擬指令碼指令碼
- COST231-WI模型通道模擬,原始碼模擬matlab程式設計原始碼模型原始碼Matlab程式設計
- vmware虛擬機器linux重置密碼虛擬機Linux密碼
- RHCE - EX2000模擬測試
- 單元測試模擬框架Mockito框架Mockito
- C#專案—模擬考試C#
- 2024.9.28 程式碼源模擬賽
- modelsim指令碼模擬設計(三)帶標頭檔案模擬指令碼
- 初三奧賽模擬測試5