Von beliebig vielen Zahlen die Größte ausgeben.

bsirske

Mitglied
Hallo zusammen,

Für die Schule soll ich ein Programm entwerfen dass von beliebig vielen Zahlen die größte ausgiebt, ist mein Ansatz falsch?

Code:
using System;

public class App
{
	public static void Main()
	{
		
		Console.Write("Wieviele Zahlen möchten Sie eingeben? ");
		int menge = int.Parse(Console.ReadLine());
		int i = 1;
		if (menge > 1)
		{
			Console.Write("Verstanden, Geben Sie nun die Zahlen an.");
			do {
			
			Console.Write("Zahl " +i++);
				while (i=menge);
		
		}
		
		}
		
		
		
		Console.ReadLine();
	}
}
 
i=menge ist keine gültige Vergleichsoperation.
Für Gleicheit nutzt man "==". Allerdings willst du solange Zahlen einlesen, bis du menge erreicht hast. Da hier eine feste Anzahl Durchläufe feststeht, empfiehlt sich die For-Schleife:
C++:
using System;
 
public class App{
    public static void Main(){        
        Console.Write("Wieviele Zahlen möchten Sie eingeben? ");
        int menge = int.Parse(Console.ReadLine());
        for( int i = 0; i < menge; i++ ){
            Console.Write("Zahl " +i++);
            Console.ReadLine();
            // Ergänzen
        }
    }
}

Du musst jetzt noch ein Array erstellen und die Zahlen innerhalb der Forschleife dort hinein speichern.
Anschließend das Array durchlaufen und die jeweils größte Zahl in einer Hilfsvariable speichern. Ist die nächste Zahl im Array größer (mit Hilfsvariable vergleichen), musst du die Hilfsvariable überschreiben. Am Ende steht die größte Zahl.
 
Erstelle Dir eine Hilfsvariabel max.
Bei jeder eingegebenen Zahl vergleichst du diese mit max. Ist sie größer, setzt du max auf die eingelesene Zahl. Am Ende ist die höchste Zahl in max.
 
Zurück