bin gerade über einer Übungsaufgabe habe diese fertig jedoch find ich meinen Fehler nicht! Es wird kein Fehler angezeigt aber die Console gibt nichts aus! Hab euch auch gleich kommentare hin damit ihr (hoffentlich) den (vorhandenen) Fehler sofort erkennt.
Danke schonmal für die Hilfe/Anregungen :)
Aufgabenstellung:
a)Schreiben Sie eine Funktion, die feststellt, ob eine Zahl eine perfekte Zahl ist. Eine perfekte Zahl ist eine Zahl, die die Summe aller ihrer Teiler ist (außer sich selbst). Beispiel: 28 = 14 + 7 + 4 + 2+1 ist perfekt
b) Schreiben Sie ein C#-Programm, das alle perfekten Zahlen zwischen 1 und 100 ausgibt. Verwenden Sie dazu die Funktion aus a)
Mein Code:
static bool PerfekteZ(int zahl)
{
bool isok=false;
int summe = 0;
// alle Teiler zu zahl bestimmen
// Summe der Teiler berechnen
for (int i=1; i ≤ zahl/2; i++)
{
if (i % zahl == 0) // Teiler gefunden
{
summe += i; // Summieren
if (zahl == summe) // Summe mit Zahl vergleichen
{
isok = true;
}
else
{
isok = false;
}
}
else
{
isok = false;
}
}
if (isok == true) // Ausgabe
{
Console.WriteLine("Perfekte Zahl: {0}", zahl);
}
return isok;
}
static void Main()
{
int n=0;
do
{ PerfekteZ(n);
n++;
}while (n ≤ 100);
}
Mfg Johnny aka Bababune