質問編集履歴

6

再度コードの修正

2018/05/27 15:47

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -220,7 +220,7 @@
220
220
 
221
221
 
222
222
 
223
- ### 制作途中のソースコードの改善(修正)
223
+ ### 制作途中のソースコードの改善(再度修正)
224
224
 
225
225
  ```Java
226
226
 
@@ -270,12 +270,16 @@
270
270
 
271
271
  this.hour = hour;
272
272
 
273
+          /*
274
+
273
275
  } else {
274
276
 
275
277
  System.out.println("[ERROR] 数値を再入力してください");
276
278
 
277
279
  }
278
280
 
281
+ */
282
+
279
283
  }
280
284
 
281
285
 
@@ -286,12 +290,16 @@
286
290
 
287
291
  this.minute = minute;
288
292
 
293
+          /*
294
+
289
295
  } else {
290
296
 
291
297
  System.out.println("[ERROR] 数値を再入力してください");
292
298
 
293
299
  }
294
300
 
301
+ */
302
+
295
303
  }
296
304
 
297
305
 
@@ -302,12 +310,16 @@
302
310
 
303
311
  this.second = second;
304
312
 
313
+          /*
314
+
305
315
  } else {
306
316
 
307
317
  System.out.println("[ERROR] 数値を再入力してください");
308
318
 
309
319
  }
310
320
 
321
+ */
322
+
311
323
  }
312
324
 
313
325
 

5

コードの修正

2018/05/27 15:47

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -220,7 +220,7 @@
220
220
 
221
221
 
222
222
 
223
- ### 制作途中のソースコードの改善
223
+ ### 制作途中のソースコードの改善(修正)
224
224
 
225
225
  ```Java
226
226
 
@@ -368,6 +368,10 @@
368
368
 
369
369
  Clock clock = new Clock();
370
370
 
371
+
372
+
373
+ /*
374
+
371
375
  System.out.print("数値を入力してください>" + " ");
372
376
 
373
377
  String str = br.readLine();
@@ -380,6 +384,36 @@
380
384
 
381
385
  clock.setSecond(Integer.parseInt(str));
382
386
 
387
+ */
388
+
389
+
390
+
391
+ //冗長かもしれませんが、入力の仕方を一つずつ入力できるよう修正しました
392
+
393
+
394
+
395
+        System.out.print("hourの数値を入力してください>" + " ");
396
+
397
+ String str = br.readLine();
398
+
399
+ clock.setHour(Integer.parseInt(str));
400
+
401
+
402
+
403
+ System.out.print("minuteの数値を入力してください>" + " ");
404
+
405
+ str = br.readLine();
406
+
407
+ clock.setMinute(Integer.parseInt(str));
408
+
409
+
410
+
411
+ System.out.print("secondの数値を入力してください>" + " ");
412
+
413
+ str = br.readLine();
414
+
415
+ clock.setSecond(Integer.parseInt(str));
416
+
383
417
 
384
418
 
