質問編集履歴

4

解決済み

2020/10/05 12:53

投稿

majimurishineyo
majimurishineyo

スコア2

test CHANGED
File without changes
test CHANGED
@@ -2,23 +2,11 @@
2
2
 
3
3
 
4
4
 
5
- pythonで年・月・日を開始日と終了日で二回記入し経過日数を表示するプログラムをかきました。
6
-
7
- ただし、
5
+ 削除
8
-
9
- 1.ライブラリを使用せず分岐やループといった基礎的なものだけでかく
10
-
11
- 2.100で割り切れて400で割り切れない年はうるう年ではなく、その他4で割り切れる年はうるう年
12
6
 
13
7
 
14
8
 
15
9
  ### 発生している問題・エラーメッセージ
16
-
17
-
18
-
19
-
20
-
21
- その結果実行すると部分的に正解と出てきましたが、正直どこが間違っているのかわかりません。どうすればどの入力例でも正解になるでしょうか、また原因は何でしょうか。
22
10
 
23
11
 
24
12
 
@@ -28,159 +16,7 @@
28
16
 
29
17
  ```python
30
18
 
31
- sy=int(input())
32
-
33
- sm=int(input())
34
-
35
- sd=int(input())
36
-
37
- ey=int(input())
38
-
39
- em=int(input())
40
-
41
- ed=int(input())
42
-
43
- sum=0
44
-
45
- if sy==ey:
19
+ 解決済みのため削除
46
-
47
- if sm!=em:
48
-
49
- if sm==4 or sm==6 or sm==9 or sm==11:
50
-
51
- sum+=(30-sd)
52
-
53
- elif sm==2 and ((sy%4==0 and sy%100!=0) or sy%400==0):
54
-
55
- sum+=(29-sd)
56
-
57
- elif sm==2:
58
-
59
- sum+=(28-sd)
60
-
61
- else:
62
-
63
- sum+=(31-sd)
64
-
65
- sm+=1
66
-
67
- #sd=1
68
-
69
- sum+=1
70
-
71
- while sm<em:
72
-
73
- if sm==4 or sm==6 or sm==9 or sm==11:
74
-
75
- sum+=30
76
-
77
- elif sm==2 and ((sy%4==0 and sy%100!=0) or sy%400==0):
78
-
79
- sum+=29
80
-
81
- elif sm==2:
82
-
83
- sum+=28
84
-
85
- else:
86
-
87
- sum+=31
88
-
89
- sm+=1
90
-
91
- sum+=ed
92
-
93
-
94
-
95
- else:#sy!=ey
96
-
97
- if sm!=12:
98
-
99
- if sm==4 or sm==6 or sm==9 or sm==11:
100
-
101
- sum+=(30-sd)
102
-
103
- elif sm==2 and ((sy%4==0 and sy%100!=0) or sy%400==0):
104
-
105
- sum+=(29-sd)
106
-
107
- elif sm==2:
108
-
109
- sum+=(28-sd)
110
-
111
- else:
112
-
113
- sum+=(31-sd)
114
-
115
- sm+=1
116
-
117
- sum+=1
118
-
119
- sd=1
120
-
121
- while sm<12:
122
-
123
- if sm==4 or sm==6 or sm==9 or sm==11:
124
-
125
- sum+=30
126
-
127
- elif sm==2 and ((sy%4==0 and sy%100!=0) or sy%400==0):
128
-
129
- sum+=29
130
-
131
- elif sm==2:
132
-
133
- sum+=28
134
-
135
- else:
136
-
137
- sum+=31
138
-
139
- sm+=1
140
-
141
- sy+=1
142
-
143
- sum+=30
144
-
145
- sm=1
146
-
147
- sd=1
148
-
149
- while ey>sy:
150
-
151
- if ((sy%4==0 and sy%100!=0) or sy%400==0):
152
-
153
- sum+=366
154
-
155
- else:
156
-
157
- sum+=365
158
-
159
- sy+=1
160
-
161
- while sm<em:
162
-
163
- if sm==4 or sm==6 or sm==9 or sm==11:
164
-
165
- sum+=30
166
-
167
- elif sm==2 and ((sy%4==0 and sy%100!=0) or sy%400==0):
168
-
169
- sum+=29
170
-
171
- elif sm==2:
172
-
173
- sum+=28
174
-
175
- else:
176
-
177
- sum+=31
178
-
179
- sm+=1
180
-
181
- sum+=ed
182
-
183
- print(sum)
184
20
 
185
21
  ```
