python函数判断完数,python找出完数

用Python编写程序,从键盘输入一个整数并判断该数的类别:其因数之和等于数字本身的数称为完全数?

import sys

创新互联是一家专注于网站设计、做网站与策划设计,铁门关网站建设哪家好?创新互联做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:铁门关等地区。铁门关做网站价格咨询:028-86922220

theNum = input('请输入一个数:')

try:

theNum = int(theNum)

except ValueError:

print("请输入一个整数!")

sys.exit()

# 因子

divisor = 1

# 因子的和

divisors = 0

# 求因子的和

while divisor theNum:

if theNum % divisor == 0:

divisors += divisor

divisor += 1

if divisors == theNum:

print("{} 是完全数!\n".format(theNum))

else:

if divisors theNum:

print("{0} 是丰沛数!\n".format(theNum))

else:

print("{0} 是不足数!\n".format(theNum))

python编写函数,实现判断正整数n是否是完数。若是,函数返回True,否则返回Flase

#include stdio.hint fun(int n) /*函数用来判断一个数是否是完全数.是就返回1. 不是返回0*/

{

int i,sum = 0;

for(i=1;in;i++)

{

if(n % i == 0) //如果i是n的因子. 就将i累加到sum中.

sum = sum + i;

}

if(sum == n) //判断n和sum是否相等.如果相等就说明这个数是完全数.返回1.

return 1;

return 0; //否则返回0;

}int main()

{

int i,t;

/*输入一个整数,判断这个数是否是完全数*/

scanf("%d", t);

if( fun( t ) )

printf( "Yes\n" );

else

printf( "No\n" );/*输出1000以内所有完全数*/

for(i = 1; i = 1000; i++)

{

if( fun( i ) )

printf("%d\t",i);

}

printf("\n");

return 0;

}

python显示输入数字之内的完全数

所谓完全数是指,如果一个数恰好等于它的因子之和,则称该数为“完全数”,又称完美数或完备数。

例如:第一个完全数是6,它有约数 1、 2、 3、 6,除去它本身6外,其余3 个数相加,1+2+3=6。 第二个完全数是28,它有约数 1、 2、 4、 7、 14、 28,除去它本身28外,其余5个数相加,1+2+4+7+14=28

#!/usr/bin/env python3

# -*- coding: utf-8 -*-

a = []

for i in range(1, 1000):

s = 0

for j in range(1, i):

if i % j == 0 and j i:

s += j

if s == i:

print(i)

a.append(i)

print("1000以内的完全数为: %s" % a)

运行结果如图所示


网站标题:python函数判断完数,python找出完数
网页路径:http://scyanting.com/article/dsihjgp.html