385
419
  try{

4

ページの見難さを修正

2018/05/27 14:58

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -414,7 +414,7 @@
414
414
 
415
415
  ### やりたいこと、困っていること
416
416
 
417
- ```
417
+
418
418
 
419
419
  実行(したい)画面例
420
420
 
@@ -446,13 +446,15 @@
446
446
 
447
447
  お手数おかけいたしますが何卒よろしくお願いいたします。
448
448
 
449
- ```
449
+
450
450
 
451
451
 
452
452
 
453
453
  ### やりたいこと、困っていること(追記)
454
454
 
455
- 少し考えてみて、編集し直してみました。エラーは起こらなくなり、setでの値の設定も恐らく正しく行えたはずですので、プログラムの完成に少し近づけた気がします。しかし、現状値を一つ入力すると、実行画面が下記のように出力されてしまいます。
455
+ 少し考えてみて、編集し直してみました。エラーは起こらなくなり、setでの値の設定も恐らく正しく行えたはずですので、プログラムの完成に少し近づけた気がします。
456
+
457
+ しかし、現状値を一つ入力すると、実行画面が下記のように出力されてしまいます。
456
458
 
457
459
 
458
460
 

3

修正

2018/05/27 14:09

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -406,12 +406,16 @@
406
406
 
407
407
 
408
408
 
409
+ ```
410
+
409
411
 
410
412
 
411
413
 
412
414
 
413
415
  ### やりたいこと、困っていること
414
416
 
417
+ ```
418
+
415
419
  実行(したい)画面例
416
420
 
417
421
 
@@ -442,6 +446,8 @@
442
446
 
443
447
  お手数おかけいたしますが何卒よろしくお願いいたします。
444
448
 
449
+ ```
450
+
445
451
 
446
452
 
447
453
  ### やりたいこと、困っていること(追記)

2

誤字

2018/05/27 14:06

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -222,6 +222,10 @@
222
222
 
223
223
  ### 制作途中のソースコードの改善
224
224
 
225
+ ```Java
226
+
227
+ // Clockクラス //
228
+
225
229
 
226
230
 
227
231
  public class Clock {

1

制作途中のソースコードの改善

2018/05/27 14:04

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -216,14 +216,196 @@
216
216
 
217
217
 
218
218
 
219
-
220
-
221
-
222
-
223
219
  ```
224
220
 
225
221
 
226
222
 
223
+ ### 制作途中のソースコードの改善
224
+
225
+
226
+
227
+ public class Clock {
228
+
229
+ private int hour;
230
+
231
+ private int minute;
232
+
233
+ private int second;
234
+
235
+
236
+
237
+ //コンストラクタ1
238
+
239
+ public Clock(){
240
+
241
+ super();
242
+
243
+ }
244
+
245
+
246
+
247
+ //コンストラクタ2
248
+
249
+ Clock(int hour, int minute, int second){
250
+
251
+ this.hour = hour;
252
+
253
+ this.minute = minute;
254
+
255
+ this.second = second;
256
+
257
+ }
258
+
259
+
260
+
261
+ //SET
262
+
263
+ public void setHour(int hour) {
264
+
265
+ if(hour > 0 && hour <= 23){
266
+
267
+ this.hour = hour;
268
+
269
+ } else {
270
+
271
+ System.out.println("[ERROR] 数値を再入力してください");
272
+
273
+ }
274
+
275
+ }
276
+
277
+
278
+
279
+ public void setMinute(int minute) {
280
+
281
+ if(minute > 0 && minute <= 59){
282
+
283
+ this.minute = minute;
284
+
285
+ } else {
286
+
287
+ System.out.println("[ERROR] 数値を再入力してください");
288
+
289
+ }
290
+
291
+ }
292
+
293
+
294
+
295
+ public void setSecond(int second) {
296
+
297
+ if(second > 0 && second <= 59){
298
+
299
+ this.second = second;
300
+
301
+ } else {
302
+
303
+ System.out.println("[ERROR] 数値を再入力してください");
304
+
305
+ }
306
+
307
+ }
308
+
309
+
310
+
311
+ //GET
312
+
313
+ public int getHour(){
314
+
315
+ return hour;
316
+
317
+ }
318
+
319
+
320
+
321
+ public int getMinute(){
322
+
323
+ return minute;
324
+
325
+ }
326
+
327
+
328
+
329
+ public int getSecond(){
330
+
331
+ return second;
332
+
333
+ }
334
+
335
+
336
+
337
+ }
338
+
339
+
340
+
341
+
342
+
343
+
344
+
345
+ // Clockクラスを外部から実行するための別クラス、ClockTestクラス //
346
+
347
+
348
+
349
+
350
+
351
+ import java.io.*;
352
+
353
+
354
+
355
+ public class ClockTest {
356
+
357
+ public static void main(String[] args) throws IOException {
358
+
359
+
360
+
361
+
362
+
363
+ BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
364
+
365
+ Clock clock = new Clock();
366
+
367
+ System.out.print("数値を入力してください>" + " ");
368
+
369
+ String str = br.readLine();
370
+
371
+
372
+
373
+ clock.setHour(Integer.parseInt(str));
374
+
375
+ clock.setMinute(Integer.parseInt(str));
376
+
377
+ clock.setSecond(Integer.parseInt(str));
378
+
379
+
380
+
381
+ try{
382
+
383
+ System.out.println("hour" + " " + clock.getHour());
384
+
385
+ System.out.println("minute" + " " + clock.getMinute());
386
+
387
+ System.out.println("second" + " " + clock.getSecond());
388
+
389
+
390
+
391
+ } catch(Exception e) {
392
+
393
+ System.out.println("[ERROR] 数値を再入力してください");
394
+
395
+ }
396
+
397
+
398
+
399
+ }
400
+
401
+ }
402
+
403
+
404
+
405
+
406
+
407
+
408
+
227
409
  ### やりたいこと、困っていること
228
410
 
229
411
  実行(したい)画面例
@@ -258,6 +440,38 @@
258
440
 
259
441
 
260
442
 
443
+ ### やりたいこと、困っていること(追記)
444
+
445
+ 少し考えてみて、編集し直してみました。エラーは起こらなくなり、setでの値の設定も恐らく正しく行えたはずですので、プログラムの完成に少し近づけた気がします。しかし、現状値を一つ入力すると、実行画面が下記のように出力されてしまいます。
446
+
447
+
448
+
449
+
450
+
451
+ 数値を入力してください> 24
452
+
453
+ [ERROR] 数値を再入力してください
454
+
455
+ hour 0
456
+
457
+ minute 24
458
+
459
+ second 24
460
+
461
+
462
+
463
+ 一度入力した数値が全ての値の範囲内であれば、全て入力されてしまいます…。恐らくは再入力を求める繰り返し文の設定を行なっていない為だと思うのですが、またここからどうしていいのか、お力を貸していただけると助かります。
464
+
465
+ お手数おかけいたしますが、引き続き何卒よろしくお願いいたします。
466
+
467
+
468
+
469
+
470
+
471
+
472
+
473
+
474
+
261
475
  ### 補足情報(FW/ツールのバージョンなど)
262
476
 
263
477
  Java