Diesmal geht es mehr um eine Frage, welche sich mehr um das Berechnen bezieht, also ich kapiere einfach nicht wie ich etwas berechnen soll.
Hier erstmal die Aufgabenstellung:
Ein Auto startet zum Zeitpunkt 0 mit der Geschwindigkeit startGeschwindigkeit (positive Ganzzahl in km/h). Alle 30 Minuten erhöht das Fahrzeug die Geschwindigkeit um geschwindigkeitsZuwachs (positive Ganzzahl in km/h). Nach wie vielen Stunden und Minuten (auf zwei Nachkommastellen genau) erreicht das Auto das Ziel in entfernung (positive Ganzzahl in km).
Der Benutzer ist aufzufordern, über die Tastatur die Vorgaben einzugeben.
Das Programm gibt das Ergebnis aus
Und hier drei Testvorgaben: 1.: startGeschwindigkeit: 0, Geschwindigkeitszuwachs: 10 Entfernung: 5 Ankunft: 01:00
2.: startGeschwindigkeit: 0, Geschwindigkeitszuwachs: 1 Entfernung: 5 Ankunft: 02:30
3.: startGeschwindigkeit: 0, Geschwindigkeitszuwachs: 1 Entfernung: 7 Ankunft: 02:54
Mein Lösungsansatz:
Code: Alles auswählen
string userInput;
double startVelocity;
double changeOfVelocity;
int distance;
double minutes=0;
int hours=0;
Console.WriteLine("Ziel mit steigender Geschwindigkeit ansteuern");
Console.WriteLine("=============================================");
Console.Write("Startgeschwindigkeit: ");
userInput = Console.ReadLine();
startVelocity = Convert.ToInt32(userInput);
Console.Write("Geschwindigkeitszuwachs: ");
userInput = Console.ReadLine();
changeOfVelocity = Convert.ToInt32(userInput);
Console.Write("Entfernung: ");
userInput = Console.ReadLine();
distance = Convert.ToInt32(userInput);
startVelocity /= 60;
changeOfVelocity /= 60;
while (distance != startVelocity * minutes)
{
minutes +=30;
startVelocity += changeOfVelocity;
}
if (minutes >= 60)
{
hours = (Int32)minutes / 60;
minutes %= 60;
}
Console.WriteLine();
Console.WriteLine($"Fahrzeit: {hours} Stunden und {minutes:f} Minuten");
Console.Write("Programm mit einer beliebigen Taste beenden...");
Console.ReadKey();
Dann soll er so lange in der Schleife bleiben, bis die distanz erreicht wurde. Und hier ist dann mein Problem, weil er hier irgendwie nie aus der Schleife geht. Alles danach kapiere ich, nur eben das(was ja der Hauptteil im Grunde ist) vom rechnen her nicht.