你拿到一個整數,卻忍不住想把每個位數都乘在一起。例如看到 356 就會想要知道 3 * 5 * 6 的值為何。快寫個程式幫幫為了乘數字而快發瘋的自己吧!
範例測資
範例輸入 | 範例輸出 |
---|---|
一開始有一個數字 T,表示共有幾組測試資料。 接下來有 T 個數字 n (0 <= n < 2147483648)。 | 輸出可以拯救自己的結果。 |
3 356 123 9999 | 90 6 6561 |
解題思路
使用字串來收數字,然後使用For迴圈將每一個位數的數字乘在一起。要注意的是存答案的變數預設值需設定為1不是0,這樣才不會一直乘以0導致所有答案都是0。
範例程式碼-ZeroJudge A149: 乘乘樂
#include <iostream>
using namespace std;
int main() {
int N;
cin >> N;
for (int i = 0; i<N; i++)
{
string str;
cin >> str;
int sum = 1;
for (int j = 0; j<str.length(); j++)
{
sum *= int(str[j] - '0');
}
cout << sum << endl;
}
}
//Z.O.J. A149
//Dr. SeanXD