Python :: Aufgabe #47 :: Lösung #3

6 Lösungen Lösungen öffentlich
#47

vollkommene Zahl (Mathematisches Problem)

Anfänger - Python von bibir - 03.09.2014 um 08:21 Uhr
Man nennt eine natürliche Zahl N "vollkommen", wenn die Summe aller echten Teiler von N gleich N ist.

Zum Beispiel ist 28 eine vollkommene Zahl, da 1 + 2 + 4 + 7 + 14 = 28 ist.

Schreibe ein Programm/Skript, das beliebig oft eine Zahl N (mit 0 < N < 100000) einliest und feststellt, ob N eine vollkommene Zahl ist. Falls ja, soll das Programm N und die zugehörenden echten Teiler ausgeben, andernfalls ist nur N und die Meldung "ERFUELLT DIE BEDINGUNG NICHT" zu drucken.
#3
vote_ok
von jigga (4260 Punkte) - 21.06.2015 um 20:10 Uhr
Quellcode ausblenden Python-Code
import sys

liste = []
ergebnis = 0

zahl = int(input("Zahl zwischen 1 und 100000: "))

if zahl < 1 or zahl > 100000:
    print("Flasche Eingabe!")
    sys.exit(0)

for i in range(1,int(zahl/2) + 1):
    if zahl % i == 0:
        liste.append(i)

for i in range(len(liste)):
    ergebnis += liste[i]

if ergebnis == zahl:
    print(zahl, "=", liste)

else:
    print(zahl, "erfuellt die Bedingung nicht.")

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben