只需要判斷歷史字串中對應的應該用1還是0來表示就解決問題。
1.接受輸入的可以是字元陣列(char)也可以是字串(string);
2.判斷是字母或者數字的時候要用&&而不能用連續不等號,這是出錯點;
3.相除的時候保證是float型,就要確保運算的過程有float型的變數或者常量參與運算;
4.保留小數字數;
#include
#include "string.h"
#include
using namespace std;
int main()
else
}float rightrate = right / total;
cout << setiosflags(ios::fixed) << setprecision(2) << rightrate*100.0 << "%"<< endl;
return 0;
}該**需要改進的地方是,其中的小方法可以封裝成函式的形式,比如判斷數字和字母,比如判斷是否為right。
約德爾測試
l1 raw input l2 raw input l3 for i in range len l1 if l1 i isalpha or l1 i isdigit else sum 0 for j in range len l3 if l3 j l2 j sum 1 ratio sum float...
約德爾測試
約德爾測試 題目描述 蘭博和提莫閒聊之後,回歸到了他們的正題,約德爾人的未來。說起約德爾人的未來,黑默丁格曾經提出了乙個約德爾測試,將約德爾人的歷史的每個階段都用乙個字元表達出來。包括可寫字元,不包括空格。然後將這個字串轉化為乙個01串。轉化規則是如果這個字元如果是字母或者數字,這個字元變為1,其它...
約德爾測試
題目描述蘭博和提莫閒聊之後,回歸到了他們的正題,約德爾人的未來。說起約德爾人的未來,黑默丁格曾經提出了乙個約德爾測試,將約德爾人的歷史的每個階段都用乙個字元表達出來。包括可寫字元,不包括空格。然後將這個字串轉化為乙個01串。轉化規則是如果這個字元如果是字母或者數字,這個字元變為1,其它變為0。然後將...