파이썬 자판기 프로그램

파이썬 자판기 프로그램 예제 및 풀이 2023

이번 컨텐츠에서는 파이썬 자판기 프로그램 예제를 풀어보려고 합니다. 제가 운영하는 카페 블똑사에 한 회원분께서 질문을 올려주셨는데, 흥미로워서 공유해보겠습니다.

 

파이썬 자판기 프로그램 예제

자판기 프로그램 Outline

 

흔히 여러분들이 아시는 기능을 하는 프로그램을 구현하는 것입니다. 음료수의 종류가 여러 가지 있고, 그 중 선택을 하고 현금을 투입하면 해당 음료와 거스름돈이 나오는 구조입니다. 구체적인 예제는 다음과 같습니다.

  • 음료수를 선택하는 함수를 정의하시오: 음료수 입력 및 선택한 음료수 반환
  • 현금을 투입하는 함수를 정의하시오: 현금 입력 및 입력한 현금 반환
  • 선택한 음료수와 거스름돈을 내주는 함수를 정의하시오: 음료수와 현금을 인수로 처리, 거스름돈 계산, 선택한 음료수와 거스름돈 출력

그리고, 해당 프로그램 실행 결과는 다음과 같이 주어졌습니다.

자판기 프로그램 파이썬 결과값

문제를 살펴보면 사실 함수를 정의하지 않고도 구현이 가능합니다. 하지만 함수를 사용하라고 했으니, 함수를 정의하여 프로그램을 구현해 보도록 하겠습니다.

 

자판기 프로그램 예제 필수 개념: 함수

 

함수란 특정 입력값을 투입하면 결과값을 도출해주는 일종의 모듈입니다. 함수를 사용하는 이유는 반복적인 코드를 줄여주는 역할을 하기 때문입니다. 코드가 길어지면 실행 시간도 길어지고, 프로그램으로 만들었을 경우 용량을 많이 차지하게 됩니다. 또한, 프로그램 오류가 발생했을 때 어디에서 오류가 발생했는지 원인을 파악하기가 쉬워집니다.

 

블똑사 채널 확인방법

 

함수를 사용하는 방법

 

definition을 의미하는 def를 작성하고, 함수명과 함수에 투입할 변수의 명을 괄호 안에 넣어주시면 됩니다. 구체적인 코드는 다음과 같습니다.

Def 함수명(매개변수):

함수명은 임의로 지정할 수 있습니다. 또한 매개변수도 여러 개의 변수를 넣을 수 있습니다. 다만 해당 함수를 불러오기 위해서는 정의한 매개변수의 내용대로 변수를 투입시켜 주어야 합니다.

 

자판기 프로그램 예제 풀이 결과

 

음료수를 선택하는 함수 정의

 

  • 어떤 음료수를 선택할 것인지 선택을 받도록 input 함수를 사용했습니다. input함수는 기본적으로 str 형식으로 데이터를 받습니다.
  • 받은 데이터가 자판기 내의 음료수 종류와 일치하는지 확인하는 코드가 이어집니다. if~elif~else 구문을 통해서 선택한 음료와 일치하는 음료를 선택합니다.
  • 선택된 음료는 정수값으로 반환됩니다.

 

파이썬 자판기 프로그램 음료선택

 

현금을 입력받는 함수

 

  • Input 함수로 투입 현금 값을 받습니다. 다만 위에서 언급한대로 input 함수는 기본적으로 str로 받기 때문에, 정수형인 int로 바꾸어 줍니다.
  • 입력받은 현금값을 반환해줍니다. (return coin)

 

파이썬 자판기 프로그램 현금투입

 

거스름돈을 계산하는 함수

 

  • 두 개의 변수, 즉 선택한 커피에 따른 정수값과 내가 투입하고자 했던 금액값을 받습니다.
    만약 선택받은 커피의 코드가 1인 경우에는 투입 현금에서 500원을 차감한 금액을 나머지로 반환 합니다.
  • 다만 투입 금액이 500원보다 적은 경우에는 투입 현금이 부족하다는 결과를 도출합니다.
  • 마찬가지 구조로 콜라의 경우에도 투입 현금이 900원보다 적다면 구매가 불가능합니다. 다만 900원보다 적은 금액을 투입할 경우 현금이 부족하다는 것을 알려주기 위한 “00” 값을 반환하도록 했습니다.
  • 정상적으로 음료가 선택되었다면, 음료의 종류와 거스름돈의 정보를 리스트 형태로 반환합니다.

 

