본문 바로가기

c언어 알고리즘 및 코드

암스트롱수, 소수, 완전수

#include <stdio.h>
#include <math.h>
int main(){
	int amstrong(int d);
    int a;
    int b;
    int c;
    for(int d=1; d<=999; d++){
    a=d%10;
        b=(d/10)%10;
        c=d/100;
        if(d==pow(a,3)+pow(b,3)+pow(c,3)){
        printf("%d암스트롱수 \n",d);
        }
		else
		{
        	printf("%d \n",d);
		}
 }

int perfect(int d);

 for(int i=1; i<=999; i++){
        int sum=0;
    for(int v=1; v<i; v++){
       if(i%v==0){
        sum+=v;
       }
    }
       if(sum==i){
        printf("완전수%d \n",i);
       }
    } 
	
int prime(int d);
	int i;
	int j;
	for (i=2; i<=999; i++){
		for (j=2; j<=i; j++){
			if (i % j == 0)
                break;
		}
		if (i==j)
		printf("소수%d \n", i);
	}
	return 0;
	printf("%d", amstrong);
	printf("%d", perfect);
	printf("%d", prime);
}

 

암스트롱수 - 암스트롱의 수는 세 자리의 정수 중에서 각 자리의 수를 세 제곱한 수의 합과 자신이 같은 수

완전수 - 자기 자신을 제외한 양의 약수 더했을 때 자기 자신이 되는 양의 정수

소수 - 1보다 큰 자연수 중 1과 자기 자신만을 약수로 가지는 수