본문 바로가기

프로그램/Python 1000제332

Python 8제] 로또 당첨 등수를 구하는 프로그램을 작성하시오. 문제] 반복해서 자연수를 입력 받아 로또번호코드를 생성하고자 한다. 4가 입력되면 로또번호코드에 추가하지 않고 무시하고, 7이 입력되면 로또번호코드 생성을 종료하고 최종 결과를 출력한다. 단, 로또 번호의 자릿수에는 제한이 없으며, 로또번호코드가 11의 배수이면 1등, 7의 배수이면 2등이다. [입력 예시 1] 1 2 1 7 [출력 예시 1] 축하합니다. 1등입니다. [입력 예시 2] 6 4 1 0 7 [출력 예시 2] 축하합니다. 2등입니다. [입력 예시 3] 5 9 8 0 6 5 7 [출력 예시 3] 아쉽습니다. 다음 기회에... 참고풀이] #7이 입력될때까지 값을 더한다. Sum=0 while True: n=int(input()) if n==4: continue Sum+=n if n==7: brea.. 2021. 8. 1.
Python 7제] 2019년 한국정보올림피아드 1차대회 초등부 1번 - 막대기 문제] [유형3] 1번 - 막대기(100점) 모든 언어에 대해 시간 제한 1초, 메모리 제한 512MB입니다. 아래 그림처럼 높이만 다르고 (같은 높이의 막대기가 있을 수 있음) 모양이 같은 막대기를 일렬로 세운 후, 왼쪽부터 차례로 번호를 붙인다. 각 막대기의 높이는 그림에서 보인 것처럼 순서대로 6, 9, 7, 6, 4, 6 이다. 일렬로 세워진 막대기를 오른쪽에서 보면 보이는 막대기가 있고 보이지 않는 막대기가 있다. 즉, 지금 보이는 막대기보다 뒤에 있고 높이가 높은 것이 보이게 된다. 예를 들어, 그림과 같은 경우엔 3개(6번, 3번, 2번)의 막대기가 보인다. N개의 막대기에 대한 높이 정보가 주어질 때, 오른쪽에서 보아서 몇 개가 보이는 지를 알아내는 프로그램을 작성하려고 한다. 입력형식 표.. 2021. 7. 12.
Python 6제] 컴퓨터와 게임어가 상자안에 있는 그림과 숫자를 하나씩 꺼내어 비교하여 결과를 출력하는 프로그램을 작성하시오. 문제] 컴퓨터와 게임어가 상자 안에 있는 그림과 숫자를 하나씩 꺼내어 비교하여 결과를 출력하는 프로그램을 작성하시오. 빨간색 하트가 그려진 공을 꺼내면 공의 숫자*2의 점수를 받는다. 빨간색 클로버가 그려진 공을 꺼내면 0점을 받는다. 초록색 하트가 그려진 공을 꺼내면 공의 숫자-1의 점수를 받는다. 초록색 클로버가 그려진 공을 꺼내면 공의 숫자+2의 점수를 받는다. 점수가 높으면 이기는 게임의 결과를 출력하시오. 게임어는 색깔을 입력할 수 있고 그림과 숫자는 임의의 값으로 받는다. 입력 예시1] 'RED', 'GREEN' 중 원하는 색을 입력하세요 : red 출력 예시1] Player : 0, Computer : 1 Player Lose, Computer Win 입력 예시2] 'RED', 'GREEN'.. 2021. 7. 1.
Python 5제] 3제의 문제를 아래와 같이 나타내는 윈도우 프로그램을 작성하시오. 참고풀이 결과] 초기화면) 음수입력 예) 입력예시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 el.. 2021. 6. 30.
Python 4제] 3제의 양의 정수입력 받는 부분을 사용자 함수로 만들어 프로그램을 작성하시오. 참고풀이] #양의 정수를 입력받는 함수를 만든다. def iJungSu(Str): while True: n=int(input(Str+"정수를 입력하시오 : ")) if n>=0: break print("0이상의 정수를 입력하세요.") print("다시 입력하세요...") return n; n1=iJungSu("첫번째 ") n2=iJungSu("두번째 ") n3=iJungSu("세번째 ") #최대값과 최소값을 구한다. Max=max(n1,n2,n3) Min=min(n1,n2,n3) #최대값을 최소값으로 나눈 나머지가 10보다 크면 "Big", 10보다 작으면 "Small", #10이면 "Same"을 출력하기. print("Big" if Min%Max>10 else ("Small" if Min%Max 2021. 6. 29.
Python 3제] 양의 정수 세개를 입력받아 문제와 같이 출력하는 프로그램을 작성하시오. 문제] 변수 n1, n2, n3에 양의 정수 값을 입력 받고, 최소값과 최대값을 구한다. 최대값을 최소값으로 나눈 나머지가 10보다 크면 "Big" , 10이면 "Same", 10보다 작으면 "Small" 을 출력하는 프로그램을 작성하시오. [입력 예시 1] 첫번째 정수를 입력하시오 : -6 0이상의 전수를 입력하세요. 다시 입력하세요... 첫번째 정수를 입력하시오 : 3 두번째 정수를 입력하시오 : -9 0이상의 전수를 입력하세요. 다시 입력하세요... 두번째 정수를 입력하시오 : 12 세번째 정수를 입력하시오 : -20 0이상의 전수를 입력하세요. 다시 입력하세요... 세번째 정수를 입력하시오 : 20 [출력 예시 1] Small [입력 예시 2] 첫번째 정수를 입력하시오 : 13 두번째 정수를 입력.. 2021. 6. 29.
Python 2제] 초값을 입력받아 일, 시, 분, 초로 나누어 출력하는 프로그램을 작성하시오. 입력예시1] 초를 입력하시오 : 12000 출력예시1] 입력한 12000초는 1일 9시 20분 0초입니다. 입력예시2] 초를 입력하시오 : 123456 출력예시2] 입력한 123456초는 1일 10시 17분 36초입니다. 참고풀이] #초를 입력받는다. Second=int(input("초를 입력하시오 : ")) #1일을 초로 구한다. Sec=24*60*60 #시간을 초로 구한다. Si=60*60 #분을 초로 구한다. Bun=60 print("입력한 %d초는 "%Second, end="") #입력한 초를 일수로 구한다. days=int(Second//Sec) #입력한 초를 일수를 빼고 시수를 구한다. Second%=Sec hours=int(Second//Si) #입력한 초를 일수, 시수를 빼고 분을 구한다... 2021. 6. 24.
Python 1제] 구매 금액을 입력 받으면 30%할인된 금액과 구매금액을 출력하는 프로그램을 작성하시오.(단, 소수점은 버리시오) 입력예시1] 구매금액을 입력하시오 : 49000 출력예시1] 구 매 한 금액 : 49000 30%할인한 금액 : 34300 입력예시2] 구매금액을 입력하시오 : 64000 출력예시2] 구 매 한 금액 : 64000 30%할인한 금액 : 44800 참고풀이] #구매 금액을 입력받는다. total=int(input("구매금액을 입력하시오 : ")) #30%할인한 금액을 구하고 소수점은 버린다. discount=int(total*0.3) #구매금액과 실제 구매한 금액을 출력한다. print("구 매 한 금액 : ", total,sep='') print("30%할인한 금액 : ",total-discount,sep='') 참고풀이 결과] 대한민국의 아름다운 영토, 독도 2021. 6. 24.
반응형