파이썬 자판기 프로그램 거스름돈 계산

 

실행 코드

 

  • 음료를 선택하는 함수를 실행합니다.
  • 현금을 투입하는 함수를 실행합니다.
  • 위 두 가지 함수에서 각각 얻은 결과값을 거스름돈을 계산하는 함수에 보내어 실행합니다.
  • 결과값이 00인 경우 현금이 부족하다는 것을 알려주고, 그 외의 경우에는 리스트 형태로 반환된 값을 문자열에 맞게 배치하여 출력합니다.

 

파이썬 자판기 프로그램 실행코드

 

최종코드

 

위 모든 과정을 종합한 코드는 다음과 같습니다.

 

최종코드

 

이렇게 이번 컨텐츠에서는 자판기 프로그램을 파이썬으로 만들어보는 예제를 풀이해 봤습니다. 파이썬 마스터 블로그엔 유익한 정보들이 많습니다. 같이 둘러보시고, “파이썬마스터” 카카오톡 채널도 둘러봐 주시기 바랍니다.^^

 

블똑사 채널 확인방법

 

같이 보면 도움이 될 칼럼들

 

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

yasbetir1.xyz winbet-bet.com 1kickbet1.com 1xbet-1xir.com 1xbet-ir1.xyz hattrickbet1.com 4shart.com manotobet.net hazaratir.com takbetir2.xyz 1betcart.com betforwardperir.xyz betforward-shart.com betforward.com.co betforward.help betfa.cam 2betboro.com 1xbete.org 1xbett.bet romabet.cam megapari.cam mahbet.cam
noe som gir en fantastisk blow job fanget
bure ngono tovuti ngono na Interracial Porn Video Kwa Kura ya kutomba Horny
ฟรีผู้หญิงออกเดทออนไลน์เพื่อร่วมเพศทางปากและมีเพศสัมพันธ์ทางปากเช่นเดียวกับการอมลึกคอหอย
trang web hẹn hò trực tuyến nơi người đàn ông trưởng thành đụ cô gái còn trinh trong âm hộ ướt át và chặt chẽ của cô ấy
enjoy the most exciting amateur blowjob deepthroat with balls licking and rimming
evden eve nakliyat ücretleri
pornhd.mobi
melbet megapari megapari 1win 1win
eşya depolama uluslararası evden eve nakliyat

istanbul izmir şehirler arası evden eve nakliyat

istanbul izmir evden eve nakliyat

istanbul bodrum evden eve nakliyat

istanbul fetihye evden eve nakliyat

bodrum evden eve nakliyat

istanbul izmir şehirler arası evden eve nakliyat

istanbul izmir evden eve nakliyat

istanbul bodrum evden eve nakliyat

istanbul fetihye evden eve nakliyat

bodrum evden eve nakliyat

