Erste Schritte for-Schleife; Ausgabe soll alle 5 Sekunden erfolgen.

Guten Abend allerseits,

als Java-Anfänger bin ich auf folgendes Problem gestoßen und google konnte mir keine passende Antwort liefern.

Wir sollen mittels for-Schleife den freien Fall für jeweils t Sekunden berechnen und ausgeben.
t ist die Falldauer und stellt einen int dar, der über einen Scanner übergeben wird.
Soweit funktioniert alles.

Aufgabenstellung b) fordert, dass die Ausgabe für jede fünfte Sekunde erfolgt.
Startwert i = 1.

Timer oder try-catch sind nicht erlaubt, da wir diese Themen offiziell nicht hatten.
Mir blieben Lösungsansätze mit if-else, do-while.... leider stehe ich auf dem Schlauch und weiß nicht, wie ich solche Ausgabe erzeugen kann.

Anbei der momentane Code:
Java:
package freierfall;
import java.util.Scanner;

public class BerechneFF
{
    public static void main(String [] args) throws InterruptedException
    {
        Scanner eingabe = new Scanner(System.in);
        System.out.println("Bitte geben Sie die Falldauer t ein: ");
       
        int time = eingabe.nextInt();
        final double gravity = 9.80665;

        for (int i = 1; i <= time; i++)
        {
            double strecke = (double)(gravity * i * i)/2;
            // Teilaufgabe a)
            System.out.println("Zeit: " + i + " Sekunde(n): Zurückgelegte Strecke: " + strecke + " Meter!");
            Thread.sleep(1000);
        }
        eingabe.close();
    }
}
Ich hoffe, dass mir jemand einen kleinen Klapps auf den Hinterkopf geben kann.

Liebe Grüße
 
Du musst die Ausgabe von einer Bedingung abhängig machen.
Da dein "i" die Sekunden darstellt, wäre " i % 5 == 0 " der Ausdruck, der alle 5 Sekunden true ist.
% ist der aus der Mathematik bekannte Modulo-Operator
 
@insanezulu freier Fall ohne Luftwiderstand und mal ein Vakuum angenomomen. Aber das war nicht die Frage :p Danke dir jedoch.
@Dompteur den Modulo hatten wir bereits als Thema. Vielen Dank, ich werde es sofort eintippen :)
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben