참고풀이 결과]
초기화면)
음수입력 예)
입력예시1)
입력예시 2)
입력예시 3)
▶ End 버튼을 클릭하면 윈도우 창을 닫으며 작업을 끝낸다.
참고풀이]
from tkinter import *
from tkinter import messagebox
#최대값으로 최소값을 나눈 나머지가 10보다 크면 "Big", 10보다 작으면 "Small",
#10이면 "Same"을 출력하는 메세지박스를 출력함수를 만든다.
def BSS_Show():
n1=int(ent1.get())
n2=int(ent2.get())
n3=int(ent3.get())
if n1>=0 and n2>=0 and n3>=0:
Max=max(n1,n2,n3)
Min=min(n1,n2,n3)
Result="Big" if Min%Max>10 else ("Small" if Min%Max<10 else "Same")
messagebox.showinfo("결과 출력",Result)
else:
messagebox.showinfo("에러메세지","0이상의 정수를 입력하세요.\n다시 입력하세요...")
ent1.delete(0,END)
ent2.delete(0,END)
ent3.delete(0,END)
ent1.focus()
#창닫기 함수를 만든다.
def WinEnd():
win.destroy()
#main부분
win=Tk()
#윈도우창의 크기와 위치를 정한다.
win.geometry("260x150+500+400")
#윈도우창의 크기조절을 할 수 없도록 한다.
win.resizable(0,0)
#첫번째 정수를 입력받을 레이블과 텍스트박스를 만든다.
lbl1=Label(win,text="첫번째 정수를 입력하시오 : ",width=20)
lbl1.grid(row=0,column=0,padx=10,pady=5)
ent1=Entry(win,width=10)
ent1.grid(row=0,column=1)
#첫번째 정수를 입력받을 레이블과 텍스트박스를 만든다.
lbl2=Label(win,text="두번째 정수를 입력하시오 : ",width=20)
lbl2.grid(row=1,column=0,padx=10,pady=5)
ent2=Entry(win,width=10)
ent2.grid(row=1,column=1)
#첫번째 정수를 입력받을 레이블과 텍스트박스를 만든다.
lbl3=Label(win,text="세번째 정수를 입력하시오 : ",width=20)
lbl3.grid(row=2,column=0,padx=10,pady=5)
ent3=Entry(win,width=10)
ent3.grid(row=2,column=1)
btn1=Button(win,text="결과보기", width=10, command=BSS_Show)
btn1.grid(row=3,column=0,pady=10)
btn2=Button(win,text="End", width=10, command=WinEnd)
btn2.grid(row=3,column=1,pady=10)
win.mainloop()
대한민국의 아름다운 영토, 독도의 가을
'프로그램 > Python 1000제' 카테고리의 다른 글
Python 7제] 2019년 한국정보올림피아드 1차대회 초등부 1번 - 막대기 (0) | 2021.07.12 |
---|---|
Python 6제] 컴퓨터와 게임어가 상자안에 있는 그림과 숫자를 하나씩 꺼내어 비교하여 결과를 출력하는 프로그램을 작성하시오. (0) | 2021.07.01 |
Python 4제] 3제의 양의 정수입력 받는 부분을 사용자 함수로 만들어 프로그램을 작성하시오. (0) | 2021.06.29 |
Python 3제] 양의 정수 세개를 입력받아 문제와 같이 출력하는 프로그램을 작성하시오. (0) | 2021.06.29 |
Python 2제] 초값을 입력받아 일, 시, 분, 초로 나누어 출력하는 프로그램을 작성하시오. (0) | 2021.06.24 |
댓글