0

ここで少し問題があります。いくつかの簡単なことをプログラムするように言われましたが、if ステートメントでコードを完全に実行することはできません。while ステートメントを使用すると、私のコードは完全に機能しますが、教師はそれを使用しないと主張します。While文はループですよね?彼は「ループを使わないで!」と言った。

import java.util.Scanner;
public class Flight
{
    public static void main (String [] args)
    {
        // Naming a scanner //
        Scanner scan = new Scanner(System.in);

        // Prints text //
        System.out.println("Enter flight day: ");
        // Data insert //
        int flyDay = scan.nextInt();

        System.out.println("Enter flight hour: ");
        int flyHour = scan.nextInt();

        System.out.println("Enter flight minute: ");
        int flyMinute = scan.nextInt();

        //// Length ///
        System.out.println("Enter flight's length in hours:");
        int departureHour = scan.nextInt();

        System.out.println("Enter flight's length in minutes:");
        int departureMin = scan.nextInt();

        // While minute is beyond 60 (including) //
        departureMin += flyMinute;
        while(departureMin >= 60) {
            departureHour++;
            departureMin-=60;
        }

        // While hour is beyond 24 (including) //
        departureHour += flyHour;
        while(departureHour >= 24)
        {
            flyDay++;
            departureHour-=24;
        }

        // While day is beyond 8 (including) //
        while(flyDay >=8)
        flyDay-=7;

        // Prints arrival time according to the data inserted above //
        System.out.println("the supposed arrival time is: day- " + flyDay + ", hour- " + departureHour + ", minute- " + departureMin);
    }
}

while ステートメントを if ステートメントに切り替えると、コードが正しく機能しなくなります。何か助けはありますか?

4

1 に答える 1

4

あなたの先生は正しいです。ここでループを使用するのは適切ではありません。

先生はおそらく、剰余 ( %) (しばしば「モジュラス」と呼ばれる) 演算子と除算 ( /)演算子を使用することを望んでいます。

于 2013-04-28T14:10:35.580 に答える