回答編集履歴

4

4

2021/12/13 20:49

投稿

takasima20
takasima20

スコア7464

test CHANGED
@@ -19,3 +19,91 @@
19
19
 
20
20
 
21
21
  なんか (m - 1) をあちこちにコピペしている印象ですが、いちど考え方を整理してみては?
22
+
23
+ --- 追記 ---
24
+
25
+ とりあえず現状のコードに手を入れてエラーが出ないようにしましたが
26
+
27
+ ロジック的な部分はがんばって考えてください。
28
+
29
+ ```c++
30
+
31
+ #include <iostream>
32
+
33
+ using namespace std;
34
+
35
+
36
+
37
+ int m;
38
+
39
+ int d;
40
+
41
+
42
+
43
+ int DofM(int m) {
44
+
45
+ int days;
46
+
47
+ if (m == 4 || m == 6 || m == 9 || m == 11)
48
+
49
+ days = 30;
50
+
51
+ else if (m == 2)
52
+
53
+ days = 29;
54
+
55
+ else
56
+
57
+ days = 31;
58
+
59
+
60
+
61
+ return days;
62
+
63
+ }
64
+
65
+
66
+
67
+ int DofMs(int m) {
68
+
69
+ int sum = 0;
70
+
71
+ for (int i=1; i<=m; i++) {
72
+
73
+ sum += DofM(m);
74
+
75
+ }
76
+
77
+
78
+
79
+ return sum;
80
+
81
+ }
82
+
83
+
84
+
85
+ int main () {
86
+
87
+ cout << "1月1日からの日数を計算します。\n";
88
+
89
+ cout << "月を入力して下さい。\n";
90
+
91
+ cin >> m;
92
+
93
+ cout << "日を入力して下さい。\n";
94
+
95
+ cin >> d;
96
+
97
+
98
+
99
+ int result = DofMs(m);
100
+
101
+ cout << "1月1日からの日数は、" << result + d << "です。\n" << endl;
102
+
103
+
104
+
105
+ return 0;
106
+
107
+ }
108
+
109
+ ```

3

3

2021/12/13 20:49

投稿

takasima20
takasima20

スコア7464

test CHANGED
@@ -15,3 +15,7 @@
15
15
 
16
16
 
17
17
  あと、main から呼ぶ時に(括弧も含めて)引数を指定してないスね。
18
+
19
+
20
+
21
+ なんか (m - 1) をあちこちにコピペしている印象ですが、いちど考え方を整理してみては?

2

2

2021/12/13 12:55

投稿

takasima20
takasima20

スコア7464

test CHANGED
@@ -11,3 +11,7 @@
11
11
 
12
12
 
13
13
  ついでにいうと、for ループの中で return するのは(たぶん)意図とはちがいますよね。
14
+
15
+
16
+
17
+ あと、main から呼ぶ時に(括弧も含めて)引数を指定してないスね。

1

1

2021/12/13 12:50

投稿

takasima20
takasima20

スコア7464

test CHANGED
@@ -6,4 +6,8 @@
6
6
 
7
7
  ```
8
8
 
9
- 括弧が足りないようにみえます。
9
+ 括弧が足りないようにみえます。
10
+
11
+
12
+
13
+ ついでにいうと、for ループの中で return するのは(たぶん)意図とはちがいますよね。