Số hoàn hảo là số; có tổng các thừa số bằng 2 * số.
Thuật toán
Một thuật toán được giải thích bên dưới -
START Step 1: declare int variables and initialized result=0. Step 2: read number at runtime. Step 3: for loop i=1;i<=number;i++ Condition satisfies i. if(number%i==0) ii. result=result+i; Step 4: checking the sum of factors. i. if(result==2*number) ii. print perfect number iii. else print not perfect number STOP
Chương trình
Sau đây là chương trình C để tìm xem số đã cho có phải là số hoàn hảo hay không -
#include<stdio.h> int main(){ int number,i,result=0;//declare variables and initialize result to 0 printf("enter the number:"); scanf("%d",&number); for(i=1;i<=number;i++){ if(number%i==0) result=result+i; } if(result==2*number) //checking the sum of factors==2*number printf("perfect number"); else printf("not perfect number"); }
Đầu ra
Đầu ra được đưa ra bên dưới -
enter the number:28 perfect number enter the number:46 not perfect number