본문 바로가기
Python

변수 문제 풀이

by Nirah 2023. 1. 12.

1번

Linux 의 수업료가 500,000원이고 Windows 수업료는 400,000원이다.

9월 수강생이 Linux를 30명 수강하고 Windows는 20명 수강한다. 월 수업료 총액을 계산하는 프로그램을 작성하세요.

linuxCost=500000
windowsCost=400000

LinuxTO=30
WindowsTO=20

Total=(linuxCost*LinuxTO)+(windowsCost*WindowsTO)

print("9월 총 수업료 총액 : {:,}원".format(Total))

 

{:,} 포멧 : 금액에 , 찍어주는 포멧

 

2번

1번 문제에서 구한 수업료 총액에서 Linux과 Windows의 수업료가 각각 5%, 10% Discount한 경우에 손실액을 구하는 프로그램을 작성하세요.

dcLinuxPer=0.05
dcWindowsPer=0.1

lostLinux=linuxCost*dcLinuxPer*LinuxTO
lostWindows=windowsCost*dcWindowsPer*WindowsTO

lostTotal=int(lostLinux+lostWindows)

print("수업료 할인 후 총 손실액 : {:,}원".format(lostTotal))

 

3번

우리나라는 섭씨 온도를 사용하는 반면 미국과 유럽은 화씨 온도를 주로 사용합니다. 화씨 온도(F)를 섭씨 온도(C)로 변환할 때는 다음과 같은 공식을 사용합니다. 이 공식을 사용해 화씨 온도가 50일 때의 섭씨 온도를 계산해 보세요.

F = 50
C = (F-32)/1.8
print('{}ºF = {}ºC'.format(F,C))

 

4번

화면에 "Linux"를 10번 출력하는 프로그램을 작성하세요.

print("Linux"*10)

 

5번

s라는 변수에 'Linux is not Unix'라는 문자열이 바인딩돼 있다고 했을 때 문자열의 슬라이싱 기능과 연결하기를 이용해 s의 값을 'Unix is not Linux'으로 변경해 보세요.

s='Linux is not Unix'
s=s[13:]+' is not '+s[:5]
print(s)

 

리스트 슬라이싱

 

start는 시작부분 지정

stop은 끝부분 지정

step은 간격 지정

  • start를 입력하지 않으면 0을 입력한 것과 같습니다.
  • stop을 입력하지 않으면 리스트의 길이 (len(my_list))를 입력한 것과 같습니다. (list 끝까지라는 뜻)
  • step을 입력하지 않으면 1을 입력한 것과 같습니다.

 

예시

 

 

6번

x라는 변수에 'abcdef'라는 문자열이 바인딩돼 있다고 했을 때 x의 값을 'bcdefa'로 변경해 보세요.

x = 'abcdef'
x = x[1:]+x[:1]
print(x)

 

 

input()

사용자로부터 값을 입력 받아 처리하는 함수.

입력 받은 값의 데이터 타입은 str 으로 반환 된다.

input 함수는 숫자를 입력해도 문자열로 입력을 받기 때문에 숫자로 입력받고 싶으면,

input 함수를 정수로 바꿔주는 int, 실수로 바꿔주는 float 등의 함수로 감싸주면 된다.

a = input("첫번째 숫자를 입력해 주세요?") 
b = input("두번째 숫자를 입력해 주세요?") 
s = a + b
print("입력받은 두 수의 합은? ",s)

두 수의 합이 구해지지 않는다. str으로 처리했기 때문에 그냥 문자 10과 문자 20을 갖다 붙인결과가 나온다.

 

아래와 같이 int로 감싸서 정수처리를 한다.

a = int(input("첫번째 숫자를 입력해 주세요?")) # 입력 값을 int 형태로 저장
b = int(input("첫번째 숫자를 입력해 주세요?"))
s = a + b
print("입력받은 두 수의 합은? ",s)

 

 

반지름값을 입력 받아 원의 면적을 구하는 code를 작성하세요. (소수 셋째자리까지)

print('< 원의 면적 구하기 >')
radius = float(input("원의 반지름을 입력해주세요. \n: "))
area = 3.14 * (radius * 2)
print('원의 면적은 {:.3f} 입니다.'.format(area))

 

상품가격을 입력받아 부가세 10% 를 부가한 후의 상품가격을 출력하세요.

print('< 부가세 포함 가격 계산 >')
cost = int(input("상품 가격을 입력하세요 : "))
tax = cost+(cost*0.1)
print('부가세 포함 가격은 {:.0f}원 입니다'.format(tax))

 

상품가격, 할인율을 입력받아 최종 상품 가격을 출력하세요.

print('< 최종 상품 가격 계산 >')
cost = int(input("상품 가격을 입력하세요 : "))
dc = int(input("할인율을 입력하세요 : "))
dcCost = cost-(cost*(dc/100))
print('상품의 최종 가격은 {:.0f}원 입니다'.format(dcCost))

 

상품가격, 할인율입력 받고, 할인이 적용된 상품값에 부가세 10%를 적용한 최종 상품가격을 출력하세요.

print('< 최종 상품 가격 계산 2 >')
cost = int(input("상품 가격을 입력하세요 : "))
dc = int(input("할인율을 입력하세요 : "))
dcCost = cost-(cost*(dc/100))
taxCost = dcCost+(dcCost*0.1)
print('상품의 최종 가격은 {:.0f}원 입니다'.format(taxCost))

 

직장인의 연봉을 x 라 하고 연봉의 6%는 국민연금으로, 연봉의 9%는 건강보험으로, 연봉의 1%는 고용보험으로, 연봉의 8%는 퇴직연금으로 계산이 된다고 가정할 때, 월 실수령액은 얼마가 되는지 계산하는 프로그램을 작성하시오.

가능하면 국민연금, 건강보험, 고용보험, 퇴직연금 금액도 사용자가 알 수 있도록 하시오

x =int(input("연봉을 입력해주세요! (단위 만원):"))
kukmin = 0.06
gungang = 0.09
goyong = 0.01
tuezik = 0.08
month_total = x*(1-kukmin+gungang+goyong+tuezik)/12
print ("월 실수령액! : {:.0f} 만원 입니다." .format(month_total))
print ("제외된 국민연금 금액은 {:.0f}만원 이고," .format(x*kukmin/12))
print ("제외된 건강보험 금액은 {:.0f}만원 이고," .format(x*gungang/12))
print ("제외된 고용보험 금액은 {:.0f}만원 이고," .format(x*goyong/12))
print ("제외된 퇴직연금 금액은 {:.0f}만원 입니다." .format(x*tuezik/12))

 

겁나 많이도 떼가네