情報:IT
高校生
解決済み

sが合計点を表すということはどこから判断できるのか分かりません、問題文から分かるのですか?
四角6で①ではいけない理由が知りたいです。なぜ得点にゼロであるsを足す必要があるのでしょうか、、、

2 プログラミングの問題例 予想問題にチャレンジ 次の文章を読み, 空欄 1 2 • 3 4 5 にあてはまる数字 をマークせよ。また,空欄 6 ~ 9 に入れるのに最も 適当なものを,下の解答群のうちから一つずつ選べ。 ただし、 3 同じものを繰り返し選んでもよい。 プログラミング 高等学校の数学教員であるAさんは,期末試験を実施した。 集計作業を簡単化するため, 試験の点数の平均値と分散をコン ピュータで計算する手続きを作成することにした。 ここで,生 徒の人数がn人, 試験の点数が x, x1, ..., x,-1 であるとき, 平均値xと分散s' は x= n (x + x1 +... + x,-1) 5=12121{(x_x)^2+(x-x)2 +... + (ギョ-1-x) 2} n である。例えば,生徒5人の試験の点数が50,60,70, 70, 100 であったとき,平均値は 12 分散は345 となる。 できた手続きを図1に示す。 図1の手続きでは生徒全員の 人数を格納した変数ninzu, 生徒の識別番号 (0~ ninzu-1) を添字として生徒の試験の点数が格納された配列 Tokuten が 与えられるものとする。 さらに, 変数heikin には平均値を, bunsan には分散を,それぞれ計算して格納する。
字 (1) s=0 (2) iを0から ninzu-1まで1ずつ増やしながら繰り返す: 6 = (3) Ls (4) heikin == 7 (5) 表示する (“平均:", heikin) (6) s = 0 (7)i を 0 から ninzu-1まで1ずつ増やしながら繰り返す: (8) S = 8 (9) bunsan 9 (10) 表示する (“分散:”, bunsan) 図1:平均値と分散を計算する手続き 6 S ~ 9 の解答群 ① Tokuten[i] ② s/ninzu ③ ninzu/s④ s + Tokuten[i] ⑤ Tokuten[i]* Tokuten[i] 6 s+ (Tokuten[i] - heikin) ⑦s + (Tokuten[i] - heikin) *2 ⑧ (Tokuten[i]- heikin) * (Tokuten[i]-heikin) 9 s + (Tokuten[i] - heikin)* (Tokuten[i] - heikin)
3 プログラミング 128 らよく消える カプセルバー のはた した 1 1行目~3行目 ここでは平均値を求めるための Step1. すなわち生徒の点数を 全部足すということを繰り返しによって行なっています。 変数sは点数の合計を表しており、初期値は0です。 配列 Tokuten には ninzu分の生徒の点数が入っており、 Tokuten [] i番目の点数を取り出せます。 例えば,生徒5人の試験の点数が 50 60 70 70,100 であっ たとき Tokuten = [ 50,60,70,70,100] となっていて, Tokuten[0]で「50」を取り出すことができます。 配列の番号は0から始まることに注意しましょう。 iを0からninzu-1まで1つずつ増やすことで Tokuten[i]です べての生徒の点数を1つずつ取り出すことができます。取り出し た Tokuten[i] を合計値のsに足せばよいので, 6 にはs+ Tokuten[i] が入り 6 は答え ④となります。 このときにどのような処理がコンピュータで行われるのかを具体 的に書くと s = 0 iが0のとき s = 0 + Tokuten [0] iが1のとき s = 0 + Tokuten [0] + Tokuten [1] iが2のとき s = 0 + Tokuten [0] + Tokuten[1] + Tokuten [2] ・ iが ninzu-1 のとき s = 0 + Tokuten [0] + Tokuten[1] + Tokuten [2] ・ Tokuten [ninzu-1] + となり,sには全員の試験の点数が代入されることになります。 ②4 たS には
プログラミング

回答

✨ ベストアンサー ✨

うまく説明できているかわかりませんが、、、以下の通りです。
-----
平均を計算するには、合計点を計算しなければならない。
平均(heikin)を計算するより前に、合計として使用する文字(変数)は、sの以外に出てこない。
sが合計点だろうと思いつく。
-----
s=Tokuten[i]だと、i番目の点数が入れ替わってしまい、累計できない。
最後はs=Tokuten[ninzu-1]がセットされて終わってしまう。

s=s+Tokuten[i]だと、以下の様に繰り返される
s=0
s₀=s+Tokuten[0] …添え字₀は分かりやすくするために記載
s₁=s₀+Tokuten[1] …添え字₁,₀は分かりやすくするために記載
s₂=s₁+Tokuten[2] …添え字₂,₁は分かりやすくするために記載

s=s+Tokuten[ninzu-1]
sはどんどん累計されている。

GDO

参考
sはsum(またはsum up)の頭文字をとって、変数名にしていると思われます。

ny.zzzh

丁寧な解答ありがとうございます😊とても分かりやすかったです!!

この回答にコメントする
疑問は解決しましたか?