Python :: Aufgabe #22 :: Lösung #1

2 Lösungen Lösungen öffentlich
#22

Programmier-Basic: Eigene Klasse Rechnen schreiben

Anfänger - Python von Coco - 02.01.2013 um 16:58 Uhr
Schreibe eine eigene Klasse, die für dich das Rechnen übernimmt:
-Funktionen für Addition, Multiplikation, Subtraktion, Division
-Achte darauf, dass Bei der Divison nicht durch 0 geteilt werden darf!
-Die Funktionen sollten Float Werte entgegen nehmen, damit du auch Kommerzahlen berechnen kannst


Im eingentlichen Programm sollst du dann mit z.B. mit einer switch abfrage die Eingabe verwalten und zu den Richtigen funktionen schicken.

Eine bespiel in der Konsole:

Konsolenausgabe:


Erste Zahl: 1.215
Operator: /
Zweite Zahl: 1.124

Ergebnis: 1.08096

Drücken Sie eine beliebige Taste...


gruß
coco
#1
vote_ok
von jigga (4260 Punkte) - 18.05.2015 um 10:17 Uhr
Quellcode ausblenden Python-Code
import sys

class Rechnen(object):
	
	def __init__(self, x, y):
		self.x = x
		self.y = y

	def addition(self,x,y):
		print("Ergebnis:", self.x+self.y)

	def subtraktion(self,x,y):
		print("Ergebnis:", self.x-self.y)

	def multiplikation(self,x,y):
		print("Ergebnis:", self.x*self.y)

	def division(self,x,y):
		if self.y == 0:
			print("Division durch Null!")

		else:
			print("Ergebnis:", self.x/self.y)

z1       = input("Erste Zahl: ").replace(',','.')
operator = input("Operator: ")
z2       = input("Zweite Zahl: ").replace(',','.')

print()

try:
	zahl1 = float(z1)
except:
	print("Nur Zahlen bitte!")
	sys.exit(0)
	
try:
	zahl2 = float(z2)
except:
	print("Nur Zahlen bitte!")
	sys.exit(0)

lsg = Rechnen(zahl1,zahl2)

if operator == '+':
	lsg.addition(zahl1,zahl2)

elif operator == '-':
	lsg.subtraktion(zahl1,zahl2)

elif operator == '*':
	lsg.multiplikation(zahl1,zahl2)

elif operator == '/':
	lsg.division(zahl1,zahl2)

else:
	print("Falscher Operator!")

Kommentare:

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

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