Python :: Aufgabe #1 :: Lösung #17
33 Lösungen

#1
Multiplikation ohne zu multiplizieren
Anfänger - Python
von Gustl
- 11.11.2012 um 17:24 Uhr
Erstellen Sie ein Konsolenprogramm welches dem Benutzer auffordert 2 Zahlen einzugeben, diese sollen dann multipliziert werden, jedoch ist nur die Grundrechenart Addition erlaubt.
Wenn einer der 2 Zahlen keine Zahl ist, soll eine Fehlermeldung ausgegeben werden und der Benutzer noch einmal aufgefordert werden eine Zahl einzugeben.
Wenn einer der 2 Zahlen keine Zahl ist, soll eine Fehlermeldung ausgegeben werden und der Benutzer noch einmal aufgefordert werden eine Zahl einzugeben.
#17

von PythonIT (240 Punkte)
- 19.08.2017 um 16:17 Uhr
Also ich habe das ganze jetzt nach meinem entsprechenden Hinweis in der Fragen-Sektion der Aufgabe auch für jede Länge von Kommastellen programmiert, ich hoffe, das ganze wirkt jetzt nicht zu klobig:
Python-Code

# additive_multiplikation.py # (c) Copyright 2017 by PythonIT def multiplizieren(zahl1, zahl2): # Methode zur multiplikation zweier Ganzzahlen ergebnis = 0 for i in range(zahl2): ergebnis += zahl1 return ergebnis while True: # Zahleneingabe try: zahl1 = float(input("Zahl 1: ")) zahl2 = float(input("Zahl 2: ")) break except: print("Bitte Zahlen eingeben") if len(str(zahl1)) <= len(str(zahl2)): # Überprüfung der Zahlenlängen, um zahl2, zahl1 = zahl1, zahl2 # Schleifendurchläufe zu sparen zahl2 = str(zahl2) l = zahl2.split(".") # Aufteilung in vor dem Komma und nach dem Komma ganzzahl = int(l[0]) teiler = len(l[1]) # Festlegung des Teilers, um die Nachkommastellen zu berichtigen dezimale = int(l[1]) produkt = multiplizieren(zahl1, ganzzahl) + (multiplizieren(zahl1, dezimale) / 10**teiler) print(produkt)
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1