[python] while, if

May·2022년 6월 18일
0

python_기초

목록 보기
5/11

👰‍ while 반복문

→ 반복하기 위해 쓰임 ^-^
사람이 하기 싫은 반복적인 일을 컴터에게 시키쟈

구조 🔖

while 조건부분:   → 불린값(True, False)으로 계산되는 식
				   ex) x < 3, x == "가나다" 등
	수행부분		 → 반복적으로 수행하고 싶은 명령

실행과정 🔖
조건을 보고, 값이 True 이면 수행부분 실행.
수행부분 실행 후 다시 조건부분으로 이동.
조건부분이 False 면 while문에서 탈출!

👰‍ if 문

→ 만약 참이면 ~ / 그렇지 않으면 ~

구조 🔖

if 조건부분:   → 불린값(True, False)으로 계산되는 식
				ex) x < 3, x == "가나다" 등
	수행부분   → 조건이 참인경우 수행하고 싶은 명령

+ else (조건이 거짓인 경우 수행해라!)

+ if와 else를 함께 썼을 때 🔖

if 조건부분:   
	수행1   → 조건이 참인경우 수행하고 싶은 명령
else:
	수행2   → 조건이 거짓인 경우 수행

\+ elifelse + if
			 조건을 여러개 주고 싶을 때 사용!

🤬 활용문제 1 🤬

1988년 택이의 우승 상금 5000만원은 은행에 돈을 맡기는 게 나을까? 아니면 은마아파트를 사는 게 더 나을까?
2016년 기준으로 더 이득이 큰 것은 무엇일까?

year = 1989
PLUS_PERCENT = 0.12  # 이자율
plus_money = 0 #커지는 금액
EUNMA_APT = 1100000000
bank_money = 50000000


while year < 2017:
    plus_money = bank_money * PLUS_PERCENT
    bank_money += plus_money
    
    year += 1
    
# print(round(bank_money) - EUNMA_APT)

if bank_money > EUNMA_APT:
    print(f"{int(bank_money) - EUNMA_APT}원 차이로 동일 아저씨 말씀이 맞습니다.")
else:
    print(f"{EUNMA_APT - int(bank_money)}원 차이로 미란 아주머니 말씀이 맞습니다.")

매우 힘든 문제였다 처음으로 막히기 시작했던 문제...
변하지 않는 이자율과 2016년 기준 은마아파트 매매가는 상수로 정의하였고,
년도는 1989년부터 시작.. 1988년에 돈을 넣어뒀으면 1년 뒤부터 이자가 붙으니까 !!!!!!!!!!!
이것때문에 한참을 헤맸다

택아 그냥 은마아파트 사!!!!!!!!!!!!!!!!!!!!!!

그리고 while문 쓰면서 매번 빼먹는 💡변수 += 1 1 더해주는 연산... 💡
매번 무한루프에 빠지지....
앞으로 빼먹지 말자.

출력해줄 때 포맷팅 방법은 f-string 방식을 이용해봤다! 훨씬 깔끔해!

🤬 활용문제 2 🤬

피보나치 수열의 첫 50개 항을 차례대로 출력하는 프로그램 만들기

나... 진짜.... 피보나치 수열이 뭔지도 몰랐고.....
보면 볼수록 엥 🤔 했던 문제....
정말 풀기 힘들었다

i = 1
previous = 0  # 이전 항
current = 1  # 현재 항


while i < 51:
    print(current)  # 현재항 출력

    temp = previous     # 이전항을 temp 변수에 담아주고
    previous = current  # 이전항에 현재항을 담기
    current += temp     # 현재항 + 이전항 더해준 값을 현재항에 담기 
    
    i += 1
    

이때는 변수를 지금만큼... 지금도 그렇게 잘 사용하진 못하지만 지금만큼 사용하질 못했다
그래서 쪼금 속상했다 아 진짜 수학 머리가 없구나....
힌트도 전부 쓰고 여러번 읽으면서 이해하려고 했다
너무 어려웠다 너무....
이렇게 기초적인 것도 어려우면 어떡해 💦💦

힘내보자 🥐🥩🥨🧇 난 할 수 있어 🍑🍓🍇🍉🍕🍟

profile
ฅ˘◡˘ฅ

0개의 댓글