반응형
안녕하세요 성조입니다.
이전에 풀이했던 코드를 정리하다가 소스 코드에 문제가 있음을 확인하고 코드를 수정했습니다.
코드
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
40
41
42
43
44
45
46
47
48
|
#include <stdio.h>
unsigned int Prime(int a);
unsigned int Prime_count();
// 2부터 100까지 정수 중 소수 갯수 출력
unsigned int main() {
Prime_count();
printf("\n");
for (int i = 2; i <= 100; i++)
{
if (Prime(i))
{
printf("1,%d\n", i); //1은 소수가 아니지만 모든 소수는 1을 가지고 있음을 보여주기 위한 출력
}
}
}
// 소수 판별
unsigned int Prime(int a) {
int sum = 0;
for (int i = 2; i <= a; i++)
{
if (a % i == 0)
{
sum += a;
}
}
if (sum == a)
return 1;
else
return 0;
}
// 소수 개수 카운팅
unsigned int Prime_count() {
int count = 0, Prime_count = 0;
for (int i = 2; i <= 100; i++)
{
count = 0;
for (int j = 2; j < i; j++)
{
if (i % j == 0)
count++;
}
if (count == 0)
Prime_count++;
}
printf("소수의 개수 : %d", Prime_count);
}
|
풀이
1부터 100까지 소수의 개수는 모두 25개이다.
소수는 1과 본인만 나눌 수 있다
소수를 판별하는 함수를 만들고 개수를 카운팅 하면 쉽게 풀이할 수 있다.
19~32번 라인은 소수를 구하는 함수이다.
34~48번 라인은 소수의 개수를 카운팅해서 출력까지 마무리하는 함수이다.
오타 또는 이해가 안 되는 부분이 있다면 댓글 부탁드리겠습니다!
다음 포스팅 때 뵙겠습니다! 감사합니다.
반응형
'C, C++ > C' 카테고리의 다른 글
[C언어] 구조체 배열을 이용해서 성적을 입력받는 프로그램 (0) | 2022.05.29 |
---|---|
[C언어] 2010년 버전 개인 프로젝트 주소록 프로그램 (스케치) - 1 (0) | 2021.05.10 |
[C언어] 1000이하의 친화수 구하는 프로그램 (0) | 2021.01.02 |
[C언어] 1을 1개 2를 2개... 출력하는 프로그램, 1, 1 2, 1 2 3,... 출력하는 프로그램 (0) | 2020.12.31 |
[C언어] 카프리카수 구하기, 네 자리 Kaprika수 구하기 프로그램 (2) | 2020.12.29 |