uluslararası eşya taşımacılığı uluslararası eşya taşımacılığı eşya depolama yurtdışı kargo uluslararası evden eve nakliyat istanbul ev depolama ev eşyası depolama uluslararası ev taşıma uluslararası evden eve nakliyat uluslararası nakliyat
escort bursa escort gorukle
bursa escort gorukle escort
Antalya escort Antalya escort Belek escort
deneme bonusu deneme bonusu veren siteler
İstanbul İzmir nakliyat İstanbul İzmir evden eve nakliyat ümraniye evden eve nakliyat ümraniye nakliyat kağıthane evden eve nakliyat kağıthane nakliyat çekmeköy nakliyat çekmeköy evden eve nakliyat
deneme bonusu veren siteler deneme bonusu
1win 1win 1win melbet megapari megapari
Ankara Escort
ankara escort
akü servis akumyolda.comakücü akumyoldaakumyolda.comakumyolda.com akücü
ingilizceturkce.gen.tr
TranslateDict.com is a online platform that specializes in free translation, helping visitors to translate to English from a wide variety of languages.translatedicttranslatedict.com
Free Spanish to English translation services are available at spanishenglish.com to help you understand and communicate in both languages. spanishenglish.com
betforwardperir.xyz betforward-shart.com betforward.com.co 1xbete.org 1xbet-ir1.xyz 1xbet-1xir.com takbetir2.xyz yasbetir1.xyz 1betcart.com 1kickbet1.com 4shart.com hattrickbet1.com hazaratir.com winbet-bet.com manotobet.net betfa.cam 2betboro.com
kazansana
Şehirler arası nakliyat
unblocked games io games
evden eve nakliyat fiyatları İstanbul evden eve nakliyat
evden eve nakliyat nakliye şirketi
Sarıyer Evden Eve Nakliyat Şişli Evden Eve Nakliyat İstanbul İzmir Nakliyat, İstanbul İzmir Evden Eve Nakliyat İstanbul İzmir Evden Eve Nakliyat Kağıthane Evden Eve Nakliyat Ümraniye Evden Eve Nakliyat Çekmeköy Evden Eve Nakliyat
https://www.fapjunk.com https://pornohit.net
https://www.fapjunk.com https://pornohit.net
Başakşehir Evden Eve Nakliyat Şişli Evden Eve Nakliyat Göztepe Evden Eve Nakliyat Bakırköy Evden Eve Nakliyat Sancaktepe Evden Eve Nakliyat Mecidiyeköy Evden Eve Nakliyat Fatih Evden Eve Nakliyat Bahçeşehir Evden Eve Nakliyat Esenler Evden Eve Nakliyat İstanbul Evden Eve Nakliyat
Cialis 20 mg Cialis Yorum
london escorts
evden eve nakliyat istanbul
fat girl fucked
teen virgin ass fucked
cadouri pentru nasi de nunta
discreet dating websites
istanbul evden eve nakliyat Eşya depolama Ev depolama
evden eve nakliyat
İzmir Şehirler Arası Nakliyat Manisa Şehirler Arası Nakliyat Çanakkale Şehirler Arası Nakliyat Balıkesir Şehirler Arası Nakliyat Şehirler Arası Nakliyat
Spanish to English translation is the process of converting written or spoken content from the Spanish language into the English language. With Spanish being one of the most widely spoken languages in the world, the need for accurate and efficient translation services is essential. Spanish to English translation plays a crucial role in various domains, including business, education, travel, literature, and more. Skilled translators proficient in both Spanish and English are required to ensure accurate and culturally appropriate translations. They must possess a deep understanding of both languages' grammar, syntax, idioms, and cultural nuances to convey the original meaning and intent of the source content effectively. Quality Spanish to English translation services help bridge the language barrier and facilitate effective communication between Spanish-speaking individuals and English-speaking audiences.spanishenglish.com
İngilizce Türkçe çeviri siteleri kullanıcıların metinleri veya belgeleri yükleyerek anında tercüme yapmalarını sağlayan platformlardır Genellikle temel çeviri ihtiyaçlarını karşılamak için kullanılır ve geniş bir kullanıcı kitlesine hizmet verir. Ancak, tam anlamıyla doğru ve dilbilgisine uygun çeviriler için profesyonel çeviri hizmetlerine başvurmak daha güvenilir olabilir. Bu siteler, hızlı ve pratik bir çözüm sunarken, özellikle hassas veya teknik metinlerin çevirisinde profesyonel bir çevirmenin becerileri ve deneyimi gerekebilir.ingilizceturkce.gen.tr
Spanish to English translation involves accurately conveying not only the words but also the meaning, tone, and cultural nuances of the original text. Skilled translators proficient in both Spanish and English are essential to ensure accurate and effective translations. They must have a deep understanding of both languages' grammar, vocabulary, and idiomatic expressions to deliver high-quality translations. Spanish to English translation is widely used in various fields, including business, literature, media, and international communication. It plays a vital role in enabling cross-cultural understanding and facilitating global interactions.spanishenglish.net
error: Content is protected !!

자동포스팅 홍보 배너