데이터 분석가

파이썬(Python) 소수(Prime_number) 프로젝트 본문

파이썬(python) 프로젝트 모음

파이썬(Python) 소수(Prime_number) 프로젝트

PlintAn 2023. 3. 14. 22:00

아주 귀여운 숫자 일러스트 !

안녕하세요!

 

 

조금 오랜만에 포스트를 올리게 되는거 같습니다. 요즘 SQL 시험을 준비하고 있어서요.. 

 

이번 시간에는 소수를 구하는 간단한 프로그램을 만들어 보도록 하겠습니다.

 

규칙이랄 것은 딱히 없지만, input 함수를 이용해 숫자를 입력하면 그 숫자가 1과 자기 자신만 공약수를 갖는

 

소수를 구하는 프로젝트입니다 !.

 

is_prime = True #소수 = 사실 기본값

def number_check(number): #입력된 숫자를 체크하는 반복문입니다
    for i in range(2, number): #for문을 이용해 2부터 입력될 숫자까지 반복(1은제외)
    if number % i == 0: #입력된 숫자가 자기자신(number)로 나누었을 때 나머지 값이 0값일 때
    	is_prime = False	#기본값 is_prime = True에서 위 식이 아닐 때, False값 반환
    if is_prime:	#만약 위 for문을 만족하는 식이라면 
    	print("it is a prime number") #이 수는 소수이다
    else:
    	print("it is not a prime number") #다른 공약수가 있으므로  소수가 아니다
        
n = int(input("Check this nubmer: ") #n이라는 임의변수에 입력받는다
prime_checker(n=number) #n에 입력받은 임의변수를 prime_checker에 number에 넣는다

 

앞서 진행했던 행맨 게임이나 다른 게임에 비하면 매우 쉬운 편인거 같습니다.

 

조금 풀어서 설명을 드리자면, is_prime = True 라는 기본값을 global 변수에 넣으면서 시작합니다.

 

def 선언이 되지만 해당 number 값에 해당 사항이 없으므로 pass 후

 

n을 인풋 함수로 숫자를 입력 받아 def 함수에 입력 받은 숫자를 넣습니다.

 

그 후로는 for문으로 범위는 (2,number)로 하는데 왜냐하면 1을 제외한 숫자 중 자기 자신으로만 나누어질 수 있는

 

값이 소수의 정의이기 때문입니다.

 

그 후로 number % i == 0 즉 나머지가 0인 경우 기본 값True를 받아 

 

if is_prime: 함수로 print("it is a prime number") 을 반환한다.

 

1. is_prime = True  기본값으로 정의.

2. n이라는 int(input))에 숫자를 입력 한다.

3. n = number이므로 def식에 numer에 입력 함수가 들어간다.

4.  2부터 입력받은 숫자까지 for문을 반복한다.

5. 4번을 수행도중 한번이라도 number %  i == 0이 나올 시 False 값으로 print 반환

6. 4번을 모두 수행하여 마지막 자기 자신과 나누어 == 0이 나오면 True 값 유지

7. prime print 값을 반환한다.

 

for문을 이용해 한번이라도 false가 나오면 식이 종료되게끔 하는 반복문이었습니다.

 

순서대로 제가 적어두었으니 이해가 안된다면 한번씩 보시고 연습해 보길 바랍니다 !

 

다음에 또 뵙겠습니다 !

 

Comments