文字列で書かれている数式を確定させて出力させる問題
前回学んだことを活かして下記のように
はじめ、+かーかそうでなければ数値として、答え変数に代入し、
その後、+かーかでフラグを立てて
その次の数値をフラグ通りに計算するという方法。
s = input()
ans = 0
flag = 0
for i in s:
if i == '+':
flag = 1
elif i == '-':
flag = 2
else:
if flag == 0:
ans = int(i)
elif flag == 1:
ans += int(i)
elif flag == 2:
ans -= int(i)
print(ans)
答えを見てみるともっと簡単になってた。
奇数が数式で、偶数の場合数値が出るので
そこで場合分けする方法だった。
s = input()
ans = 0
add = True
for i in range(len(s)):
if i % 2 == 0:
if add:
ans += int(s[i])
else:
ans -= int(s[i])
else:
if s[i] == "+":
add = True
else:
add = False
print(ans)