#34592: 簡單理解解法


s110385@student.cysh.cy.edu.tw (Kai.)

學校 : 國立嘉義高級中學
編號 : 202646
來源 : [118.171.201.253]
最後登入時間 :
2024-05-31 00:35:56
d086. 態度之重要的證明 -- 成功電研20th~21st C++ ~最後的競賽~ | From: [218.166.169.51] | 發表日期 : 2023-04-02 10:27

首先輸入一個string
然後迴圈內判斷,只要字串還有輸入且不等於0就繼續執行
EX: `while (cin >> a, a != "0")`,輸入只要不等於0就不斷執行

接下來設定一個bool和一個計算總分的int
設定一個for迴圈,只要i小於字串的大小,就一個字一個字加上去,根據ascii碼我們可以知道,小寫a等於97
應題目要求,我們只要接下來的字都-96相加就會是答案
EX: `for (int i = 0; i < a.size(); i++)

接下來在迴圈裡面使用if...else,我們先判斷a[i]是否為字母
1.如果不是就直接break,bool也改為false
2.如果是字母就 加上該 `(字母的ascii - 96)`,bool為true

最後離開迴圈,使用if...else
1.若bool等於false,輸出 "Fail"
2.其他情況就輸出sum

 
ZeroJudge Forum