티스토리 뷰

C, C++

C언어 소수 판별 예제

j0n9m1n1 2018. 3. 15. 20:37
반응형

 

#include <stdio.h>

void introduction();
int getNumber();
int distinction(int n);
void result(int n, int check);

int main()
{
    int n = 128391283, i, check;
    i = check = 0;
    introduction();

    while (n != 0) 
    {
        n = getNumber();
        check = distinction(n);
        result(n, check);
    }

    return 0;
}

void introduction() 
{
    printf("====================================================================\n");
    printf("이 프로그램은 입력받은 양의정수가 소수인지 판별하는 프로그램 입니다.\n");
    printf("====================================================================\n");
}

int getNumber() 
{
    int n = 0;
    
    printf("양의 정수를 입력하세요(0은 종료): ");
    scanf("%d", &n);

    return n;
}

int distinction(int n) 
{
    int i, check;
    i = check = 0;

    if (n == 1) 
    {
        check = 1;
    }

    for (i = 2; i <= n / 2; ++i)
    {
        if (n%i == 0)
        {
            check = 1;
            break;
        }
    }

    return check;
}

void result(int n, int check) 
{
    if (check == 0)
    {
		printf("%d 은(는) 소수입니다..\n", n);
    }
	else
    {
		printf("%d 은(는) 소수가 아닙니다.\n", n);
    }
}
댓글

티스토리 방명록

최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday