산술연산자

 

산술연산자의 종류입니다.

 

연산자 의미
+ 더하기
- 빼기
* 곱하기
/ 나누기 (결과는 실수형)
// 몫 (나머지는 버리고 몫만 나타냄)
% 나머지
** 제곱

 

a=3
b=2

# 결과>>5
print(a + b)

# 결과>>1
print(a - b)

# 결과>>6
print(a * b)

# 결과>>1.5
print(a / b)

# 결과>>1
print(a // b)

# 결과>>1
print(a % b)

# 결과>>9
print(a ** 2)

이중리스트를 선언하여 사용하는 방법입니다.

for문을 이용하면 이중리스트를 쉽게 사용할 수 있습니다.

 

a=[[0 for ii in range(열)] for jj in range(행)]

b=[[0]*열 for kk in range(행)]

 

이중리스트 선언 기본 구조입니다.

행은 가로줄을, 열은 세로줄을 의미합니다.

 

예를 들어 2 x 3 행렬이 있다고 가정하면 형태는 다음과 같습니다.

 

1행 1열 1행 2열 1행 3열
2행 1열 2행 2열 3행 3열

 

a=[[0 for ii in range(3)] for jj in range(4)]
b=[[0]*2 for kk in range(4)]

# 결과>>[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]
print(a)

# 결과>>[[0, 0], [0, 0], [0, 0], [0, 0]]
print(b)

 

a의 출력결과를 풀어보면 4행 3열인 것을 확인할 수 있습니다.

 

 

[[0, 0, 0],

 [0, 0, 0],

 [0, 0, 0],

 [0, 0, 0]]

 

b의 출력결과를 풀어보면 4행 2열인 것을 확인할 수 있습니다.

 

[[0, 0],

 [0, 0],

 [0, 0],

 [0, 0]]

리스트에서는 편리하게 사용할 수 있는 리스트 관련 함수가 여러 가지 있습니다.

리스트 변수 이름 뒤에 .를 붙여 사용합니다.

 

 

 insert()

 

insert(a, b)는 리스트의 a번째 위치에 b를 삽입하는 함수입니다.

 

a=[5,1,3]
a.insert(0,7)

# 결과>>[7, 5, 1, 3]
print(a)

b=['b','e','a']
b.insert(2,'c')

# 결과>>['b', 'e', 'c', 'a']
print(b)

 

 

remove()

 

remove(x)는 리스트에서 첫 번째로 나오는 x인 요소를 삭제하는 함수입니다.

 

a=[5,1,3]
a.remove(1)

# 결과>>[5, 3]
print(a)

b=['b','e','a','e']
b.remove('e')

# 결과>>['b', 'a', 'e']
print(b)

리스트 b의 'e' 요소가 두 개지만 첫 번째 요소인 'e'만 제거합니다.

 

 

 pop()

 

pop()는 리스트의 마지막 요소를 꺼내서 돌려주고 그 요소를 삭제해주는 함수입니다.

 

a=[5,1,3]
a.pop()

# 결과>>[5, 1]
print(a)

b=['b','e','a']
b.pop()

# 결과>>['b', 'e']
print(b)

 

pop(x)는 리스트의 x번째 요소를 돌려주고 그 요소는 삭제해주는 기능을 합니다.

 

a=[5,1,3]
a.pop(0)

# 결과>>[1, 3]
print(a)

b=['b','e','a']
b.pop(1)

# 결과>>['b', 'a']
print(b)

리스트 a의 0번째 요소인 5를 삭제해줍니다.

리스트 b의 1번째 요소인 'e'를 삭제해줍니다.

 

 

 count()

 

count(x)는 리스트에 x 요소의 개수를 조사하여 돌려주는 함수입니다.

 

a=[5,1,3]

# 결과>>1
print(a.count(1))

b=['b','e','a','e']

# 결과>>2
print(b.count('e'))

리스트에서는 편리하게 사용할 수 있는 리스트 관련 함수가 여러가지 있습니다.

리스트 변수 이름 뒤에 .를 붙여 사용합니다.

 

 

append()

 

append()는 리스트의 마지막에 값을 추가하는 함수입니다.

 

a=[1,2]
a.append(3)

# 결과>>[1, 2, 3]
print(a)

b=['a','b']
b.append('c')

# 결과>>['a', 'b', 'c']
print(b)

 

 

 sort()

 

sort()는 리스트의 요소를 정렬해주는 함수입니다.

기본으로 오름차순으로 정렬해줍니다.

 

a=[5,3,1]
a.sort()

# 결과>>[1, 3, 5]
print(a)

b=['b','e','a']
b.sort()

# 결과>>['a', 'b', 'e']
print(b)

 

sort()에 reverse=True를 추가하면 내림차순으로 정렬해줍니다.

 

a=[5,3,1,2]
a.sort(reverse=True)

# 결과>>[5, 3, 2, 1]
print(a)

b=['b','e','a']
b.sort(reverse=True)

# 결과>>['e', 'b', 'a']
print(b)

 

 

 reverse()

 

reverse()는 리스트를 역순으로 뒤집어 주는 함수입니다.

현재의 리스트를 거꾸로 뒤집어주는 기능을 합니다.

 

a=[5,1,3]
a.reverse()

# 결과>>[3, 1, 5]
print(a)

b=['b','e','a']
b.reverse()

# 결과>>['a', 'e', 'b']
print(b)

 

 

 

 1091 : [기초-종합] 수 나열하기3


어떤 규칙에 따라 수를 순서대로 나열한 것을 수열이라고 한다.

예를 들어
1 -1 3 -5 11 -21 43 ... 은
1부터 시작해 이전에 만든 수에 -2를 곱한 다음 1을 더해 다음 수를 만든 수열이다.

이런 이상한 수열을 알게 된 영일이는 또 궁금해졌다.

"그럼.... 13번째 나오는 수는 뭘까?"

영일이는 물론 수학을 아주 잘하지만 이런 문제는 본 적이 거의 없었다...

그래서 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다.


시작 값(a), 곱할 값(m), 더할 값(d), 몇 번째인지를 나타내는 정수(n)가 입력될 때,
n번째 수를 출력하는 프로그램을 만들어보자.

 

정답

a,m,d,n=input().split(' ')
a=int(a)
m=int(m)
d=int(d)
n=int(n)

for i in range(1,n):
    a=a * m + d

print(a)

 

 


CodeUp 기초 100제 : https://codeup.kr/problemsetsol.php?psid=23

 1090 : [기초-종합] 수 나열하기2


어떤 규칙에 따라 수를 순서대로 나열한 것을 수열이라고 한다.

예를 들어
2 6 18 54 162 486 ... 은
2부터 시작해 이전에 만든 수에 3을 곱해 다음 수를 만든 수열이다.

이러한 것을 수학에서는 앞뒤 수들의 비율이 같다고 하여
등비(비율이 같다의 한문 말) 수열이라고 한다.


등비 수열을 알게된 영일이는 갑자기 궁금해졌다.

"그럼.... 13번째 나오는 수는 뭘까?"

영일이는 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다.


시작 값(a), 등비(r), 몇 번째인지를 나타내는 정수(n)가 입력될 때
n번째 수를 출력하는 프로그램을 만들어보자.

 

정답

a,r,n=input().split(' ')
a=int(a)
r=int(r)
n=int(n)
c=1

while True:

    if c >= n:
       print(a)
       break
    else:
        a=a*r
        c=c+1

 

모범 소스

a,r,n=input().split()

A=int(a)
R=int(r)
N=int(n)

for i in range(N-1) :
    A = A * R

print(A)

 

 


CodeUp 기초 100제 : https://codeup.kr/problemsetsol.php?psid=23

+ Recent posts