Einführung
In diesem Projekt lernst du, wie du alle vollkommenen Zahlen im Bereich von 1 bis 1000 findest. Vollkommene Zahlen sind positive ganze Zahlen, die der Summe ihrer echten Teiler (exklusive der Zahl selbst) gleich sind.
👀 Vorschau
## Wenn der Bereich 1 bis 10 ist, sollte die Ausgabe lauten:
Vollkommene Zahlen: 6 ## 6 = 1 + 2 + 3
🎯 Aufgaben
In diesem Projekt wirst du lernen:
- Wie du die Funktion
perfect_numberimplementierst, um alle vollkommenen Zahlen innerhalb eines angegebenen Bereichs zu finden - Wie du die Funktion
perfect_numbertestest und die Korrektheit der Ergebnisse verifizierst - Wie du die Funktion
perfect_numberfür eine bessere Leistung und Lesbarkeit optimierst und verbesserst
🏆 Errungenschaften
Nach Abschluss dieses Projekts wirst du in der Lage sein:
- Den Begriff der vollkommenen Zahlen und ihre mathematischen Eigenschaften zu verstehen
- Eine Funktion zu schreiben, um alle vollkommenen Zahlen innerhalb eines bestimmten Bereichs zu finden
- Deinen Code zu testen und zu debuggen, um sicherzustellen, dass er richtig funktioniert
- Deinen Code für eine höhere Effizienz und Lesbarkeit zu optimieren
- Deine Problemlösefähigkeiten anzuwenden, um deine Programmierfähigkeiten zu verbessern
Verstehe das Problem
In diesem Schritt wirst du den Begriff der vollkommenen Zahlen und die Anforderungen an das Projekt kennenlernen.
Vollkommene Zahlen sind positive ganze Zahlen, die der Summe ihrer echten Teiler (exklusive der Zahl selbst) gleich sind. Beispielsweise sind die Faktoren von 6 1, 2 und 3. Da 6 = 1 + 2 + 3, ist 6 eine vollkommene Zahl.
Das Ziel dieses Projekts ist:
- Die Funktion
perfect_numberinperfect_number.pyabzuschließen, um alle vollkommenen Zahlen im Bereich von 1 bis 1000 zu finden. - Alle gefundenen vollkommenen Zahlen getrennt durch ein Leerzeichen auszugeben.
Implementiere die perfect_number-Funktion
Öffne die Datei perfect_number.py und finde die perfect_number-Funktion. Diese Funktion ist dafür verantwortlich, alle vollkommenen Zahlen im Bereich von 1 bis 1000 zu finden.
Hier ist der ursprüngliche Code:
def perfect_number():
"""
Findet alle vollkommenen Zahlen im Bereich von 1 bis 1000.
Rückgabe:
list: Eine Liste mit den im Bereich von 1 bis 1000 gefundenen vollkommenen Zahlen.
"""
result = []
for num in range(1, 1001):
factors = []
for i in range(1, num):
if num % i == 0:
factors.append(i)
if sum(factors) == num:
result.append(num)
return result
Gehen wir Schritt für Schritt durch den Code:
- Die Funktion
perfect_numberwird definiert, um alle vollkommenen Zahlen im Bereich von 1 bis 1000 zu finden. - Eine leere Liste
resultwird initialisiert, um die vollkommenen Zahlen zu speichern. - Die Funktion iteriert durch die Zahlen von 1 bis 1000 (inklusive).
- Für jede Zahl findet die Funktion ihre Faktoren (exklusive der Zahl selbst) und fügt sie zur Liste
factorshinzu. - Wenn die Summe der Faktoren gleich der Zahl ist, wird die Zahl als vollkommene Zahl betrachtet und zur Liste
resulthinzugefügt. - Schließlich gibt die Funktion die Liste
resultzurück, die alle gefundenen vollkommenen Zahlen enthält.
Teste die perfect_number-Funktion
Um die perfect_number-Funktion zu testen, füge den folgenden Code am Ende der Datei perfect_number.py hinzu:
if __name__ == "__main__":
result = perfect_number()
print("Vollkommene Zahlen:", " ".join(map(str, result)))
Dieser Code ruft die perfect_number-Funktion auf und gibt alle gefundenen vollkommenen Zahlen getrennt durch ein Leerzeichen aus.
Speichere die Datei perfect_number.py und führe das Skript aus:
python perfect_number.py
Die Ausgabe sollte lauten:
Vollkommene Zahlen: 6 28 496
Dies bedeutet, dass die perfect_number-Funktion richtig funktioniert und die vollkommenen Zahlen im Bereich von 1 bis 1000 gefunden hat.
Zusammenfassung
Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Labs absolvieren, um deine Fähigkeiten zu verbessern.



