java练习6. 求完数

题目: 请编程求出1000 以内的所有完数。

完数:一个数如果恰好等于它的所有真因子(即除了自身外的所有因数)之和,这个数就称为"完数"。

java 复制代码
public static void main(String[] args) {
        for (int i = 2; i < 1000; i++) {
            int sum=0;
            for (int j = 1; j <=i/2; j++) {
                if(i%j==0){
                    sum+=j;
                }
            }
            if (sum==i){
                System.out.println(i);
            }

        }
    }

利用双层循环,外层循环作为控制1000以内,内层循环用于控制因子,因为一个数不可能被大于自身一半的数整除,所以条件为 j<=i/

注意: 在第一层循环内要加一个 sum=0 ,每次都要重新求和

相关推荐
AllData公司负责人几秒前
【亲测好用】实时开发平台能力演示
java·c语言·数据库
pcm1235671 分钟前
设计C/S架构的IM通信软件(3)
java·c语言·架构
zz34572981131 分钟前
C语言基础概念7
c语言·开发语言
会开花的二叉树3 分钟前
Reactor网络库的连接管理核心:Connection类
开发语言·网络·php
凯子坚持 c6 分钟前
C++基于微服务脚手架的视频点播系统---客户端(1)
开发语言·c++·微服务
袖清暮雨6 分钟前
Python爬虫(Scrapy框架)
开发语言·爬虫·python·scrapy
2401_8384725115 分钟前
C++中的装饰器模式实战
开发语言·c++·算法
咖啡啡不加糖16 分钟前
Grafana 监控服务指标使用指南:打造可视化监控体系
java·后端·grafana
€81119 分钟前
Java入门级教程26——序列化和反序列化,Redis存储Java对象、查询数据库与实现多消费者消息队列
java·拦截器·序列化和反序列化·数据库查询·redis存储java对象·多消费者消息队列
沐知全栈开发22 分钟前
PHP 数组
开发语言