Python :: Aufgabe #321 :: Lösung #3
3 Lösungen
#321
Divisionsrest (Modulo) aus einer Zahl und ihrer Ziffern
Anfänger - Python
von JKooP
- 11.02.2021 um 19:17 Uhr
Ziel soll es sein, eine beliebige Integer-Zahl dahingehend zu überprüfen,
ob die Zahl dividiert durch jede ihrer Ziffern immer den Rest 0 ergibt (Modulo = mod).
Dazu soll eine Methode/Funktion erstellt werden, die zwei Integer-Zahlen (Min, Max) aufnimmt
und alle Lösungen im angegebenen Bereich (Min-Max) als Integer-Array zurückgibt.
Beispiel:
Min = 1
Max = 20
Lösung: = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15 ]
Erläuterung (Auszug):
Zahl 9: 9 mod 9 = 0 => true (gilt für jede einstellige Zahl)
Zahl 10: 10 mod 1 = 0; 10 mod 0 = 10 => false, da nicht beide den Rest 0 haben
Zahl 12: 12 mod 1 = 0; 12 mod 2 = 0 => true
Zahl 14: 14 mod 1 = 0; 14 mod 4 = 2 => false, da nicht beide den Rest 0 haben
Viel Spaß
ob die Zahl dividiert durch jede ihrer Ziffern immer den Rest 0 ergibt (Modulo = mod).
Dazu soll eine Methode/Funktion erstellt werden, die zwei Integer-Zahlen (Min, Max) aufnimmt
und alle Lösungen im angegebenen Bereich (Min-Max) als Integer-Array zurückgibt.
Beispiel:
Min = 1
Max = 20
Lösung: = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15 ]
Erläuterung (Auszug):
Zahl 9: 9 mod 9 = 0 => true (gilt für jede einstellige Zahl)
Zahl 10: 10 mod 1 = 0; 10 mod 0 = 10 => false, da nicht beide den Rest 0 haben
Zahl 12: 12 mod 1 = 0; 12 mod 2 = 0 => true
Zahl 14: 14 mod 1 = 0; 14 mod 4 = 2 => false, da nicht beide den Rest 0 haben
Viel Spaß
#3
von vMaex (540 Punkte)
- 25.02.2021 um 10:13 Uhr
#321
zahlen = []
ergebnis = []
eingabe = input('Bitte zwei Zahlen eingeben im Format "x x" eingeben:')
bereich = sorted(eingabe.split())
for i in range(int(bereich[0]), int(bereich[1]) + 1):
zahlen.append(i)
print('Min =', bereich[0], '\nMax =', bereich[1])
for zahl in zahlen:
teiler = list(str(zahl))
try:
for i in teiler:
if zahl % int(i) == 0:
lösung = True
else:
lösung = False
break
except:
lösung = False
if lösung == True:
ergebnis.append(zahl)
print('Lösung =', ergebnis)
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
