タスク
100 から 500 までのすべての整数の合計を求めてください。
式を使わずにこの問題を解くプログラムを書いてみましょう。 変数
s
に足し算の結果を書くだけなら、たとえば次のようになります。
\(s=100+101+102+103+...+500\),
コンピューターは算術式で省略記号を使用する方法を理解せず、100 から 500 までのすべての数字を書き込まなければならないため、記録自体に多くの時間を費やします。そして、そのようなプログラムの値は次のようになります。無視できる。特に、数値を変更して別の範囲を取りたい場合は.
どうすればいいですか?
上記のエントリに注意を払うと、常に "
+
" を使用します。
s
変数に徐々に数値を追加してみてください。たとえば、この表記法を使用すると
s = s + i
.
私たちが行ったこと:
1) 右側に s + i
, という式を置きます。つまり、変数 s
の値を取得して を追加します。変数の値 i
;
2) 左側で変数 s
の名前を設定します。つまり、右側の計算結果全体が同じ 変数 s
に格納されるので、変数 s
の値を変更します。
必要な範囲で変数 i
の値を変更するだけです。これは for
.
ループで実行できます。
範囲内の 100 から 500 までの数値は、順番に
i
変数に入る必要があります。
例
// 重要!まず、変数 s をリセットする必要があります。
// 最初のステップで数値 100 がゼロに加算されるように、
// メモリ内のものではありません!
s=0;
for ( i = 100; i <= 500; i++) // 変数 i を含むループ ヘッダー
s = s + i; // 値を 100 から 500 まで 1 ずつ変更し、
// ループの本体で徐々に変数 s に、
// 変化する変数 i の値を追加し、
// 結果は変数 s に格納されます
プレ>
このソリューションは、アクションの合計を計算するのと非常によく似ています:
\(s = 0 + 100 = 100, \\ s = 100 + 101 = 201, \\ s = 201 + 102 = 303 \\ ... \)