Jadi, inilah situasi saya. Saya telah mencoba membuat kalkulator tingkat lanjut dengan python 3.4, di mana Anda cukup mengetikkan sesuatu seperti ini. '1 + 1', dan itu akan memberi Anda jawaban '2'. Sekarang saya akan menjelaskan cara kerja kalkulator saya. Jadi Anda mulai dengan memasukkan persamaan matematika, lalu menghitung kata yang Anda masukkan berdasarkan spasi. Ia melakukan ini sehingga ia mengetahui berapa lama beberapa loop di masa depan perlu dilakukan. Kemudian itu membagi semua yang Anda masukkan. Itu membaginya menjadi str dan int tetapi semuanya masih dalam variabel yang sama dan semuanya masih teratur. Hal yang menjadi masalah bagi saya adalah ketika itu dimaksudkan untuk benar-benar melakukan perhitungan.
ini semua kode saya-
# This is the part were they enter the maths equation
print("-------------------------")
print("Enter the maths equation")
user_input = input("Equation: ")
# This is were it counts all of the words
data_count = user_input.split(" ")
count = data_count.__len__()
# Here is were is splits it into str's and int's
n1 = 0
data = []
if n1 <= count:
for x in user_input.split():
try:
data.append(int(x))
except ValueError:
data.append(x)
n1 += 1
# And this is were it actually calculates everything
number1 = 0
number2 = 0
n1 = 0
x = 0
answer = 0
while n1 <= count:
#The code below checks if it is a number
if data[n1] < 0 or data[n1] > 0:
if x == 0:
number1 = data[n1]
elif x == 1:
number2 = data[n1]
elif data[n1] is "+":
if x == 0:
answer += number1
elif x == 1:
answer += number2
n1 += 1
x += 1
if x > 1:
x = 0
print("Answer =", answer)
tetapi selama perhitungan itu kacau dan memberi saya kesalahan
kesalahan-
if data[n1] < 0 or data[n1] > 0:
TypeError: unorderable types: str() < int()
adakah yang bisa melihat kesalahan saya di sini? Terima kasih