完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的因子之和,则称该数为“完全数”。第一个完全数是6,第二个完全数是28,第三个完全数是496,后面的完全数还有8128、33550336等等。


C++ 寻找完数

题目描述
要求1000以内

输入

输出

1=1
6=1+2+3

#include<iostream>
using namespace std;
int main()
{cout<<"1=1"<<endl;  //讲道理除了数字本身,那就不应该有1,但是输出样例有咱们就补上for(int i=2;i<=1000;i++){int sum = 0; //用于存储因子的和for(int j=1;j<i;j++)    {       if(i%j==0)    //从1开始看,能被整除的数就是因子,用sum存起来{sum+=j;}}if(sum == i)  //如果因子和等于原数,那就是完数{cout<<i<<"=1";for(int j=2;j<i;j++)    //再遍历一次,输出完数{if(i%j==0)cout<<"+"<<j;}cout<<endl;}}return 0;
}

Java

题目内容
   一个正整数的因子是所有可以整除它的正整数。而一个数如果恰好等于除它本身外的因子之和,这个数就称为完数。例如6=1+2+3(6的因子是1,2,3)。
现在,你要写一个程序,读入两个正整数n和m(1<=n<m<=1000),输出[n,m]范围内所有的完数。
提示:可以写一个函数来判断某个数是否是完数。

输入格式
两个正整数,以空格分隔。

输出格式
其间所有的完数,以空格分隔,最后一个数字后面没有空格。如果没有,则输出一个空行。

输入样例

1 10

输出样例

6

答案1

import java.util.Scanner;public class Main {private static Scanner in;//PerfectNumber验证是否是完数 public static int PerfectNumber(int i) {int sum=0;for(int j=1;j<i;j++){if(i%j==0)sum+=j;}return sum;}public static void main(String[] args) {in=new Scanner(System.in);int m=0,n=0;n=in.nextInt();m=in.nextInt();int i=0;int count=0;for(i=n;i<=m;i++){if(PerfectNumber(i) ==i){count++;}}for(i=n;i<=m;i++) {if(PerfectNumber(i) ==i){System.out.print(i);if(count!=1)System.out.print(" ");count--;}}}
}

答案2

import java.util.Scanner;public class Main {private static Scanner in;private static int [] arrs;public static Boolean perfectnumber(int a) {int sum=0;for(int j=1;j<a;j++){if(a%j==0)sum+=j;}if(sum==a)return true;elsereturn false;}public static void main(String[] args) {in = new Scanner(System.in);int a,b,count=0;a=in.nextInt();b=in.nextInt();arrs = new int [b+1];for(int i=a;i<=b;i++) {if(perfectnumber(i)==true) {arrs[i]=1;count++;}}for(int i=a;i<=b;i++) {if(arrs[i]==1) {System.out.print(i);if(count>1) {System.out.print(" ");count--;}}}System.out.println();}}

C++ 寻找完数 | Java 完数相关推荐

  1. 卡特兰数 java,Catalan数(卡特兰数)

    由于Catalan数经常会在算法题或面试题中出现,在这里做一下小小的总结. 介绍 Catalan数是组合数学中一个常在各种计数问题中出现的数列.一般项公式为 Cn的另一个表达形式为 一般来讲,我们编程 ...

  2. java冰雹数10_蓝桥杯 冰雹数

    蓝桥杯 冰雹数 Java 冰雹数 任意给定一个正整数N, 如果是偶数,执行: N / 2 如果是奇数,执行: N * 3 + 1 生成的新的数字再执行同样的动作,循环往复. 通过观察发现,这个数字会一 ...

  3. 1000以内完数Java程序

    1000以内完数Java程序编写: public class lei1 { /*** @param args*/ public static void main(String[] args) {// ...

  4. Java实现查找2-60以内的完数和盈数

    package Four; /** 一个数,如果恰好等于它的各个因子(该数本身除外)之和,如6=3+2+1,那么称该数为完数* 若因子之和大于该数,则称其为"盈数",求2到60之间 ...

  5. java完数有哪些1是吗,Java找出1000以内的所有完数

    完全数:(Perfect Number)又称完美数或完备数,是一些特殊的自然数.它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身.如果一个数恰好等于它的因子之和,则称该数为&q ...

  6. (篇六)C语言求自首数、完数、亲密数

    文章目录 一.求自首数 二.求完数 三.求亲密数 本篇主要介绍C语言中求自首数.完数和自然常数e的求解算法 一.求自首数 1.自首数: 自守数是指一个数的平方的尾数等于该数自身的自然数. 自首数是按位 ...

  7. 九度OJ 1060:完数VS盈数 (数字特性)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:5590 解决:2093 题目描述: 一个数如果恰好等于它的各因子(该数本身除外)子和,如:6=3+2+1.则称其为"完数" ...

  8. 如果一个数等于它的因子之和,则称该数为“完数”(或“完全数”)。例如,6的因子为1、2、3,而6=1+2+3,因此6是“完数”。编程找出1000之内的所有完数。

    如果一个数等于它的因子之和,则称该数为"完数"(或"完全数").例如,6的因子为1.2.3,而6=1+2+3,因此6是"完数".编程找出10 ...

  9. JavaScript 求1000以内的完数(完美数)

    1.什么是完数(完美数)? 完数,一般指完全数,一个自然数如果它的所有真因子(即除了自身以外的约数)的和等于该数,那么这个数就是完全数,如:6的真因子有1 .2.3,6=1+2+3,所以6是一个完全数 ...

最新文章

  1. c/c++字符串混淆工具
  2. java诸神之战游戏_mj回溯算法 - osc_7bgz0no1的个人空间 - OSCHINA - 中文开源技术交流社区...
  3. ASP.NET WebHooks RC 1发布
  4. php文件解锁,php文件锁怎么用
  5. 批量添加后缀_掌握这 6 个批量处理技巧,少做 80% 的无用功!
  6. Spring Cloud Config - RSA简介以及使用RSA加密配置文件
  7. java ftl crud_使用JDBC完成CRUD(增删改查)
  8. CCCC-GPLT L3-015. 球队“食物链” 团体程序设计天梯赛
  9. array variable used in printf function
  10. ping命令的作用。
  11. 对信号与系统课程中Python语言的作业
  12. 线性规划图解法求最优解_线性规划的图解法6.ppt
  13. DevOps元素周期表
  14. Sense 406错误
  15. 下跌趋势底背驰的几种经典信号
  16. txt改html 打开不显示不全,哪位大佬帮我改一下JS谢谢,txt改html网页直接显示的,感激不尽,现在的源码只能看......
  17. aho-corasick php,Aho-Corasick自动机浅析
  18. 2014年中款MacBook Pro 更换CPU散热硅脂再战5年
  19. Excel—PAPAYA电脑教室
  20. wod我的博客开通了

热门文章

  1. 丘比特 脱单攻略之女神倒追
  2. eclipse右键之后卡死
  3. LCG随机算法在不同编程语言中的一个注意点
  4. Android之AlertDialog(弹出式对话框)的使用
  5. Spring Boot2 redis
  6. STM32F407ZGT6的串口通信
  7. BlackBerry简单计数器
  8. 读书笔记:《自卑与超越》
  9. 自荐信当计算机课代表,北邮自主招生自荐信
  10. 手工打造C#IDE环境(一):万事开头难