Python Taschenrechner

7 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Hab hier mal 'ne "Lösung". Vorhin programmiert und es funktioniert ^^ Die Eingaben kann man sicher besser lösen aber mir ist kurzfristig nicht eingefallen wie man es sonst machen könnte :D

Wenn jemand Fragen hat, haltet euch nicht zurück ;D Über Feedback, sowohl positiv als auch negativ, würde ich mich ebenfalls freuen. :)

print("""
      ====================================================
      ==                 Taschenrechner                 ==
      ====================================================
    """)

num1 = input("Gib die erste Zahl ein: ")
oper = input("Welche Rechenoperation (+,-,*,/) soll durchgeführt werden? ")
num2 = input("Gib die zweite Zahl ein: ")

num1 = int(num1)
num2 = int(num2)


if (oper == "+"):
    print("\nDeine Rechnung: \n",
          num1, " + ", num2)
    print("Ergebnis: \n",
          num1 + num2)

elif (oper == "-"):
    print("\nDeine Rechnung: \n",
          num1, " - ", num2)
    print("Ergebnis: \n",
          num1 - num2)

elif (oper == "/"):
    print("\nDeine Rechnung: \n",
          num1, " / ", num2)
    print("Ergebnis: \n",
          num1 / num2)

elif (oper == "*"):
    print("\nDeine Rechnung: \n",
          num1, " * ", num2)
    print("Ergebnis: \n",
          num1 * num2)

else:
    print("\nKeine gültige Eingabe");

PrinceMorice  12.01.2016, 13:54

Also im Grunde ist dein Taschenrechner gut aber irgendwie auch ein bisschen billig ;) ich habe mich grade mal eine Woche mit Python beschäftigt und habe grade eben fast den Selben rechner Programiert. :P

1
En1234  30.07.2021, 22:13

Am besten du änderst Int zu float damit man auch Koma Zahlen berechnen kann.

Verbesserung:

print("""
      ====================================================
      ==                 Taschenrechner                 ==
      ====================================================
    """)

num1 = input("Gib die erste Zahl ein: ")
oper = input("Welche Rechenoperation (+,-,*,/) soll durchgeführt werden? ")
num2 = input("Gib die zweite Zahl ein: ")

num1 = float(num1)
num2 = float(num2)


if (oper == "+"):
    print("\nDeine Rechnung: \n",
          num1, " + ", num2)
    print("Ergebnis: \n",
          num1 + num2)

elif (oper == "-"):
    print("\nDeine Rechnung: \n",
          num1, " - ", num2)
    print("Ergebnis: \n",
          num1 - num2)

elif (oper == "/"):
    print("\nDeine Rechnung: \n",
          num1, " / ", num2)
    print("Ergebnis: \n",
          num1 / num2)

elif (oper == "*"):
    print("\nDeine Rechnung: \n",
          num1, " * ", num2)
    print("Ergebnis: \n",
          num1 * num2)

else:
    print("\nKeine gültige Eingabe");
0
helloworldpy  02.09.2021, 23:10

Hey, bin ein bisschen zu spät aber was solls.
Ich habe den Code mal auch ein wenig umgeändert so das er fragt ob du noch eine Rechnung machen möchtest :=)

import time


def rechner():

    for i in range(50):
        print(" ")

    print("""
      ====================================================
      ==                 Taschenrechner                 ==
      ====================================================
    """)

    num1 = input("Gib die erste Zahl ein: ")
    oper = input("Welche Rechenoperation (+,-,*,/) soll durchgeführt werden? ")
    num2 = input("Gib die zweite Zahl ein: ")

    num1 = int(num1)
    num2 = int(num2)


    if (oper == "+"):
        print("\nDeine Rechnung: \n",
              num1, " + ", num2)
        print("Ergebnis: \n",
              num1 + num2)

    elif (oper == "-"):
        print("\nDeine Rechnung: \n",
              num1, " - ", num2)
        print("Ergebnis: \n",
              num1 - num2)

    elif (oper == "/"):
        print("\nDeine Rechnung: \n",
              num1, " / ", num2)
        print("Ergebnis: \n",
              num1 / num2)

    elif (oper == "*"):
        print("\nDeine Rechnung: \n",
              num1, " * ", num2)
        print("Ergebnis: \n",
              num1 * num2)

    else:
        print("\nERROR Falsche Eingabe");

    b = input("Wollen Sie eine weitere Rechnung machen? (y/n): ");

    if b.lower() == "y":
        rechner();
    else:
        time.sleep(1)
        print("===================\n"
              "Auf Wiedersehen!\n"
              "===================")
        time.sleep(3)


rechner()
0

Du hast vermutlich Python 3.x, raw_input() gibt es da wohl nicht mehr. Nimm dafür input().

LG aus Stuttgart

ja du musst auch a = int(raw_input("Bitte Rechnung eingeben: ")) oder statt int eben floot oder wie das heißt außerdem wird das ganze nicht funktionieren weil du nicht 3+5 in einer zeile schreiben kannst, oder hast du das schon raus?


gnomhd 
Beitragsersteller
 21.09.2014, 13:52

Geht leider auch nicht kommt der selbe Fehler:( Oder soll ich machen:

from math import sqrt

print ("Taschenrechner")

a = float(raw_input("Bitte erste Zahl eingeben "))

b = float(raw_input("Bitte zweite Zahl eingeben "))

c = float(raw_input("Bitte Rechenzeichen eingeben"))

x1= a,c,b

print ("Ergebnis: ", x1)

Geht aber leider auch nicht kommt auch der Fehler

0
tsiegleauq  24.09.2014, 11:05
@gnomhd
  • input statt raw_input
  • sprechende Varriablen
  • "+ - * und /" können kein float sein
  • x1 wird nur ein Tupel der eingaben. Du wirst nach dem entsprechenden operator parsen müssen

    if x1(1) is "+"
        #rechne mit +
    elif x1(1) is "-"
        #rechne mit -
    

(ich bin kein nativer python programmierer, es kann einen besseren weg geben)

0

Ich hab den ganz anders gemacht und so dass er gleich alle Rechenarten ausgibt. Nur das "else" habe ich noch nicht drauf, ebenso Abstande und Umbruch. Ich programmiere seit wenigen Minuten mit Version 3.5

:D


print("""
====================================================
== Taschenrechner ==
====================================================
Dieser Rechner addiert, subtrahiert, multipliziert und dividert auf einmal deine im folgenden angegebenen Zahlen
""")

num1 = int(input("Gib die erste Zahl ein: "))
num2 = int(input("Gib die zweite Zahl ein: "))

summe1=num1+num2
summe2=num1-num2
summe3=num1*num2
summe4=num1/num2

print(num1, " + ", num2)
print("Ergebnis:", summe1)
print(num1, " - ", num2)
print("Ergebnis:", summe2)
print(num1, " / ", num2)
print("Ergebnis:", summe4)
print(num1, " * ", num2)
print("Ergebnis:", summe3)


Wen du unter Python 2.x Arbeitest kannst du einfach input() verwenden es rechnet dan den Rechenausdruck automatisch aus.

>>>#z.B.:
>>> a = input()
1+2+3
>>> print a
6

>>>#Das ist wesentlich einfacher als der bisher genannte Code.

Tbear44  25.02.2020, 13:30

Mit Python 3.x kann man aber einfach exec(input()) benutzen :D

0