num = 20
divisor = []
for i in range(1, num+1):
if num % i == 0:
divisor.append(i)
print(f'{num}의 약수: {divisor}')
>>>
20의 약수: [1, 2, 4, 5, 10, 20]
num = 20
primeNum = []
compositeNum = []
for i in range(2, num+1):
flag = True
for j in range(2, i):
if i % j == 0:
flag = False
break
if flag:
primeNum.append(i)
else:
compositeNum.append(i)
print(f'{num}까지의 소수: {primeNum}')
print(f'{num}까지의 합성수: {compositeNum}')
>>>
20까지의 소수: [2, 3, 5, 7, 11, 13, 17, 19]
20까지의 합성수: [4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20]
num = 20
primeFactorization = []
n = 2
while n <= num:
if num % n == 0:
primeFactorizarion.append(n)
num /= n
else:
n += 1
print(f'소인수: {primeFactorization}')
>>>
소인수: [2, 2, 5]
num1 = 36
num2 = 12
commonDivior = []
maxCommonDivisor = 0
for i in range(1, num1+1):
if num1 % i == 0 and num2 % i == 0:
commonDivior.append(i)
maxCommonDivisor = i
print(f'{num1}, {num2}의 공약수: {commonDivior}')
print(f'최대공약수: {maxCommonDivisor}')
>>>
36, 12의 공약수: [1, 2, 3, 4, 6, 12]
최대 공약수: 12
# 10 = 2 * 5
# 12 = 2 * 2 * 3
# 최대공약수 = 2
num1 = 10
num2 = 12
maxCommonDivisor = 0
for i in range(1, num1+1):
if num1 % i == 0 and num2 % i == 0:
maxCommonDivisor = i
minCommonMultiple = (num1 * num2) // maxCommonDivisor
print(f'최소공배수: {minCommonMultiple}')
>>>
최소공배수: 60
num = 10
# 방법 1
print(bin(num)) # 0b
print(oct(num)) # 0o
print(hex(num)) # 0x
# 방법 2
print(format(num, '#b'))
print(format(num, '#o'))
print(format(num, '#x'))
# 방법 3
print('{0:#b}, {0:#o}, {0:#x}'.format(num, num, num))
# x진수 -> 10진수
print(int('0b1010', 2))
print(int('0o12', 8))
print(int('0xa', 16))
# an = a1 + (n - 1) * d
# sn = n * (a1 + an) / 2
a1 = 2
d = 3
num = 7
value = a1 + (num - 1) * d
sum = num * (a1 + value) / 2
print(f'{num}번째 항의 값: {value}')
print(f'7번째 항까지의 합: {int(sum)}')
>>>
7번째 항의 값: 20
7번째 항까지의 합: 77
# an = a1 * r ** (n - 1)
# sn = a1 * (1 - r ** n) / (1 - r)
a1 = 2
r = 2
num = 7
value = a1 * (r ** (num - 1))
sum = a1 * (1 - (r ** num)) / (1 - r)
print(f'{num}번째 항의 값: {value}')
print(f'{num}번째 항까지의 합: {int(sum)}')
>>>
7번째 항의 값: 128
7번째 항까지의 합: 254
🚗 기초수학 파트에 진입했다.
중급 문제가 몇 개 남았는데, 시간이 꽤 걸려서 하루에 1~2문제씩 천천히 풀어보려고 한다.
🚕 내일은 기초수학 문제풀이까지 마무리하는 게 목표!