c語言完備數
❶ c語言求完全數
完全數,又稱完美數, 是一些特殊的自然數。它所有的真因子(即除了自身以外的約數的和(即因子函數),恰好等於它本身。如果一個數恰好等於它的真因子之和,則稱該數為「完全數」。第一個完全數是6,6=1 2 3=1+2+3.
❷ C語言求完全數~~
#include<stdio.h>
void isPerfect(int m){ //定義判斷一個數是否為完全數的函數isPerfect
int i,sum=0;
for(i=1;i<=m/2;i++){
if(m%i==0){
sum+=i;
}
}
if(sum==m){
printf("你輸入的這個數是完全數\n");
}
else
printf("你輸入的這個數不是完全數\n");
}
main(){
int a;
printf("請輸入一個整數a:\n");
scanf("%d",&a);
isPerfect(a);//調用這個函數
}
❸ c語言完全數問題
int main ()
{
int m,n,a,i,e,f;
scanf("%d %d",&m,&n);
int count=0;//統計m n之間一共多少個符合要求
for(i=m;i<=n;i++)
{
e=sqrt(i+100);//一個數加100
f=sqrt(i+268);//一個數加268
if ( (sqrt(i+100)==e)&& (sqrt(i+268)==f) )
{
count+=1;//計數
printf("%d ",i);//列印
}
}
if( count==0)
{
printf ("no");//在m n之間全部檢測結束,如果count依然等於0,才能列印no
}
return 0;
}
請採納,謝謝。
❹ c語言中求完全數
#include <stdio.h>
#include <math.h>
int main()
{
int a,i;
for(a=1;a<=1000;a++){
int A[100]={0},j;
j=0;
for(i=1;i<a;i++){ //i<sqrt(a) ——》並不是判定質數,需要找出除本身外所有因數
if(a%i==0){ //a/i==0 ——》/是求商,%才是取余
A[j]=i; //A[j]=a ——》A[j]應存儲的是a的因數,而不是它本身
j++;
}
}
int n,b;
n=j;
b=a;
for(j=j-1;j>=0;j--){
b=b-A[j];
}
if(b==0){
printf("%d=",a);
for(j=0;j<n-1;j++){
printf("%d+",A[j]);
}
printf("%d\n",A[j]);
}
}
return 0;
}
❺ 用c語言編寫出2到10000之間的完全數
思路:完全數(Perfect number),又稱完美數或完備數,是一些特殊的自然數。如果一個數恰好等於它的因子之和,則稱該數為「完全數」。先定義一個函數用於判斷一個數是否是完數,接著依次從2到10000循環判斷。
參考代碼:
#include<stdio.h>
intfun(intn){//判斷n是否是完數
inti,sum=0;
for(i=1;i<n;i++)
if(n%i==0)sum+=i;
if(sum==i)return1;
return0;
}
intmain()
{
inti;
for(i=2;i<10000;i++)
if(fun(i))
printf("%d",i);
return0;
}
/*
運行結果:
6284968128
*/
❻ 運用c語言輸出100以內所有的完全數
1、首先打開vs 2017軟體,打開一個准備好的工程,新建一個C語言文件,先寫入頭文件和main函數,裡面定義需要的用到的4個變數。
❼ c語言 完全數
#include<stdio.h>
void main()
{
int i,n;
int s=0;
printf("input a number N(1<N<=10000)\n");
while(scanf("%d",&n)!=1) //scanf的返回值是成功讀取的參數個數,輸入某個字元就退出循環了
{
s=0; //每次都要清零
for(i=1;i<=n;i++)
if(n%i==0)
s=s+i;
if(s==n) //if/else語句應該放在while循環體內,每次循環都會讀入一個數,每個數都要作判斷
printf("yes\n");
else
printf("no\n");
}
}
❽ c語言判斷完全數
#include<stdio.h>
intIsPerfect(intn)
{inti,s=1;
for(i=2;i<=n/2;i++)
if(n%i==0)s+=i;
returns==n;
}
intmain()
{intn;
scanf("%d",&n);
printf("%dis%saperfectnumber
",n,IsPerfect(n)?"":"not");
return0;
}