Python :: Aufgabe #47 :: Lösung #2
6 Lösungen

#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.
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.
#2

von _Mala_Fide_ (820 Punkte)
- 26.04.2015 um 22:35 Uhr

#!/usr/bin/python import string eingabe = input("Gib eine Zahl ein:\t") vollkommen = 0 teiler_liste = [] for teiler in range(1, eingabe): if eingabe % teiler == 0: vollkommen += teiler teiler_liste += [str(teiler)] if vollkommen == eingabe: print eingabe, "ist eine vollkommene Zahl.\nDie Teiler dazu sind:\t", string.join(teiler_liste, ", ") else: print eingabe, "erfuellt die Bedingung nicht."
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1