4

これは実際には宿題ではありません。来週コンピューター サイエンスを始める前に、個別の数学の本でいくつかの問題を調べているだけです。

とにかく、質問の 1 つは、このアルゴリズムを実行するためのプログラムを作成するように私に求めています (説明しています)。私が立ち往生している部分は、9桁の数字を取得してそれを単一の整数に「分割」する方法であるため、各桁で計算を実行できます。

数値を 100,000,000 で割ってから、この整数値を取得して最初の桁を取得することを考えましたが、他の桁を取得する方法がわかりません。

これが PHP などの場合は、explode() を使用できますが、ここでのポイントではないと思います:P

4

3 に答える 3

4

mod(%) および除算(/) 演算子を使用できます。

N%10 は最後の桁を示します。N/10 (整数除算) は最後の桁を削除します。

桁がなくなるまで続けることができます。

于 2010-09-12T22:18:32.980 に答える
1

1 億で割って整数値を取得したら、この整数値に 1 億を掛けて、ISBN から差し引くことができます。これは事実上、左端の数字を削除するだけです。それでは、10,000,000 で繰り返します。

5 桁の例:

Start: 74325

74325/10000 and int = 7 (there's your first digit)
7 * 10000 = 70000
74325 - 70000 = 4325

4325/1000 and int = 4 (there's your next digit)
4 * 1000 = 4000
4325 - 4000 = 325

等々!

于 2010-09-12T22:23:43.277 に答える
0

モジュロ演算を使用します。

a % 10 to get the last digit
a % 100 to get the last two digits. (a % 100) - (a % 10) to get the second last number
etc.
于 2010-09-12T22:19:37.583 に答える