본문 바로가기
#개인연구 및 공부#/[python]

(2020.10.29)파이썬 300제 문제풀기 [No.011 - 020] - 변수

by 착한해커 2020. 10. 29.

파이썬 300제[No.011 - 020] - 변수

파이썬 뿐만 아니라 모든 프로그래밍 언어에서 가장 중요하고 기본인 변수활용에 대한 문제풀기

 

 

 

No.011 변수 사용하기

문제) 삼성전자라는 변수로 50,000원을 바인딩해보세요. 삼성전자 주식 10주를 보유하고 있을 때 총 평가금액을 출력하세요.

 

입력) 영어로 변수명을 지정한다. 한글로 변수명일 지어도 되지만 모든 개발자가 영어로 변수를 지으니 함께 따라간다. 변수에 50000 값을 지정하고 10주를 보유하고 있으니 *(곱하기) 연산자를 사용하여 변수 * 10을 해주고 출력한다.

 

samsung_price = 50000
total_sam_price = samsung_price * 10
print(total_sam_price)

 

출력)

500000

 

 

No.012 변수 사용하기

문제) 다음 표는 삼성전자의 일부 투자정보입니다. 변수를 사용해서 시가총액, 현재가, PER 등을 바인딩해보세요.

항목값

시가총액 298조
현재가 50,000원
PER 15.79

 

입력) 변수명은 한글로도 작성이 가능하지만 영어로 쓰는 것이 통상적인 관례이므로 영어로 변수명을 만들고

각 변수에 맞는 값으로 입력받는다. 각 변수를 print()함수 3번써서 출력할 수도 있지만 코드 상 비효율 적이므로, print 함수 하나에 모든 변수 입력값을 대입시키고 sep 옵션으로 각 변수 값마다 개행을 주어 3줄로 나누어 출력되도록 했음

market_cap = 298000000000000
presentprice = 5000
PER = 15.79
print(market_cap, presentprice, PER, sep="\n")

 

출력)

298000000000000
5000
15.79

 

 

 

No.013 문자열 출력

문제) 변수 s와 t에는 각각 문자열이 바인딩 되어있습니다.

s = "hello"

t = "python"

두 변수를 이용하여 아래와 같이 출력해보세요.

실행 예: hello! python

 

입력)  2가지 방법이 있다. +연산자를 활용한 방법과 sep 옵션을 활용한 방법이다. 아래 코드의 주석 내용 참조

s = "hello"
t = "python"

print(s+"!",t) # !를 ""로 감싸주어 문자처리 후 +연산자로 연결
print(s, " "+t, sep="!") # sep 옵션으로 !를 변수사이에 포함시켜주고 " "로 공백과 +연산자를 활용하여 t변수와 연결

 

출력)

hello! python
hello! python

 

 

 

No.014 파이썬을 이용한 값 계산

문제) 아래 코드의 실행 결과를 예상해보세요.

        2 + 2 * 3 

 

입력) 파이썬에서는 +, -, *, /, //(나눗셈 몫), %(나눗셈 나머지) 등의 사칙연산자를 사용할 수 있으며 몇 개 연산자는 int(정수) 뿐아니라 float, string 등의 타입에도 사용하여 문자열끼리 붙이고, 빼고를 할 수 있다.

( )를 활용하여 우선 연산도 가능하다

total1 = 2 + 2 * 3
total2 = (2 + 2) * 3
print(total1, total2, sep="\n")

 

출력)

8
12

 

 

 

No.015 type 함수

문제) type() 함수는 데이터 타입을 판별합니다. 변수 a에는 128 숫자가 바인딩돼 있어 type 함수가 int (정수)형임을 알려줍니다.

아래 변수에 바인딩된 값의 타입을 판별해보세요.

a = "132"

 

입력) a변수를 type() 함수에 ()안에 입력하면 type 함수의 결과 값이 print()에 의해 출력된다. a변수에 있는 숫자는 int(정수)가 아닌 string(문자열)로 인식된다. 왜냐하면 ""로 묶여 있기 때문이다. b변수에 있는 숫자는 int 형으로 인식된다.

a = "132"
b = 132
print(type(a))
print(type(b))

 

출력)

<class 'str'>
<class 'int'>

 

 

 

No.016 문자열을 정수로 판단

문제) 문자열 "720"를 정수형으로 변환해보세요.

num_str = "720"

 

입력) 모양은 숫자더라도 ""사이에 감싸져있으므로 문자열이다. 정수형 변환을 위해서는 "720"이 변수 num_str에 있으므로 정수변환을 위해 int()로 num_str을 감싸주고 출력하면 int 타입으로 변경되어 출력된다.

num_str = "720" # ""사이에 있으므로 720은 string 타입
num_int = int(num_str) # num_str을 int로 감싸서 int 타입으로 변경 및 num_int 변수 삽입
print(type(num_int)) # type함수를 사용하여 num_int 타입확인

 

출력)

<class 'int'>

 

 

 

No.017 정수를 문자열 100으로 변환

문제) 정수 100을 문자열 '100'으로 변환해보세요.

 

입력) 변수 num에 입력된 100은 정수(int)타입이다. str()로 감싸서 출력하고 str_num 변수에 입력하면

타입이 str(문자열) 로 변환되어 출력된다.

num = 100
str_num = str(100)
print(str_num, type(str_num))

 

출력)

100 <class 'str'>

 

 

 

No.018 문자열을 실수로 변환

문제) 문자열 "15.79"를 실수(float) 타입으로 변환해보세요.

 

입력) 017번 문제와 동일한 방식으로 해결한다. 문자열 "15.79"를 변수에 입력하고 해당 변수를 float() 로 감싸서 출력하면 소수타입(float)로 변환되어 출력된다.

flo_str = "15.79"
flo_trans = float(flo_str)
print(flo_trans, type(flo_trans))

 

출력)

15.79 <class 'float'>

 

 

 

No.019 문자열을 정수로 변환하기

문제) year라는 변수가 문자열 타입의 연도를 바인딩하고 있습니다. 이를 정수로 변환한 후 최근 3년의 연도를 화면에 출력해보세요.

year = "2020"

 

입력) year변수를 int() 감싸서 정수타입으로 변환시키고, int_year 라는 변수에 값을 넣어준다.

최근 3년의 연도를 화면에 출력해야 하므로 -1, -2, -3 으로 연산하여 출력한다. 또다른 방법으로는 for문을 사용해서 출력한다. for 문은 이후 문제 풀며 자세히 설명하고 이번에는 풀이 코드만 참고해보자

#일반적인 방식
year = "2020"
int_year = int(year)
print(int_year - 1, int_year - 2, int_year - 3, sep="\n")

#for문을 활용한 방식
year = "2020"
int_year = int(year)
last_year = [1, 2, 3]

for i in last_year:
    print(int_year - i)

 

출력)

2019
2018
2017

 

 

 

No.020 파이썬 계산

문제) 에이컨이 월 48,584원에 무이자 36개월의 조건으로 홈쇼핑에서 판매되고 있습니다. 총 금액은 계산한 후 이를 화면에 출력해보세요. (변수사용하기)

 

입력) 변수를 지정하고 48584 값을 입력 후 해당 변수에 *(곱하기) 36개월한 값을 다른 변수에 재입력하고 출력한다.

air_month = 48584
total = air_month * 36
print(total)

 

출력)

1749024

 

댓글