생선판매 while 구문 질문
fish = 5
while True:
num = int(input("고등어 몇 개를 구매하실 건가요?"))
if fish >= num:
fish = fish - num
print(f'고등어 {fish}개 남았습니다.')
if fish == 0:
print('완판되었습니다.')
break
else:
print(f'손님, 죄송하지만 구매할 수 있는 고등어 {fish}개 남았습니다.')
fish = 0
break
위 예제에서 이 코드대로 실행이 된다면 5마리일 때 6마리를 구매하겠다고 하면 바로 남은 생선이 0마리가 되어버리는 것 아닌가요?
else:
print(f'손님, 죄송하지만 구매할 수 있는 고등어 {fish}개 남았습니다.')
이렇게 되어야 완판 될때까지 판매를 하는 것 아닌가요?
답변 1
0
안녕하세요 승철님! 좋은 지적 감사드립니다!
승철님께서 질문주신대로 fish=0을 주게 된다면 판매한적이 없는데 남은 생선이 0마리가 된 뒤 종료가 되어버립니다.ㅠㅠ
따라서 남아있는 생선보다 많은 생선 갯수를 입력했을 때
1. 다시 while문으로 돌아가서 몇개를 구매할 건지 질문을 한다.

해당 강의 뒷분에서 배우는 continue문을 써서 다시 while문으로 돌아가게 하면 됩니다!
2. 남아있는 생선을 모두 판 뒤 끝낸다.

6개를 구매한다고 해도 5개까지만 구매할 수 있으므로 5개를 모두 구매하고 끝내는 방법입니다.
혼돈을 드려 죄송하며 추후 재녹화시 수정하도록 하겠습니다 :)
또 다른 의문사항이나 질문이 있으시면 언제든 질문게시판에 남겨주세요!
감사합니다!
설치 및 설정 가이드 노션 자료는 없나요 ?
0
13
2
실기시험 제출관련
0
106
2
6.20 작업형 2 과적합
0
122
3
install까지 설치 하였는데 start 가안됩니다.
1
20
1
8분54초 테이블 내용 문의
0
17
1
코딩팡 장업형2 베이스 라인 인코딩 종류 질문
0
35
2
multi_tool_agent.py 에서 arxiv tool 에러
0
15
1
로지스틱회귀, 회귀
0
44
2
가상 환경과 차이 도커 질문
0
22
1
자료 다운로드 위치 확인 부탁드립니다.
0
12
1
회귀 문제를 풀때 질문입니다.
0
48
1
불균형 처리 후 성능이 더 낮아졌다면,
0
56
2
실기 체험 제2유형 에러 문의
0
55
1
LIGHTGBM 으로 하면 pred값이 소수점 6자리까지 나오는게 맞나요
0
43
2
소수점 출력 질문입니다.
0
294
1
알고리즘 강의
0
239
0
얕은물 주피터 노트북
0
253
0
깊은물 셋 강의 영상 전반부가 삭제되었네요.
0
256
1
얕은물_인쇄용p169중첩함수 질문
0
301
1
홈페이지 링크 부탁드립니다.
0
287
1
input 함수 파일 문의
0
362
1
코드 다운로드 파일 주소 확인 요청
0
301
1
in 구문에서 튜플 관련 질문
1
255
1
비트연산자 2의 보수
1
967
3





