파이썬 Basic Step 2. 변수 Variable [<비트코딩 라이트📙> 문제 묻.따.따.]

리온·2022년 4월 15일
1
post-thumbnail

코딩문제집 책 <비트코딩 라이트 : 파이썬> 예제들을 "묻고. 따지면서. 따라풀기." for team daiv. study

모두를 위한 쉽고 재미있는 인공지능 컨텐츠 project 🌊deep diav.
instagram @deep.daiv
/ blog deepdaiv.oopy.io
team daiv.🌸

Part1 - Basic

STEP 02 변수 variable

<표현 정리>

  • 변수 A를 선언 한다 = 변수 A를 만들기만 하고 값은 할당하지 않는다

  • 변수 A를 초기화 한다 = 만들어진 변수 A에 어떤 값을 할당한다
    A = 2

  • 변수 A를 재선언 한다 = 변수 A에 할당된 값을 바꾼다, 변수 A에 원래 값 대신 새로운 값을 할당한다
    A = A + 2
    변수 A에 어떤 값을 할당 = 저장 = 대입한다

  • round(A) 실수(float)형 변수를 정수(int)형으로 바꾸는 함수

A = 1.0
print(A) 

A = round(A) #변수 A 재선언
print(A) 

#out

1.0   #A 출력, 형태는 float
1     #A 출력, 형태는 int 

Example 011

A = 5
B = A
A = 1

print(A); print(B) 
#;으로 같은 줄에 여러 문장 작성 가능 #출력은 줄 바꿔서 됨
print(A, B)

#out

1
5
1 5

Example 012

A, B = 1.3, 2 
#,로 한 줄에 여러 개의 변수를 선언 가능
C = A + B
A = A - 0.3 #변수 A 재선언
D = 1

print(A, B, C)
print(A + B)
print(C + 1)
print(D + 2.0) 
#정수(int)형 + 실수(float)형 연산 결과는 항상 float형으로 출력

print(type(A), type(B), type(D + 2.0))

#out

1.0 2 3.3
3.0
4.3
3.0
<class 'float'> <class 'int'> <class 'float'>

Problem 013

x = 2
y = 1
z = x + y
print(z)

#out

3

Problem 014

#변수 2개(각각 2, 3 할당)만 써서 10을 출력하기

A = 2
B = 3
print((A + B)*2)

#out

10

Problem 015

#식 (20 * 5) + (34 - 2) - 72/5 의 계산결과(117.6)를 출력하는 코드 작성하기

#방법1. 변수 2개 써보기
a = 34
b = 5
print((20 * b) + (a - 2) - 72/b)

#방법2.변수를 이용한 식으로 다른 변수 만들기
a = 34
a1, a2 = a + 2, a - 2 
b = 5
x = (20 * b) + a2 - (2 * a1)/b
print(x)

#out

#방법1 117.6
#방법2 117.6

Problem 016

#1, 2, 3 세 가지를 저장하는 변수 3개만을 이용해서 
10, 100, 1000을 출력하는 코드 작성하기
#print문 안에 결괏값 숫자를 직접 입력하지 않기
a, b, c = 1, 2, 3

결과1 = (b + c)*b
결과2_1 = (a + c)*(b + c)**2
결과2_2 = (a + (b**2 + c)**2)*b
결과3 = (a + b * c + c)**3
#** : 제곱연산

print(결과1, 결과2_1, 결과2_2, 결과3)

#out

10 100 100 1000

Problem 017

#결괏값 14.0을 출력하는 코드 작성하기

A, B = 2.5, 4
C = (A * B) + B
#C는 상수항 없이 A와 B만을 이용한 식으로 초기화 

print(C)
print(round(C))

#out

14.0
14

선언.. 재선언.. 초기화.. .. 등의 용어가
책에는 친절하게 설명되어 있지 않아서
구글링도 같이 하면서 배우는 중

교과과정에서 수학을 배울 때는
주어진 을 풀어서 -> 을 내라는 형식의 문제를 주로 풀다가

코딩할 때는 거꾸로
어떤 을 출력할 수 있는 <- 을 만드는 입장이 되니
창의적으로 식 만드는 법을 계속 고민하게 되고 재밌는 것 같다

Step 2도 끄읕

..인 줄 알았는데 뒷장에 문제가 더 있었네

Problem 020

#출력 결과 예상하기
num1, num2, num3 = 10, 20, 30
num1 = num2 = num3

print(num1)
print(num2)
print(num3)

#out

30
30
30

#왼쪽 기준이면 셋 다 10이겠지 -> 이쪽으로 예상함
#오른쪽 기준이면 셋 다 30이겠지 -> 답은 이거였음.
#오른쪽부터 왼쪽방향으로... 
#num3의 값인 30이 num2로 대입되고 
-> num2의 값이 된 30이 num1로 대입되는 순서

Problem 021

#출력 결과 예상하기
X, Y, Z = 1, 2, 1.5

print(X) #= 1
print(X + Y) #= 3
print(X + Y + Z) #= 4.5

#out

1
3
4.5
print(2X) #error. 2 * X 라고 써야 함 
print(2 * X) #=2
print(2.0 * X) #=2.0

#out

#error : invalid syntax
2
2.0
print(X - 1.0) #= 0.0
print(X - 1) #= 0
print(Z - 0.5) #= 1.0
print(XZ) #error. XZ라는 변수 정의되지 않았다고 뜸 
print(X * Z) #= 1.5

#out

0.0
0
1.0
#error : name 'XZ' is not defined
1.5


✅이 글에서 잘못된 내용이 있다면
댓글로 알려주세요🙏

profile
Wannabe Starlight

0개의 댓글