파이썬 코딩 문제인데 어떻게 해야할까요?ㅜㅜ

조회수 156회

과일 가게에서는 배, 자몽, 메론, 감을 판매하고 있으며 각 과일의 재고량과 단가를 사전 fruit = {'배' : [2, 1000], '자몽' : [1, 2000], ' 메론' : [1, 8000], '감' : [6, 800]}에 저장. 다음과 같이 결과를 출력 하는 script 작성할 것
① 과일 이름을 입력 받아 판매하는 과일인 경우 재고에서 하나 뺌
② 과일 당 재고가 5개는 되도록 사전에서 재고 정보와 단가를 읽어 들 여 5개 미만인 경우는 구입하도록 함

출력

먹고 싶은 과일은? : 자두
자두 준비되어 있지 않습니다
각 과일 당 최소 5개는 되도록 구입합니다
구입에 필요한 총 금액은 : 43000 원 입니다

먹고 싶은 과일은? : 메론
메론 맛있게 드세요
각 과일 당 최소 5개는 되도록 구입합니다
구입에 필요한 총 금액은 : 51000 원 입니다

어떻게 해야하는지만 좀 알려주실수 있나요

  • 누가 만든 문제인지 너무 못만들었네요 엽토군 2019.5.10 17:54

2 답변

  • 필요하신 것은 일상적 행동 요령을 프로그래밍적으로 전환하는 부분인 것 같습니다. 됐고, 우리가 평소에 물건을 팔 때 어떻게 하던가요?

    1. 맨 처음에는 이런 표가 그려진 종이를 받겠지요. (이게 "사전"에 해당함)

    |과일명|판매 가능한 횟수|단가|
    |-----|--------------|---|
    |배   |2             |1000|
    |자몽  |1            |2000|
    |메론  |1            |8000|
    |감   |6             |800|
    

    여러분이 알고 있는 건 이게 다입니다. 이제 고객을 기다려야 합니다. 앗! 너무 무섭군요.

    2. 고객이 찾아올 때마다 "먹고 싶은 과일은?"이라고 물어보고 고객의 답을 기다립니다. 그러면 고객은 "메론", "자두" 와 같이 먹고 싶은 과일을 답합니다. 앗! 초면에 반말이나 하고 아주 버릇이 없군요. (이게 '입력 변수 저장'에 해당함)

    3. 답으로 들은 과일 이름이 "과일명" 밑에 있는지 찾아봅니다. 아예 이름이 없거나, 과일 이름은 있는데 그 옆의 '판매 가능한 횟수' 숫자가 0이라면 "(과일명) 준비되어 있지 않습니다" 라고 답하고 끝냅니다. (여기서 '사전 내용 탐색'이 일어남, 문제에서 "재고량"이라 한 값은 아무리 읽어봐도 '판매 가능한 횟수'를 의도한 것이라 보입니다.)

    4. 답으로 들은 과일 이름이 표에 있고, 그 옆의 '판매 가능 횟수'도 0보다 크다면 "(과일명) 맛있게 드세요"라고 한 다음, 그 과일을 팔려면 최소 얼마를 받아야 하는지 막 계산합니다. 앗! 최소 5개 이상 팔아야 하니 1개당 가격에 5를 곱해서 알려주면 되겠군요. (여기서 기초적 연산 및 결과 출력이 필요함)

    5. 펜을 들어, 표에서 그 과일의 판매 가능한 횟수를 찾아, 1을 뺀 숫자로 고쳐 적어 주겠지요. (이게 자료 수정 저장에 해당함, 문제에서는 "5개 미만인 경우 구입하도록함"이라고 했는데 이건 뭘 어쩌라는 건지 모르겠어서 무시합니다.)


    파이썬 기초를 배우셨다면 여기서부터는 '아 이건 파이썬으로 대충 어떡하면 되겠다' 하는 생각이 나실 겁니다. 안 나신다면, 그건 파이썬을 안 배우신 겁니다.

    할 수 있습니다. 시도해 보세요.

  • 감이 안오신다면..

    python의 dictionary와 사용자 입력 처리 등에 대한 이해가 제대로 되지 않으신것 같습니다.

    프로그래밍은...많이 보고 많이 해보고 많이 틀려보고 자기가 만들고 싶은걸 만들때 실력이 늡니다....

    첫 번째 답변하신 분이 잘 답변해 주셨네요~

    저걸 보시고 코드를 구현해 보시면 될 것 같습니다.

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.