if,else,elifによるデータの扱い
皆さんはお店のアルバイトをしている時にレジのバイトをしていると考えてください。それで130円のアイスを買いに来ているお客様がいるとします。その時もらったお金によって、「ちょうどお預かりいたします。」なのか、「お釣りのお返しです。」なのか「お金が足りません」と返すのかということをif文でそれぞれ処理をしてくれます。elifは条件2〜みたいなものです。
# もし支払った金額がちょうどだったら、、、ここは払ってもらっている金額をかく。
cost=130
# もらった金額が130円だった時の処理
if cost==130:
print('ちょうどお預かりいたします。')
# もらった金額が130円より少ない時
elif cost < 130:
print('お金が足りません。')
# もらった金額が130円より多い時
elif cost > 130:
print('お釣りのお返しです。')
# それ以外(お金をもらってない時)
else:
print('金額をおっしゃってください。')
このようにして条件文はできています。それでは少し応用のinput()を使ってみましょう。これは自分で値段を書いてその時に応じてかくというものです。
一回例を書いてみますね!!
while True:
number=input('支払金額: ')
# ここで数字を文字列化していく
cost=int(number)
# もらった金額が130円だった時の処理
if cost==130:
print('ちょうどお預かりいたします。')
# もらった金額が130円より少ない時
elif cost < 130:
print('お金が足りません。')
# もらった金額が130円より多い時
elif cost > 130:
print('お釣りのお返しです。')
# それ以外(お金をもらってない時)
else:
print('金額をおっしゃってください。')
このようにすれば自分が金額を指定してそれに応じた金額を出力することが可能です。ここで使っているのがwhile文になるwhile文はその条件があっている限り処理を繰り返していくというもの。例えば5以下の場合はずっと同じ処理を繰り返していくなどというもの。簡単な例を示していきます。
cost=2
while cost<11:
print(cost*cost)
cost+=1
4
9
16
25
36
49
64
81
100
ここでは数字の2から10までの数字をcostに代入してそれを二乗するということです。
breakによるループ中止
やばい、渡すお釣りが無くなっちゃた!これはもうちょうど支払って欲しいなって思った時にこのように言いましょう!!!
while True:
cost=input('支払金額: ')
number=int(cost)
# もらった金額が130円だった時の処理
if number==130:
break
print('ちょうどいただきたいです')
これだったらお釣り渡さなくてもいいですよね???
continueによる次のループの開始
continueは大雑把にいうとスルーみたいなものです!!ここでは釣りが出るとダメだよ!!みたいなことを言ってちょうどの時はもう処理を終了する。そしてお金が足りない時は何も言わないことにしよう
while True:
cost=input('支払金額: ')
number=int(cost)
if number==130:
break
if number<130:
continue
print('ダメ!!!')
こんな感じでやってみればできると思います!!
もしこの表現ムカつくとかありましたら編集リクエストもしくはコメントにておしらせください!お願い申しあげます。GWは投稿休んでしまい申し訳ございませんでした