フライト スケジュールをプログラムすることになっていて、ちょっとした問題に遭遇しました。
ユーザーは以下を挿入する必要があります: 出発日 (1 - 7、1 は週の最初の日、7 は週の最後の日を意味します)。出発時間 (0 - 24)。出発分 (0 - 60)。
次に : フライトの長さ (時間単位)。フライトの長さ (分単位)。
その後 : ユーザーは、上で挿入したデータに従って到着時刻を取得します。
何らかの理由で、入力すると:
出発時刻 : 1 日目 10 時 00 分。
飛行時間は 72 時間です。フライトの長さ (分 00 分)。
私が取得することになっているのは、4日目、10時間、00分です。取得するのは、1日目、49時間、10分です。
-- 編集 -- 新しいコードは次のとおりです。
import java.util.Scanner;
public class Flight
{
public static void main (String [] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("Enter flight day: ");
int FLYDAY = scan.nextInt();
System.out.println("Enter flight hour: ");
int FLYHOUR = scan.nextInt();
System.out.println("Enter flight minute: ");
int FLYMINUTE = scan.nextInt();
int departureDay = scan.nextInt();
int departureHour = scan.nextInt();
int departureMin = scan.nextInt();
departureMin += FLYMINUTE;
while(departureMin >= 60) {
departureHour++;
departureMin-=60;
}
departureHour += FLYHOUR;
while(departureHour >= 24)
{
departureDay++;
departureHour-=24;
}
while(departureDay >=8)
departureDay-=7;
System.out.println("the supposed arrival time is: day- " + departureDay + ", hour- " + departureHour + ", minute- " + departureMin);
}
}