本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算:對奇數字,對應位的數字相加後對 13 取餘——這裡用 j 代表 10、q 代表 11、k 代表 12;對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 10。這裡令個位為第 1 位。
輸入在一行中依次給出 a 和 b,均為不超過 100 位的正整數,其間以空格分隔。
在一行中輸出加密後的結果。
1234567 368782971
3695q8118
因為要從個位開始處理,所以先將a,b倒序一下,然後不夠的地方填充0使兩個字串長度相等。
判斷當前位是奇數字還是偶數字,並進行相應的處理,並新增到字串c中
最後倒序輸出處理好的字串c
#include
#include
#include
using namespace std;
char num=
;int
main()
else
for(
int i=
1;i<=a.
length()
;i++
)else
//偶數字
}for
(int i=c.
length()
-1;i>=
0;i--
)cout<;//倒序輸出
return0;
}
PAT 1048 數字加密 20
本題要求實現一種數字加密方法。首先固定乙個加密用正整數a,對任一正整數b,將其每1位數字與a的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對13取餘 這裡用j代表10 q代表11 k代表12 對偶數字,用b的數字減去a的數字,若結果為負數,則再加10。這裡令個位為第1位。輸入格式 輸入...
PAT1048 數字加密 20
本題要求實現一種數字加密方法。首先固定乙個加密用正整數a,對任一正整數b,將其每1位數字與a的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對13取餘 這裡用j代表10 q代表11 k代表12 對偶數字,用b的數字減去a的數字,若結果為負數,則再加10。這裡令個位為第1位。輸入格式 輸入...
PAT 1048 數字加密 20
題目描述 本題要求實現一種數字加密方法。首先固定乙個加密用正整數a,對任一正整數b,將其每1位數字與a的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對13取餘 這裡用j代表10 q代表11 k代表12 對偶數字,用b的數字減去a的數字,若結果為負數,則再加10。這裡令個位為第1位。輸入...