테스트 사이트 - 개발 중인 베타 버전입니다

조건문 반복문 동시 사용

db윤윤돌이 4년 전 조회 3,705

1. list=["A사이다 800원", "B콜라 1000원",]

2. x=input("무엇을 드시겠습니까: ")

3. A 선택

4. 금액을 넣는다

5. 돈이 부족하면 부족한 잔액 계산해서 "잔액이 ~~ 부족합니다"라는 구절과 2번으로 돌아간다. 

6. 돈이 딱 맞으면 "맛있게 드십시오."

7. 돈이 많으면 많은만큼 계산해서 "거스름돈은 ~~원입니다. 맛있게 드십시오."

 

라는 파이썬을 어떻게 짜야할까요....?

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

s
4년 전

부족한 실력으로 한번 짜보았습니다.

</p>

<p>from tkinter import *</p>

<p># from tkinter.ttk import *</p>

<p>from tkinter import messagebox</p>

<p>import tkinter</p>

<p> </p>

<p>window=tkinter.Tk()</p>

<p>window.title("python window")</p>

<p>window.resizable(True, True)</p>

<p>selected = IntVar()</p>

<p>window.geometry("500x300")</p>

<p>radio_selected = ""</p>

<p>labelframe2 = LabelFrame(window, text="")</p>

<p>drinkCheck = 0</p>

<p>def check():</p>

<p>    global drinkCheck</p>

<p>    radio_selected = RadioVariety_1.get()</p>

<p>    if radio_selected =="A사이다는 800원":</p>

<p>        label.config(text="A 사이다를 드시겠습니까.")</p>

<p>        drinkCheck = 1</p>

<p>    if radio_selected =="B사이다는 1000원":</p>

<p>        label.config(text="B 사이다를 드시겠습니까.")</p>

<p>        drinkCheck = 2</p>

<p>    </p>

<p>    </p>

<p>labelframe=tkinter.LabelFrame(window, text="무엇을 드시겠습니까 %s" % drinkCheck, padx=10, pady=10, width = 900)</p>

<p>labelframe.pack(padx=10, pady=10)</p>

<p> </p>

<p>RadioVariety_1=tkinter.StringVar()</p>

<p>RadioVariety_1.set("미선택")</p>

<p> </p>

<p>drinkList = ["A사이다는 800원", "B사이다는 1000원"]</p>

<p>for sel in drinkList:</p>

<p>    aButton = tkinter.Radiobutton(labelframe, text=sel, value=sel, variable=RadioVariety_1, command=check)</p>

<p>    aButton.pack()</p>

<p>label=tkinter.Label(labelframe, text="")</p>

<p>label.pack()</p>

<p> </p>

<p>def CallBack(): # 함수</p>

<p>    if(name.get() == ""):</p>

<p>        msg = messagebox.showinfo( "", " 금액을 입력하세요 ")</p>

<p>        return</p>

<p>    if drinkCheck == 1:</p>

<p>        payVal = int(name.get()) - 800</p>

<p>        if payVal == 0:</p>

<p>            msg = messagebox.showinfo( "", " 맛있게 드십시오 ")</p>

<p>        if payVal > 0:</p>

<p>            msg = messagebox.showinfo( "", "거스름돈은 %s 입니다. 맛있게 드십시오 " % payVal)</p>

<p>        if payVal < 0:</p>

<p>            msg = messagebox.showinfo( "", "잔액이 부족합니다. ")</p>

<p>    if drinkCheck == 2:</p>

<p>        payVal = int(name.get()) - 1000</p>

<p>        if payVal == 0:</p>

<p>            msg = messagebox.showinfo( "", " 맛있게 드십시오 ")</p>

<p>        if payVal > 0:</p>

<p>            msg = messagebox.showinfo( "", "거스름돈은 %s 입니다. 맛있게 드십시오 " % payVal)</p>

<p>        if payVal < 0:</p>

<p>            msg = messagebox.showinfo( "", "잔액이 부족합니다. ")</p>

<p>    if drinkCheck == 0:</p>

<p>        msg = messagebox.showinfo( "", "음료를 선택하세요 %s" % drinkCheck)</p>

<p> </p>

<p>name = Entry(labelframe2)</p>

<p>name.grid(column=1, row=0)</p>

<p>labelframe2.pack(fill="both", expand = "yes")</p>

<p>left = Label(labelframe2, text="금액을 입력하세요")</p>

<p>left.grid(column=0, row=0)</p>

<p>B = Button(labelframe2, text = "확인", command = CallBack, bg="orange", fg="red", activebackground="blue")</p>

<p>B.grid(column=3, row=0)</p>

<p> </p>

<p>window.mainloop()</p>

<p>

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인