186
22
 
@@ -190,17 +26,7 @@
190
26
 
191
27
  ### 試したこと
192
28
 
193
-
194
-
195
- まずは年が同じときのプログラムを書き、そこは問題なく結果が出ました。問題はそれ以降で、年が同じでないときです。その場合に、
196
-
197
-
198
-
199
- 1開始日を翌年年始にし、そこまでの日数をかぞえまし
29
+ 解決済みのため削除
200
-
201
- 2うるう年なら366日そうでない年は365ずつ足していき終了日の年と同じになるまで続けました。
202
-
203
- 3年が同じ時と同じ要領で現段階の開始日と終了日の経過日数をさらに足しました。
204
30
 
205
31
 
206
32
 

3

なんとなく

2020/10/05 12:53

投稿

majimurishineyo
majimurishineyo

スコア2

test CHANGED
@@ -1 +1 @@
1
- 経過日数をpythonで数えた。partly accepted と出てきた。
1
+ 経過日数をpythonで数えた。
test CHANGED
File without changes

2

わかりずらい

2020/10/05 12:29

投稿

majimurishineyo
majimurishineyo

スコア2

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,13 @@
2
2
 
3
3
 
4
4
 
5
- pythonで年・月・日を開始日と終了日で二回記入し経過日数を表示するプログラムをかけといわれました。ただしその際ライブラリを使用せず分岐やループといった基礎的なものだけでかけ、また、うるう年の定義が「100で割り切れて400で割り切れない年はうるう年ではなく、それ以外の4で割り切れる年はうるう年」とのことです。
5
+ pythonで年・月・日を開始日と終了日で二回記入し経過日数を表示するプログラムをかました。
6
+
7
+ ただし、
8
+
9
+ 1.ライブラリを使用せず分岐やループといった基礎的なものだけでかく
10
+
11
+ 2.100で割り切れて400で割り切れない年はうるう年ではなく、その他4で割り切れる年はうるう年
6
12
 
7
13
 
8
14
 
@@ -12,7 +18,7 @@
12
18
 
13
19
 
14
20
 
15
- その結果実行するとPartially Acceptedと出てきましたが、正直どこが間違っているのかわかりません。どうすればAcceptedになるでしょうか、また原因は何でしょうか。
21
+ その結果実行すると部分的に正解と出てきましたが、正直どこが間違っているのかわかりません。どうすればどの入力例でも正解になるでしょうか、また原因は何でしょうか。
16
22
 
17
23
 
18
24
 
@@ -186,7 +192,7 @@
186
192
 
187
193
 
188
194
 
189
- そこで下記のように書きした。まずは年が同じときのプログラムを書き、そこは問題なく結果が出ました。問題はそれ以降で、年が同じでないときです。その場合に、
195
+ まずは年が同じときのプログラムを書き、そこは問題なく結果が出ました。問題はそれ以降で、年が同じでないときです。その場合に、
190
196
 
191
197
 
192
198
 

1

タイトルがわかりづらかったので変更

2020/10/05 12:27

投稿

majimurishineyo
majimurishineyo

スコア2

test CHANGED
@@ -1 +1 @@
1
- なぜpartly accepted と出てきたのかわかりません
1
+ 経過日数をpythonで数えた。partly accepted と出てきた
test CHANGED
File without changes