반응형

C언어 100이하 가장 큰 소수

 

 

Biggest prime number under less than input integer

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/* Biggest prime number under less than input integer. */
#include <stdio.h>
#include <math.h>
 
/* Get input number */
int getInputNumber() {
    int input = 0;
    printf("Input an integer: ");
    scanf("%d"&input);
    return input;
}
 
/* Get max prime number less than input integer. */
int getMaxPrime(int input) {
    int prime = 2;
    int num = 3;
    while (1) {
        int max = (int) sqrt(num);
        for (int i = 2; i <= max; i++) {
            if (num % i == 0break;
            if (i == max) prime = num;
        }
        num++;
        if (num > input) break;
    }
    return prime;
}
 
/* Print result */
void printResult(int input, int maxPrime) {
    printf("Biggest prime number under %d: %d\n", input, maxPrime);
}
 
int main() {
    int input = getInputNumber();
    int maxPrime = getMaxPrime(input);
    printResult(input, maxPrime);
    return 0;
}
cs

 

반응형