首页 > 编程语言 >编程找出 1000 以内的所有完数

编程找出 1000 以内的所有完数

时间:2023-05-16 11:56:33浏览次数:40  
标签:perfect 编程 list number range 完数 factor 1000

一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6=1+2+3.编程找出 1000 以内的所有完数。

perfect_number_list = []
 
for perfect_number in range(2, 1000):
    # 找出一个数的所有因子,加入到因数列表里
    factor_list = []
    for factor in range(1, perfect_number):
        if perfect_number % factor == 0:
            factor_list.append(factor)
 
    # 求出这个数的因子之和,用summing表示
    summing = 0
    for i in range(len(factor_list)):
        summing += factor_list[i]
 
    # 判断这个数和因子之和是否相等
    if perfect_number == summing:
        perfect_number_list.append(perfect_number)
        for i in range(len(factor_list)):
            if i == 0:
                print(f'{perfect_number} = {factor_list[i]}', end='')
            if 0 < i <= len(factor_list) - 1:
                print(f'+{factor_list[i]}', end='')
        print('\n')
 
print(f'1000以内的所有完数有:{perfect_number_list}')

  

标签:perfect,编程,list,number,range,完数,factor,1000
From: https://www.cnblogs.com/sangern/p/17404503.html

相关文章

  • shader编程基础:画线
    以sin曲线为例,任何函数曲线画法类似。画线原理虽然十分简单,却是复杂图形曲线绘制的基础。uv和smoothstep等函数不清楚请参考跳转链接:shader编程基础:画圆#defineT.01voidmainImage(outvec4fragColor,invec2fragCoord){ vec2uv=(fragCoord.xy-0.5*iResoluti......
  • 基于FPGA的点阵屏设计,基于Quartus ii开发,Verilog编程语言,也可移植到vivado开发。
    基于FPGA的点阵屏设计,基于Quartusii开发,Verilog编程语言,也可移植到vivado开发。1、可以显示多个汉字2、暂停、启动控制3、左移右移控制4、调速控制。ID:78800675311255672......
  • 电力系统暂态稳定性Matlab编程/ Simulink仿真 单机无穷大系统发生
    电力系统暂态稳定性Matlab编程/Simulink仿真单机无穷大系统发生各类(三相短路,单相接地,两相接地,两相相间短路)等短路故障,各类(单相断线,两相断线,三相断线)等断线故障,暂态稳定仿真分析1.Matlab编程进行数值分析(采用欧拉法Euler,改进欧拉法improveEuler,4阶龙格库塔法Runger-Kutta),计算故障......
  • 电力系统静态稳定性仿真Matlab编程/simulink仿真 1.用Matlab
    电力系统静态稳定性仿真Matlab编程/simulink仿真1.用Matlab编程,把转子运动方程(摇摆方程)在运行点处线性化,采用小信号分析法,对线性化之后状态方程的系数矩阵求解特征值,根轨迹,通过特征值的特点来判断系统稳定性。2.用simulink搭建搭建单机无穷大系统,对其静态稳定性进行仿真分析。YID:......
  • 3机9节点系统暂态稳定Matlab编程/simulink仿真 1.Matlab编程计
    3机9节点系统暂态稳定Matlab编程/simulink仿真1.Matlab编程计算摇摆曲线,得到3机9节点系统中3台发电机的功角曲线以及转速曲线,通过分析各发电机之间的功角差和转速差来分析系统暂态稳定性。2.基于Simulink平台,搭建3机9节点系统,通过时域仿真,得到三台机组的功角曲线和转速差曲线,以此......
  • 电力系统静态稳定性仿真Matlab编程/simulink仿真 1.用Matlab编程,把转子
    电力系统静态稳定性仿真Matlab编程/simulink仿真1.用Matlab编程,把转子运动方程(摇摆方程)在运行点处线性化,采用小信号分析法,对线性化之后状态方程的系数矩阵求解特征值,根轨迹,通过特征值的特点来判断系统稳定性。2.用simulink搭建搭建单机无穷大系统,对其静态稳定性进行仿真分析。ID:2......
  • 三段式电流保护Matlab编程/ Simulink仿真 1. Matlab编程计算三段式
    三段式电流保护Matlab编程/Simulink仿真1.Matlab编程计算三段式电流保护的整定值,并进行灵敏度校验;2.Simulink搭建仿真模型,对三段式电流保护模型进行仿真分析。ID:47100675825813651......
  • 基于粒子群算法的配网重构/ Matlab编程 以配电网络中网损最小作为目标
    基于粒子群算法的配网重构/Matlab编程以配电网络中网损最小作为目标函数,通过粒子群算法求得使系统网损最小时的网络拓扑结构。注:下图为程序在IEEE33节点配网系统上的仿真结果图ID:31200676737927322......
  • 电力系统暂态稳定性Matlab编程/ Simulink仿真 单机无穷大系统发生
    电力系统暂态稳定性Matlab编程/Simulink仿真单机无穷大系统发生各类(三相短路,单相接地,两相接地,两相相间短路)等短路故障,各类(单相断线,两相断线,三相断线)等断线故障,暂态稳定仿真分析1.Matlab编程进行数值分析(采用欧拉法Euler,改进欧拉法improveEuler,4阶龙格库塔法Runger-Kutta),计算故障......
  • m基于matlab的模糊控制器仿真实现,采用matlab编程方式定义模糊规则,隶属函数等
    1.算法仿真效果matlab2022a仿真结果如下:    2.算法涉及理论知识概要       利用模糊数学的基本思想和理论的控制方法。在传统的控制领域里,控制系统动态模式的精确与否是影响控制优劣的最主要关键。系统动态的信息越详细,则越能达到精确控制的目的。    ......