강의자료 · 마이크로프로세서응용설계

목차

목차

4. 기본적인 계산 다루기

4.1 기본 수학 연산

# 변수의 좋은 예
pos_x = 10 
num_values = 5
_event_flag = False

# 변수의 나쁜 예
abc = 4
a1 = 50
xxxx = 3.4
temp1 = 4
temp2 = 5
# 정수
number = 5

# 실수
value = 2.5

# bool
is_number = True

# 문자열(string)
name = 'Ivan'

# 정수가 실수로 바뀌는 경우
number = number / 2
print('number =', number)
number = 2.5
a = 10
b = 2.5
print(a+b, a-b, a*b, a/b, a//b, a%b, a**b)
print(a>b, a>=b, a<b, a<=b, a==b, a!=b, a>b or a<=b, a>b and a<=b)
12.5 7.5 25.0 4.0 4.0 0.0 316.22776601683796
True True False False False True True False
# numpy 라이브러리의 활용법은 나중에 좀 더 자세히 다룰 예정입니다.
import numpy as np
angle = np.pi/4
print(angle)
print(np.sin(angle))
print(np.cos(angle))
print(np.exp(angle))
print(np.round(angle))
print(np.ceil(angle))
print(np.floor(angle))
0.7853981633974483
0.7071067811865475
0.7071067811865476
2.1932800507380152
1.0
1.0
0.0

4.2 단순 반복 계산하기 (for)

    for 변수 in 리스트:
        수행문
        ...
+ 리스트에 있는 원소들이 하나씩 차례로 변수에 대입된되며 반복하고, 모든 원소가 대입된 후 반복이 끝난다. 
+ 물론 리스트에 들어갈 수 있는 데이터 형태는 무엇이든지 가능하다.
for i in [4, 'text', 1.5 , True, {'name':'Charles', 'age':15}]:
    print(i)
4
text
1.5
True
{'name': 'Charles', 'age': 15}
for i in range(5):
    print(i)
0
1
2
3
4
for i in range(5):
    if i==3:
        continue
    print(i)
0
1
2
4
for i in range(5):
    if i==3:
        break
    for j in range(5):
        if j==2:
            break
        print(i, j)
0 0
0 1
1 0
1 1
2 0
2 1
for i in range(2,5):
    for j in range(1,10):
        print('%d * %d = %d' % (i, j, i*j))
    print('----------')
2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
2 * 4 = 8
2 * 5 = 10
2 * 6 = 12
2 * 7 = 14
2 * 8 = 16
2 * 9 = 18
----------
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
3 * 4 = 12
3 * 5 = 15
3 * 6 = 18
3 * 7 = 21
3 * 8 = 24
3 * 9 = 27
----------
4 * 1 = 4
4 * 2 = 8
4 * 3 = 12
4 * 4 = 16
4 * 5 = 20
4 * 6 = 24
4 * 7 = 28
4 * 8 = 32
4 * 9 = 36
----------

4.3 조건 반복 계산하기 (while)

    while(조건):
        수행문
        ...
+ 조건은 bool 형태의 데이터 타입이고, `True` 또는 `False`로 표현가능한 것을 의미한다.
    - (조건 `and` 조건), (조건 `or` 조건)과 같이 조합해서 사용하는 것이 가능하다.
i = [1,2,3,4,-1,5,6,7,8]
j = []
count=0
while(i[count]>0):
    j.append(i[count])
    count = count + 1
print(j)
[1, 2, 3, 4]
# 프로그램 동작에 관한 정보를 제공한다.
print('원하는 단수를 입력하시고, 종료하려면 -1을 입력하세요.')

# 의도적으로 무한루프를 활용한다.
while(True):
    
    # 사용자가 정수를 입력해준다고 가정한다.
    i = int(input())
    
    # -1 입력시 반복문을 탈출한다.
    if i==-1:
        break
    
    # 출력
    for j in range(1,10):
        print('%d x %d = %d' % (i, j, i*j))
원하는 단수를 입력하시고, 종료하려면 -1을 입력하세요.
4
4 x 1 = 4
4 x 2 = 8
4 x 3 = 12
4 x 4 = 16
4 x 5 = 20
4 x 6 = 24
4 x 7 = 28
4 x 8 = 32
4 x 9 = 36
5
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
-1

4.4 좀 더 복잡한 계산하기 (if)

    if (조건):
        수행문
        ...
    elif (조건):
        수행문
        ...
    else:
        수행문
        ...