💡 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
an = {2, 5, 8, 11, 14, 17, 20, 23, 26, 29, … }
# 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
# an = {2, 5, 8, 11, 14, 17, 20, 23, 26, 29, … }
inputN1 = int(input('a1 입력 : '))
inputD = int(input('공차 입력 : '))
inputN = int(input('n 입력 : '))
valueN = 0
n = 1
while n <= inputN:
if n == 1:
valueN = inputN1
print(f'{n}번째 항의 값 : {valueN}')
n += 1
continue
valueN += inputD
print(f'{n}번째 항의 값 : {valueN}')
n += 1
print('{}번째 항의 값 : {}' .format(inputN, valueN))
💡 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
# 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
# an = {2, 5, 8, 11, 14, 17, 20, 23, 26, 29, … }
# 등차수열(일반항) 공식 : an = a1 + (n-1)*d
inputN1 = int(input('a1 입력 : '))
inputD = int(input('공차 입력 : '))
inputN = int(input('n 입력 : '))
valueN = inputN1 + (inputN-1) * inputD
print('{}번째 항의 값 : {}' .format(inputN, valueN))
다음 수열을 보고 n번째 항의 합을 출력하는 프로그램을 생성
an = {5, 9, 13, 17, 21, 25, 29, 33… }
# 다음 수열을 보고 n번째 항의 합을 출력하는 프로그램을 생성
# an = {5, 9, 13, 17, 21, 25, 29, 33… }
inputN1 = int(input('a1 입력 : '))
inputD = int(input('공차 입력 : '))
inputN = int(input('n 입력 : '))
valueN = 0
sumN = 0
n = 1
while n <= inputN:
if n == 1:
valueN = inputN1
sumN += valueN
print(f'{n}번째 항까지의 합 : {sumN}')
n += 1
continue
valueN += inputD
sumN += valueN
print(f'{n}번째 항까지의 합 : {sumN}')
n += 1
print(f'{inputN}번째 항까지의 합 : {sumN}')
💡 다음 수열을 보고 n번째 항의 합을 출력하는 프로그램을 생성
an = {5, 9, 13, 17, 21, 25, 29, 33… }
등차수열(합) 공식 : sn = n(a1 + an) / 2
# 다음 수열을 보고 n번째 항의 합을 출력하는 프로그램을 생성
# an = {5, 9, 13, 17, 21, 25, 29, 33… }
# 등차수열(합) 공식 : sn = n(a1 + an) / 2
inputN1 = int(input('a1 입력 : '))
inputD = int(input('공차 입력 : '))
inputN = int(input('n 입력 : '))
valueN = inputN1 + (inputN-1) * inputD
sumN = inputN * (inputN1 + valueN) / 2
print(f'{inputN}번째 항까지의 합 : {sumN}')
다음 수열의 일반항을 구하기
다음 수열에서 a2과 a6의 등비 중항 구하기
다음 수열의 합을 구하기
다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 만들어보자.
an = {2, 4, 8, 16, 32, 64, 128, 256, … }
# 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 만들어보자.
# an = {2, 4, 8, 16, 32, 64, 128, 256, … }
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력 : '))
valueN = 0
n = 1
while n <= inputN:
if n == 1:
valueN = inputN1
print('{}번째 항의 값 : {}'.format(n, valueN))
n += 1
continue
valueN *= inputR
print('{}번째 항의 값 : {}'.format(n, valueN))
n += 1
print('{}번째 항의 값 : {}'.format(inputN, valueN))
💡 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 만들어보자.
an = {2, 4, 8, 16, 32, 64, 128, 256, … }
# 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 만들어보자.
# an = {2, 4, 8, 16, 32, 64, 128, 256, … }
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력 : '))
valueN = inputN1 * (inputR ** (inputN - 1))
print('{}번째 항의 값 : {}'.format(inputN, valueN))
다음 수열을 보고 n번째 항까지의 합을 출력하는 프로그램을 생성
an = {5, 15, 45, 135, 405, 1215, 3645, … }
# 다음 수열을 보고 n번째 항까지의 합을 출력하는 프로그램을 생성
# an = {5, 15, 45, 135, 405, 1215, 3645, … }
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력 : '))
valueN = 0
sumN = 0
n = 1
while n <= inputN:
if n == 1:
valueN = inputN1
sumN += valueN
print('{}번째 항까지의 합 : {}'.format(n, sumN))
n += 1
continue
valueN *= inputR
sumN += valueN
print('{}번째 항까지의 합 : {}'.format(n, sumN))
n += 1
print('{}번째 항까지의 합 : {}'.format(inputN, sumN))
💡 다음 수열을 보고 n번째 항까지의 합을 출력하는 프로그램을 만들어보자.
an = {5, 15, 45, 135, 405, 1215, 3645, … }
sn = a1 * (1-r^n) / (1-r)
# 다음 수열을 보고 n번째 항까지의 합을 출력하는 프로그램을 만들어보자.
# an = {5, 15, 45, 135, 405, 1215, 3645, … }
# sn = a1 * (1-r^n) / (1-r)
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력 : '))
sumN = inputN1 * (1- inputR**inputN) / (1-inputR)
print('{}번째 항까지의 합 : {}'.format(inputN, sumN))
시그마를 이용해서 나타낸 수열의 합을 파이썬 프로그램 생성
{2, 4, 6, 8, 10, 12, 14, 16, 18, 20}
# 시그마를 이용해서 나타낸 수열의 합을 파이썬 프로그램 생성
#{2, 4, 6, 8, 10, 12, 14, 16, 18, 20}
inputN1 = int(input('a1 입력 : '))
inputD = int(input('공차 입력 : '))
inputN = int(input('n 입력 : '))
valueN = 0
sumN = 0
# 등차수열 일반항 공식 : a1 + (n-1)d
# 등차수열(합) 공식 : n(a1 + an) / 2
valueN = inputN1 + (inputN - 1) * inputD
sumN = inputN * (inputN1 + valueN) / 2
print('{}번째 항까지의 합 : {}' .format(inputN, sumN))
시그마를 이용해서 나타낸 수열의 합을 파이썬 프로그램으로 생성
{2, 6, 18, 54, 162, 486, 1458, 4374}
# 시그마를 이용해서 나타낸 수열의 합을 파이썬 프로그램으로 생성
# {2, 6, 18, 54, 162, 486, 1458, 4374}
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력 : '))
valueN = 0
sumN = 0
# 등비수열(합) 공식 : sn = a1*(1 - r^n) / (1-r)
sumN = inputN1 * (1-inputR**inputN) / (1-inputR)
print('{}번째 항까지의 합 : {}' .format(inputN, sumN))
계차 수열을 이용해서 수열 an의 일반항을 구하기
{an} = {3, 7, 13, 21, 31, 43, 57}
{bn} = {4, 6, 8, 10, 12, 14}
an -> 4 + (k-1) * 2 = 4 + 2k - 2 = 2k + 2
(k-1)(4 + 2(k-1) + 2) / 2
(k-1)(2k+4) / 2
(k-1)(k+2) = k^2 +k -2
k^2 + k - 2 = an - 3
an = k^2 + k - 2 + 3 = k^2 + k + 1
an = k^2 + k + 1
💡 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
an = {3, 7, 13, 21, 31, 43, 57}
4, 6, 8, 10, 12, 14
# 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
# an = {3, 7, 13, 21, 31, 43, 57}
# 4, 6, 8, 10, 12, 14
inputAN1 = int(input('a1 입력 : '))
inputAN = int(input('an 입력 : '))
inputBN1 = int(input('b1 입력 : '))
inputBN = int(input('bn 공차 입력 : '))
valueAN = 0
valueBN = 0
n = 1
while n <= inputAN:
if n == 1:
valueAN = inputAN1
valueBN = inputBN1
print('an의 {}번째 항의 값 : {}'.format(n, valueAN))
print('bn의 {}번째 항의 값 : {}'.format(n, valueBN))
n += 1
continue
valueAN += valueBN
valueBN += inputBN
print('an의 {}번째 항의 값 : {}'.format(n, valueAN))
print('bn의 {}번째 항의 값 : {}'.format(n, valueBN))
n += 1
print()
print('an의 {}번째 항의 값 : {}'.format(inputAN, valueAN))
print('bn의 {}번째 항의 값 : {}'.format(inputAN, valueBN))
# an = n^2 + n + 1
valueAN = inputAN**2 + inputAN + 1
print('an의 {}번째 항의 값 : {}'.format(inputAN, valueAN))
💡 파이썬을 이용해서 피보나치 수를 계산하는 프로그램을 생성
# 파이썬을 이용해서 피보나치 수를 계산하는 프로그램을 생성
inputN = int(input('n 입력 : '))
valueN = 0
sumN = 0
valueReN2 = 0
valueReN1 = 0
n = 1
while n <= inputN:
if n == 1 or n == 2:
valueN = 1
valueReN2 = valueN
valueReN1 = valueN
sumN += valueN
n += 1
else:
valueN = valueReN1 + valueReN2
valueReN2 = valueReN1 # 반복문이 다음에 돌기 위해 미리 설정한다고 보면 됨
valueReN1 = valueN # 반복문이 다음에 돌기 위해 미리 설정한다고 보면 됨
sumN += valueN
n += 1
print('{}번째 항의 값 : {}'.format(inputN, valueN))
print('{}번째 항의 합 : {}'.format(inputN, sumN))
파이썬을 이용해서 팩토리얼 결괏값을 출력하는 프로그램을 생성
# 파이썬을 이용해서 팩토리얼 결괏값을 출력하는 프로그램을 생성
inputN = int(input('n 입력 : '))
result = 1
for n in range(1, inputN+1):
result *= n
print('{} 팩토리얼 : {}' .format(inputN, result))
print()
result = 1
n = 1
while n <= inputN:
result *= n
n += 1
print('{} 팩토리얼 : {}' .format(inputN, result))
print()
def factorialFun(n):
if n == 1: return 1
return n * (factorialFun(n-1))
print('{} 팩토리얼 : {}' .format(inputN, factorialFun(inputN)))
print()
import math
math.factorial(5)
print('{} 팩토리얼 : {}' .format(inputN, math.factorial(inputN)))
print()
💡 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
# 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
inputN = int(input('n항 입력 : '))
flag = True
n = 1; nCnt = 1; #cCnt 내가 원하는 항을 찾음
searchN = 0 # searchN 찾는 값
while flag:
for i in range(1, (n+1)): #군마다 돌기 위해
if i == n:
print('{}' .format(i), end='')
else:
print('{}'.format(i), end=',')
nCnt +=1
if nCnt > inputN:
searchN = i
flag = False
break
print()
n +=1
print('{}항 : {}'.format(inputN, searchN))
💡 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
# 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 생성
inputN = int(input('n항 입력 : '))
flag = True
n = 1; nCnt = 1; searchNC = 0; searchNP = 0
while flag:
for i in range(1, n+1):
if i == n :
print('{}/{}' .format(i, n-i+1), end='')
else:
print('{}/{}'.format(i, n - i + 1), end=',')
nCnt +=1
if nCnt > inputN:
searchNC = i
searchNP = n - i + 1
flag = False
break
print()
n += 1
print('{}항 : {}/{}' .format(inputN, searchNC, searchNP))
다음 순열의 값을 구하기
카드 4장을 일렬로 나열하되 삼각형과 사각형이 서로 이웃하도록 나열하는 경우의 수를 구하자
4P2 = 4! / 2! = 4 * 3 = 12
파이썬을 이용해서 다음 순열들의 값을 구하는 프로그램을 만들어 보자
8P3, 7P5
# 파이썬을 이용해서 다음 순열들의 값을 구하는 프로그램을 만들어 보자
# 8P3, 7P5
numN = int(input('numN 입력 : '))
numR = int(input('numR 입력 : '))
result = 1
for i in range(numN, (numN - numR), -1):
print('n : {}' .format(i))
result *= i
print('result : {}' .format(result))
4명의 친구가 원탁 테이블에 앉을 수 있는 순서를 계산
# 4명의 친구가 원탁 테이블에 앉을 수 있는 순서를 계산
num = int(input('친구 수 입력 : '))
result = 1
for i in range(1, num): # 1*2*3
result *= i
print('result : {}' .format(result))
다음 조합의 값을 구하기
카드 5장 중 2장을 선택했을 때 삼각형과 사각형이 동시에 선택될 수 있는 확률
5C2 = 5! / (2!3!) = 5 4 / 2 = 10
10 *0.01 = 0.1 10%
파이썬을 이용해서 다음 조합들의 값을 구하는 프로그램을 생성
8C3, 7C5
# 파이썬을 이용해서 다음 조합들의 값을 구하는 프로그램을 생성
# 8C3, 7C5
numN = int(input(('numN 입력 : ')))
numR = int(input(('numR 입력 : ')))
resultP = 1
resultR = 1
resultC = 1
for n in range(numN, (numN - numR),-1):
print('n : {}' .format(n))
resultP = resultP * n
print('resultR : {}' .format(resultP))
for n in range(numR,0,-1):
print('r : {}' .format(n))
resultC *= n
print('resultR : {}' .format(resultR))
resultC = int(resultP / resultC)
print('resultR : {}' .format(resultC))
카드 5장 중 2장을 선택했을 때 삼각형과 사각형이 동시에 선택될 수 있는 확률
# 카드 5장 중 2장을 선택했을 때 삼각형과 사각형이 동시에 선택될 수 있는 확률
numN = 5
numR = 2
resultP = 1
resultR = 1
resultC = 1
for n in range(numN, (numN - numR), -1):
print('n : {}'.format(n))
resultP *= n
print('resultR : {}' .format(resultP))
for n in range(numR, 0, -1):
print('n : {}'.format(n))
resultR *= n
print('resultR : {}' .format(resultR))
resultC = int(resultP / resultR)
print('resultC : {}' .format(resultC))
print('확률 : {}' .format(resultC*0.01))
박스에 ‘꽝’이 적힌 종이가 4장 있고, ‘선물’이 적힌 종이가 3장 있다. 3장을 뽑을 경우 다음 경우의 수를 구하기
꽝:0, 선물:3 → 1 / 7C3
꽝:1, 선물:2 → (4C1 3C2) / 7C3
꽝:2, 선물:1 → (4C2 3C1) / 7C3
꽝:3, 선물:0 → 4C3 / 7C3
박스에 ‘꽝’이 적힌 종이가 5장 있고, ‘선물’이 적힌 종이가 2장 있다. 3장을 뽑을 경우 다음 경우의 수를 구하기
꽝:3, 선물:0 → 1 / 7C3
꽝:2, 선물:1 → (5C2 2C1) / 7C3
꽝:1, 선물:2 → (5C1 2C2) / 7C3
💡 박스에 ‘꽝’이 적힌 종이가 4장 있고, ‘선물’이 적힌 종이가 3장이 있을 때, 파이썬을 이용해서 ‘꽝’2장과 ‘선물’ 1장을 뽑는 확률(%)을 출력
# 박스에 ‘꽝’이 적힌 종이가 4장 있고, ‘선물’이 적힌 종이가 3장이 있을 때,
# 파이썬을 이용해서 ‘꽝’2장과 ‘선물’ 1장을 뽑는 확률(%)을 출력
def proFun():
numN = int(input('numN 입력 : '))
numR = int(input('numR 입력 : '))
resultP = 1
resultR = 1
resultC = 1
for i in range(numN, numN - numR, -1):
resultP *= i
print('resultP : {}' .format(resultP))
for i in range(numR,0,-1):
resultR *= i
print('resultR : {}' .format(resultP))
resultC = int(resultP / resultR)
print('result : {}' .format(resultC))
return resultC
sample = proFun()
print('sample : {}' .format(sample))
event1 = proFun()
print('event1 : {}' .format(event1))
event2 = proFun()
print('event2 : {}' .format(event2))
probablity = (event1 * event2) / sample
print('probabilty : {}%' .format(round(probablity*100,2)))
💻 출처 : 제로베이스 데이터 취업 스쿨