[Python] 기초 문제 풀이 - 연산자, 조건문, 반복문

박미영·2023년 3월 7일
0

📌연산자

📍예제1

money = int(input('금액 입력: '))
rate = float(input('이율 입력: '))
term = int(input('기간 입력: '))

target_money = money

for i in range(term):
    target_money += target_money * rate * 0.01

target_money_formated = format(int(target_money), ',')

print('-'*30)
print('이율: {}%'.format(rate))
print('원금: {}원'.format(format(money,',')))
print('{}년 후 금액: {}원'.format(term, target_money_formated))

  • 출력결과



💡숫자 3자리마다 콤마 넣는 방법

# format
format(num, ',') 
'{0:,}'.format(num)

# f-string
f'{num:,}'

📌조건문

📍예제1

import random

com_num = random.randint(1, 2)
user_select = int(input('홀/짝 선택: 1.홀\t 2.짝'))

if com_num == 1 and user_select == 1:
    print('빙고!! 홀수!!')
elif com_num == 2 and user_select == 2:
    print('빙고!! 짝수!!')
elif com_num == 1 and user_select == 2:
    print('실패!! 홀수!!')
elif com_num == 2 and user_select == 1:
    print('실패!! 짝수!!')

  • 출력결과




📌반복문

📍예제1

num = int(input('정수 입력: '))
addsum, oddsum, evensum, factorial = 0, 0 ,0, 1
for i in range(1, num+1):
    addsum += i
    factorial *= i
    if i % 2 == 0:
        evensum += i
    else:
        oddsum += i

print('합 결과 :', format(addsum, ','))
print('홀수 합 결과 :', format(oddsum, ','))
print('짝수 합 결과 :', format(evensum, ','))
print('팩토리얼 결과 : ', format(factorial, ','))

  • 출력결과



📍예제2

집 앞 버스 정류장에서 학교까지 가는 버스 A, B, C 의 운행정보가 다음과 같을 때, 2대 이상의 버스가 정차하는 시간대를 출력해보자

busA, busB, busC = 15, 13, 8

totalMin = 60 * 17
for i in range(totalMin+1):
    if i < 20 or i > (totalMin - 60): # a,b만 운향
        if i % busA == 0 and i % busB == 0:
            print('busA와 busB 동시 정차!!', end='')
            hour = 6 + i // 60
            min = i % 60
            print('\t{}:{}'.format(hour, min))
    else:
        if i % busA == 0 and i % busB == 0:
            print('busA와 busB 동시 정차!!', end='')
            hour = 6 + i // 60
            min = i % 60
            print('\t{}:{}'.format(hour, min))

        elif i % busA == 0 and i % busC == 0:
            print('busA와 busC 동시 정차!!', end='')
            hour = 6 + i // 60
            min = i % 60
            print('\t{}:{}'.format(hour, min))

        elif i % busB == 0 and i % busC == 0:
            print('busB와 busC 동시 정차!!', end='')
            hour = 6 + i // 60
            min = i % 60
            print('\t{}:{}'.format(hour, min))

  • 출력결과


느낀 😊

새로 알게 된 내용이나 노트가 필요하다고 생각되는 내용을 블로그에 작성 중이다.
아직 많은 라이브러리, 문법을 배우지 않아 문제를 푸는 방법이 다소 거칠(?)지만 기초를 차근차근 알아가는 느낌 :)
지금 진도에서는 리스트를 배우지 않아 문제를 풀 때 배우지 않은 문법을 사용해도 될까 고민을 하고 있지만 그냥 강사님이 푸는 방법대로 작성해 보는 중 생각보다 빠른 진도로 며칠 내에 더 많은 내용을 배울 듯하다.
비전공자들은 이 많은 내용을 다 이해하면서 하실 수 있을까???
나중에 내가 배운 적 없는 파트 이해하려면 정말 열심히 따라가야 할 듯,,,
보통 변수 포함된 출력문을 출력할 때 f-string을 많이 사용해서 format 사용 방법은 거의 모르는 바와 같았는데 강사님이 format을 자주 사용하셔서 익숙해지고 있다.


"이 글은 제로베이스 데이터 취업 스쿨 강의 자료 일부를 발췌한 내용이 포함되어 있습니다."

0개의 댓글