本题要求实现一个计算整数因子和的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有完数。所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。

函数接口定义:


int factorsum( int number ); void PrintPN( int m, int n );

其中函数factorsum须返回int number的因子和;函数PrintPN要逐行输出给定范围[mn]内每个完数的因子累加形式的分解式,每个完数占一行,格式为“完数 = 因子1 + 因子2 + ... + 因子k”,其中完数和因子均按递增顺序给出。如果给定区间内没有完数,则输出一行“No perfect number”。

裁判测试程序样例:


#include <stdio.h> int factorsum( int number ); void PrintPN( int m, int n ); int main() { int m, n; scanf("%d %d", &m, &n); if ( factorsum(m) == m ) printf("%d is a perfect number\n", m); if ( factorsum(n) == n ) printf("%d is a perfect number\n", n); PrintPN(m, n); return 0; } /* 你的代码将被嵌在这里 */

输入样例1:

6 30

输出样例1:

6 is a perfect number
6 = 1 + 2 + 3
28 = 1 + 2 + 4 + 7 + 14

输入样例2:

7 25

输出样例2:

No perfect number

鸣谢杭州电子科技大学网络空间安全学院李丰同学修正数据!

题目如上:

代码如下:

a = input().split()
m = int(a[0])
n = int(a[1])
l = list()
l2 = list()
for i in range(m,n):              #从6 -30进行循环s = set()for j in range(1,i):         #内循环,从1开始到i-1止if i > j:               #如果i > j ,那么进行求余操作if i % j == 0:      #如果成立,加入数字到集合s.add(j)if sum(s) == i:  # 如果集合中的和加起来等于i,则输出if m == i:print("{} is a perfect number".format(m))  #就一个m,放前面,让他先输出print("{} = ".format(i), end="")l2 = list(s)        #把集合转换为列表,否则无法依次调用出来,也就没法输出for k in range(len(l2)):if k != len(l2)-1:print("{} + ".format(l2[k]),end='')  #如果不是最末尾那个,就这样输出else:print("{}".format(l2[k]))       #最后一个数字的输出方式
if l2 == []:print("No perfect number")

实验6-4 使用函数输出指定范围内的完数 (20 分)(python)相关推荐

  1. 习题6-3 使用函数输出指定范围内的完数 (20 分)

    本题要求实现一个计算整数因子和的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有完数.所谓完数就是该数恰好等于除自身外的因子之和.例如:6=1+2+3,其 ...

  2. 习题6-4 使用函数输出指定范围内的Fibonacci数 (20 分)

    本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有Fibonacci数.所谓Fibonacci数列就是满足任一项数 ...

  3. python编写一个判断完数的函数过程_第4章-30 找完数 (20分)python

    所谓完数就是该数恰好等于除自身外的因子之和.例如:6=1+2+3,其中1.2.3为6的因子.本题要求编写程序,找出任意两正整数m和n之间的所有完数. 输入格式: 输入在一行中给出2个正整数m和n(1 ...

  4. 输出指定范围内的完数

    题目要求 本题要求实现一个计算整数因子和的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有完数.所谓完数就是该数恰好等于除自身外的因子之和.例如:6=1+ ...

  5. [PTA]实验6-5 使用函数输出指定范围内的Fibonacci数

    Spring-_-Bear 的 CSDN 博客导航 本题要求实现一个计算 Fibonacci 数的简单函数,并利用其实现另一个函数,输出两正整数 m 和 n (0 < m ≤ n ≤ 10000 ...

  6. 使用函数输出指定范围内的Fibonacci数

    本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有Fibonacci数.所谓Fibonacci数列就是满足任一项数 ...

  7. fib函数用python编写求第n项_第6章函数-4 使用函数输出指定范围内Fibonacci数的个数|简明python教程|python入门|python教程...

    本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0 函数接口定义: 在这里描述函数接口.例如: fib(n),返回fib(n)的值 PrintFN(m, ...

  8. python使用函数输出指定范围内fibonacci数的个数_第6章函数-4 使用函数输出指定范围内Fibonacci数的个数...

    本题要求实现一个计算fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0 所谓fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列,fib(0) ...

  9. 6-2 使用函数输出指定范围内Fibonacci数的个数 (20 分)

    本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m<n≤100000)之间的所有Fibonacci数的数目. 所谓Fibonacci数列 ...

最新文章

  1. TCP握手和传输的一次观察
  2. 【网络安全】红蓝攻防:shellcode的分析
  3. c语言调用python3_linux下c语言调用python方法问题
  4. Spring-data-redis入门
  5. 工业用微型计算机(15)-指令系统(10)
  6. 马化腾定义腾讯是普通公司,这波重新定义“普通”可还行......
  7. python 反传播_岗位 | 滴滴急招反欺诈数据分析实习生(可转正)!字节跳动+德勤实习生项目热招中...
  8. CVE-2016-1240 Tomcat 服务本地提权漏洞
  9. 【java学习之路】(java框架)002.Git配置及使用
  10. python queue pip
  11. nlogn 求最长上升子序列 LIS
  12. .Net Micro Framework移植基础(包编译通过)
  13. 基于vue与element ui的vue-cron插件的使用及将定时任务cron表达式解析成中文
  14. 数据库查询之内连接,左连接,右连接
  15. 使用 Travis 将 GitHub 文件上传传至服务器
  16. 西电计算机考研历年分数线,西安电子科技大学研究生,西电历年考研分数线?...
  17. 虚拟试鞋行业分析及首篇论文解读
  18. TabLayout使用介绍
  19. Hibernate中:cannot simultaneously fetch multiple bags的问题
  20. 零基础如何学素描——什么是结构素描…

热门文章

  1. 数字图像处理学习笔记(一)
  2. h5 android 按钮键盘,【前端】Android 键盘顶起H5元素的问题
  3. 微信群打卡小程序_用微信小程序“小打卡”,打造免费的阅读平台!
  4. easy-table-vue+Vue、SpringBoot+Mybatis实现MVVM模型前后台数据交互
  5. 【转载】浮华背后与我的路
  6. Win7笔记本电脑启用虚拟WIFI共享上网
  7. PEEL——深度隐写信息去除攻击——PEEL: A Provable Removal Attack on Deep Hiding
  8. Linux系统编程 74 孤儿进程和僵尸进程
  9. 解决 hsdb jinfo jmap sa-jdi等mac不可用问题
  10. 严格身份证格式校验,真实身份证号校验方法文件CheckIdCardUtil.js