teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

m

2019/06/07 01:33

投稿

yumetodo
yumetodo

スコア5852

answer CHANGED
@@ -39,9 +39,9 @@
39
39
  printf("%d",x); //Xに平均が入る
40
40
  ```
41
41
 
42
- です。
42
+ です。ここの段階で変数xが生きていないとだめということです。
43
43
 
44
- 変数の生存期間に気をつけて宣言定義しましょう。かつ、初期化(=プログラマからみて何が変数に入っているか分かるようにする作業)も必要です。何で初期化すればいいでしょうか?
44
+ そんなわけで変数の生存期間に気をつけて宣言定義しましょう。かつ、初期化(=プログラマからみて何が変数に入っているか分かるようにする作業)も必要です。何で初期化すればいいでしょうか?
45
45
 
46
46
  ここで大事な数学上の性質としては
47
47
 

1

m

2019/06/07 01:33

投稿

yumetodo
yumetodo

スコア5852

answer CHANGED
@@ -30,4 +30,37 @@
30
30
  で話を戻しまして
31
31
 
32
32
  ```c
33
- x+= data ○○
33
+ x+= data ○○
34
+ ```
35
+
36
+ に着目します。ヒントには`x`を宣言定義している場所がないのでどこかで宣言定義する必要があります。ここでヒントの中で大事な部分が
37
+
38
+ ```c
39
+ printf("%d",x); //Xに平均が入る
40
+ ```
41
+
42
+ です。
43
+
44
+ 変数の生存期間に気をつけて宣言定義しましょう。かつ、初期化(=プログラマからみて何が変数に入っているか分かるようにする作業)も必要です。何で初期化すればいいでしょうか?
45
+
46
+ ここで大事な数学上の性質としては
47
+
48
+ ```
49
+ 0 + 1 = 1
50
+ 0 + 2 = 2
51
+ 1 + 0 = 1
52
+ ```
53
+
54
+ のように、`0`は足し算に影響を与えないという性質でした。
55
+
56
+ さあ、ここまで書けば変数xを宣言定義する
57
+
58
+ ```
59
+ int x = /* 初期値 */;
60
+ ```
61
+
62
+ をどこに書けばいいか分かるでしょう。
63
+
64
+ ---
65
+
66
+ あとは「要素数で割る」作業ですが、まあただの割り算ですから特に考えることはありませんね。