Sign in
or
Register
Courses
Textbook
Compiler
Contests
Topics
Courses
C++。 基本
(C++) 条件付きループ ステートメント - while
Module:
(C++) 条件付きループ ステートメント - while
Problem
6
/21
数字の桁
Theory
Click to read/hide
タスク
数値を入力し (3,000,000 未満にする)、その桁数を決定する必要があります。
解決策のアイデア
数値の最後の桁を順番に切り取るだけです (これは、整数の 10 による除算を使用して数値を 10 倍減らすことで実行できます)。そのたびにカウンターを増やす必要があります。
その結果、番号の桁をすべて切り取った後、カウンターで番号を取得する
ことになります。
このアルゴリズムは次のように定式化できます。
数値が 0 になるまで、数値を 10 ずつ減らし、そのたびにカウンターを 1 ずつ増やします。
<頭>
数値 (n)
カウンター
<本体>
123
0
12
1
1
2
0
3
表>
プログラムは次のようになります。
#include
名前空間 std を使用します。 主要() { intn、カウント; シン>> n; カウント = 0; ながら (n != 0) { カウント++; n = n / 10; } cout << 「番号-」 << n<< " " を含む<<カウント << "数字"; }プレ> このプログラムを暗記する必要があるからです。これに基づいて、桁による数値の計算に関連する他の多くの問題が解決されます。
Problem
プログラムを実行します。
彼女の仕事の成果を見て
ください。 出力されたフレーズは大丈夫ですか
か? この問題を解決する方法を考えてください。
1000
ms
32 Mb
Rules for program design and list of errors in automatic problem checking
Teacher commentary