2

ユーザーが int を入力するとします。123214

数字を分離することはできましたが、どうすれば数字を掛けることができますか。

例:欲しい1*2*3*2*1*4

すべての1桁を配列に入れましたが、必要に応じて1桁と1桁を掛けることができません。

4

1 に答える 1

6

これを試して:

int res = 1;
for (char c : "123214".toCharArray()) {
    res *= (c - '0');
}

これは、数字のバイナリ コードが連続しているため機能します。ゼロ文字のコードを差し引く'0'と、数字の値が 0 から 9 までの整数として得られます。

ideone のこのスニペットへのリンクを次に示します。印刷し48ます。

于 2012-07-27T12:43:25.307 に答える