티스토리 뷰

반응형

조건에 따라 분기하기(if)

 

if 구문을 만족하면, 다음 문장을 실행

 

if 조건식:

  명령어1

  명렁어2

  명령어3

 

파이썬에서는 들여쓰기로 if가 포괄하는 부분을 정한다. C에서 괄호의 기능을 들여쓰기가 대신한다.

 

 

60이 넘으면 합격이 출력되고, 그 이하면 아무것도 실행되지 않는다.

 

 

 

if ~else

참이면 if문의 문장이, 그 외에는 else가 실행된다.

 

if ~ elif

if절을 하고, 이를 만족하지 않으면 새로운 조건 비교를 해내간다.

 

 

반복문

for: 반복 횟수가 정해져 있을 때

while: 반복 횟수가 정해져 있지 않을 때

 

for 제어변수 in 시퀀스:

  실행문

 

파이썬의 리스트로 반복 연산

 

 

파이썬의 문자열 반복 연산

range문을 쓰면 반복 횟수를 정할 수 있다. range(n)이면 시작이 0부터 n-1까지라는 것을 기억하자.

range는 시작범위와 끝도 지정할 수 있다.

for i in range(1:4):

 print(i)

 

이런식으로 하면 1부터 n-1까지, 즉 1부터 3까지 출력한다.

 

 

while문

while은 조건이 만족할 때만 그 반복문이 돈다. 

 

name=input('이름:')
while name!='q':
    name=input('이름: ')

이름이 q이지 않은 동안 수행되고, q가 입력되면 더 이상 반복 입력을 받지 않는다.

 

 

반복문 예제

id='id123'
pwd='pwd123'

while True:
    input_id =input('id:')
    input_pwd=input('pwd')
    if id==input_id and pwd==input_pwd:
        break
    if id!=input_id:
        print('아이디를 확인하세요')
    if pwd!=input_pwd:
        print('비밀번호를 확인하세요')

 

while true란 무한으로 반복해주는 반복문이다. 이럴 경우 무한으로 돌기에 반복문을 빠져나가게 해주는 방법이 있어야하는데, 이것이 'break'다. break를 하면 반복문에서 빠져나가는 기능을 해준다.

 

윗 문장에서는 id와 pwd가 입력받은 것과 같으면 반복문을 빠져나가고 그렇지 않다면 계속해서 문장을 받는다.

 

 

알고리즘 연습하기

1. up&down 숫자맞추기 게임

1~100 사이의 정답 숫자를 랜덤으로 하나 정해서 정답 숫자를 맞출 때까지 숫자를 입력받는 게임을 한다. 정답보다 작으면 'DOWN', 크면 'UP'을 출력하고 다시 숫자를 받는다.

(기회는 5번이며, 5회가 넘으면 횟수초과라는 메시지와 함께 정답을 알려준다. 정답을 맞추면 몇 번째에 맞추었는지를 출력한다.)

 

import random
num=random.randrange(1,101)
print(num)
cnt=0

while True:
    cnt+=1
    if cnt>5:
        print('횟수 초과:정답은:',num)
    answer=int(input('예상 숫자'))
    if answer==num:
        print('정답')
        print(cnt,'번만에 맞추었습니다.')
        break
    if answer<num:
        print('up')
    else:
        print('down')

 

 

2. 사칙연산 프로그램

두 수와 사칙연산기호(+, -, *, /)를 입력받아 연산 기호에 따라 연산 결과들을 작성하는 프로그램을 작성하시오

사칙연산기호가 아닌 경우 잘못입력하셨습니다를 출력

num1=int(input('숫자1'))
num2=int(input('숫자2:'))
op=input('연산기호:')

if op=='+':
    print(f'{num1}+{num2}={num1+num2}')
if op=='-':
    print(f'{num1}-{num2}={num1-num2}')
if op=='/':
    print(f'{num1}/{num2}={num1/num2}')
if op=='*':
    print(f'{num1}*{num2}={num1*num2}')
else:
    print('잘못 입력하셨습니다')

 

 

3. 할인된 금액 계산

물건 구매가를 입력받고, 금액에 따른 할인율을 계산하여 구매가, 할인율, 할인금액, 지불금액을 출력하시오

price = int(input('물건구매가:'))

if price>=100000:
    dc=10
elif price>=50000:
    dc=7
elif price>=10000:
    dc=5
else:
    dc=0

print(f'''
구매가:{price}
할인율:{dc}
할인금액:{price*(dc/100)}
지불금액:{price-price*(dc/100)}
'''
)
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함
반응형