말랑말랑제리스타일
파이썬 반복문을 이용해서 만드는 팩토리얼, 시그마 계산기 본문
파이썬 반복문을 이용해서 팩토리얼이나 시그마 계산기를 만들어볼 수 있는데요. 방법은 상당히 간단합니다.
파이썬 반복문을 이용해 팩터리얼 계산기 만들기
팩토리얼의 원리는 간단하죠. 해당 수보다 작은 자연수의 곱을 나타내는 기호인데요.
예를 들어 2!(2 팩토리얼)이라면 1 * 2 = 2가 되고 3!(3 팩토리얼)이라면 1* 2 * 3으로 6이 되는 거죠.
자 이걸 파이썬 반복문을 이용해 구현해 봅시다.
rst = 1
num = int(input('숫자를 입력하세요 :'))
for i in range(1, num + 1):
rst *= i
print(str(num) + '! = ' + str(rst))
먼저 결과 값이 될 변수 rst를 생성해 주고 num이라는 또 다른 변수에 수를 하나 입력받습니다.
그리고 i라는 변수를 1부터 num까지 반복해 주면서 rst에 곱해주는 거죠.
여기서 num에 1을 더하는 이유는 num과 같을 때도 한번 연산을 해줘야 하기 때문입니다.
만약 1을 더하지 않으면 3! = 1 * 2가 될 겁니다.
파이썬 반복문을 이용해 시그마 계산기 만들기
시그마 계산의 원리도 간단하죠.
시그마는 특정 수부터 또 다른 수까지의 계산 결과를 더해내는 거니까요.
자 먼저 함수를 만들어줄 텐데요.
일단 우리는 편의상 시그마 내부에 들어갈 함수를 x제곱이라고 만들어볼게요.
그림판으로 그려서 글자가 좀 그렇지만 대충 알아봐 줍시다.
일단 함수는 x^2입니다.
def func1(x):
return x * x
이렇게 함수를 하나 만들어줍니다.
다음으로 시그마는 시작 수와 끝 수를 둘 다 입력받아야 하죠.
rst = 0
num1,num2 = map(int,input('숫자를 입력하세요 :').split())
rst는 합계가 들어갈 값이기 때문에 이번에는 0으로 초기화해 주고 num1, num2를 각각 띄어쓰기로 구분해서 받아줍니다.
그리고 마찬가지로 range를 num1부터 num2 + 1까지 잡아서 연산한 결과를 rst에 합산해 준 뒤 출력해 줍니다.
def func1(x):
return x * x
rst = 0
num1,num2 = map(int,input('숫자를 입력하세요 :').split())
for i in range(num1, num2 + 1):
rst += func1(i)
print('결과 : ' + str(rst))
이걸 응용하면 인테그랄 계산기도 만들어볼 수 있겠죠.
'프로그래밍 > 파이썬' 카테고리의 다른 글
구름 IDE에서 장고로 웹페이지 무작정 따라 만들기 (0) | 2023.06.22 |
---|---|
파이썬 BeautifulSoup으로 가져올 수 없는 데이터 (0) | 2023.06.19 |
파이썬으로 자동으로 누끼따서 배경 제거하기 (0) | 2023.06.13 |
구름 IDE에서 파이썬 PIL 이미지 미리보기 (0) | 2023.06.08 |
파이썬으로 테서렉트 OCR로 웹 이미지에서 글자 추출하기 (0) | 2023.06.08 |