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

回答編集履歴

4

4

2021/12/13 20:49

投稿

takasima20
takasima20

スコア7468

answer CHANGED
@@ -8,4 +8,48 @@
8
8
 
9
9
  あと、main から呼ぶ時に(括弧も含めて)引数を指定してないスね。
10
10
 
11
- なんか (m - 1) をあちこちにコピペしている印象ですが、いちど考え方を整理してみては?
11
+ なんか (m - 1) をあちこちにコピペしている印象ですが、いちど考え方を整理してみては?
12
+ --- 追記 ---
13
+ とりあえず現状のコードに手を入れてエラーが出ないようにしましたが
14
+ ロジック的な部分はがんばって考えてください。
15
+ ```c++
16
+ #include <iostream>
17
+ using namespace std;
18
+
19
+ int m;
20
+ int d;
21
+
22
+ int DofM(int m) {
23
+ int days;
24
+ if (m == 4 || m == 6 || m == 9 || m == 11)
25
+ days = 30;
26
+ else if (m == 2)
27
+ days = 29;
28
+ else
29
+ days = 31;
30
+
31
+ return days;
32
+ }
33
+
34
+ int DofMs(int m) {
35
+ int sum = 0;
36
+ for (int i=1; i<=m; i++) {
37
+ sum += DofM(m);
38
+ }
39
+
40
+ return sum;
41
+ }
42
+
43
+ int main () {
44
+ cout << "1月1日からの日数を計算します。\n";
45
+ cout << "月を入力して下さい。\n";
46
+ cin >> m;
47
+ cout << "日を入力して下さい。\n";
48
+ cin >> d;
49
+
50
+ int result = DofMs(m);
51
+ cout << "1月1日からの日数は、" << result + d << "です。\n" << endl;
52
+
53
+ return 0;
54
+ }
55
+ ```

3

3

2021/12/13 20:49

投稿

takasima20
takasima20

スコア7468

answer CHANGED
@@ -6,4 +6,6 @@
6
6
 
7
7
  ついでにいうと、for ループの中で return するのは(たぶん)意図とはちがいますよね。
8
8
 
9
- あと、main から呼ぶ時に(括弧も含めて)引数を指定してないスね。
9
+ あと、main から呼ぶ時に(括弧も含めて)引数を指定してないスね。
10
+
11
+ なんか (m - 1) をあちこちにコピペしている印象ですが、いちど考え方を整理してみては?

2

2

2021/12/13 12:55

投稿

takasima20
takasima20

スコア7468

answer CHANGED
@@ -4,4 +4,6 @@
4
4
  ```
5
5
  波括弧が足りないようにみえます。
6
6
 
7
- ついでにいうと、for ループの中で return するのは(たぶん)意図とはちがいますよね。
7
+ ついでにいうと、for ループの中で return するのは(たぶん)意図とはちがいますよね。
8
+
9
+ あと、main から呼ぶ時に(括弧も含めて)引数を指定してないスね。

1

1

2021/12/13 12:50

投稿

takasima20
takasima20

スコア7468

answer CHANGED
@@ -2,4 +2,6 @@
2
2
  ```c++
3
3
  int DofMs((m - 1)){
4
4
  ```
5
- 括弧が足りないようにみえます。
5
+ 括弧が足りないようにみえます。
6
+
7
+ ついでにいうと、for ループの中で return するのは(たぶん)意図とはちがいますよね。