26.一个正整数如果恰好等于它的因子之和,这个数称为“完数”,如6=1+2+3,求1000以内所有的完数.

?#include<iostream>
using namespace std;

int main()
{
    for(int i=1;i<=1000;i++)
    {
        int sum=0;
        for(int j=1;j<i;j++)
        {
            if(i%j==0)
            {
                sum+=j;
            }
        }
        if(sum==i)
        {
            cout<<i<<" "<<endl;
        }
    }
    return 0;
}

26.一个正整数如果恰好等于它的因子之和,这个数称为“完数”,如6=1+2+3,求1000以内所有的完数.

时间: 2024-08-06 23:59:57

26.一个正整数如果恰好等于它的因子之和,这个数称为“完数”,如6=1+2+3,求1000以内所有的完数.的相关文章

一个数如果恰好等于它的因子之和,这个数就称为&quot;完数&quot;。 例如,6的因子为1、2、3,而6=1+2+3,因此6是&quot;完数&quot;。 编程序找出N之内的所有完数,

题目描述 一个数如果恰好等于它的因子之和,这个数就称为"完数". 例如,6的因子为1.2.3,而6=1+2+3,因此6是"完数". 编程序找出N之内的所有完数,并按下面格式输出其因子: 输入 N 输出 ? its factors are ? ? ? 样例输入 1000 样例输出 6 its factors are 1 2 3 28 its factors are 1 2 4 7 14 496 its factors are 1 2 4 8 16 31 62 124

题目:一个数如果恰好等于它的因子之和,这个数就称为 &quot;完数 &quot;。例如6=1+2+3.编程&#160;&#160;&#160;&#160; 找出1000以内的所有完数。

题目:一个数如果恰好等于它的因子之和,这个数就称为 "完数 ".例如6=1+2+3.编程     找出1000以内的所有完数. 1 package day11_2; 2 3 public class lianxi09 { 4 public static void main(String[] args) { 5 6 for (int i = 1; i < 1000; i++) { 7 int sum=0; 8 for (int j = 1; j <i; j++) { 9 10

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

package a; public class Wanshu { public static void main(String[] args) { for (int i = 1; i <= 1000; i++) { int sum=0; for (int j = 1; j < i; j++) { if(i%j==0) { sum+=j; } } if(i==sum) { System.out.println(i); } } } }

12.输入一个正整数,输出它所有的因子

#include<iostream>using namespace std;void YinZi(int n); int main(){ int n; cout<<"please input an number : "<<endl; cin>>n; YinZi(n); return 0;} void YinZi(int n){ for(int i=1;i<=n;i++) { if(n%i==0) cout<<i<&

第一章 基本概念_因子和。给一个正整数n,请求n所有因子的累加和

#include <stdio.h>//1172.因子和 #include <math.h> int main() {    long n;          int i, sum;          while(scanf("%d", &n)&&n!=0)        {              sum = 0;              if(n==1){printf("1\n");continue;}    

给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果。

问题描述:给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果.输入值小于1000.如,输入为10,程序应该输出结果为2.(共有两对质数的和为10,分别为(5,5),(3,7)) 附算法代码: public class PrimeNumber { //判断是否是质数 protected boolean isPrimeNumber(int num){ if(num == 2) return true;//2特殊处理 if(num < 2 || num % 2 == 0) r

输入一个正整数n,返回一个最小正整数m(m至少是2位数),使得m的各位乘积等于n,例如输入36,输出49,输入100,输出455,对于某个n不存在这样的m,请返回-1。

输入一个正整数n,返回一个最小正整数m(m至少是2位数),使得m的各位乘积等于n,例如输入36,输出49,输入100,输出455,对于某个n不存在这样的m,请返回-1. package hope20141002_01; import java.util.*; public class JingDong { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("

找出一定范围内多个连续整数,使其立方之和恰好等于另一个整数的立方

题目如图,关于这道题的第一问比较简单,只需验证式子两边是否相等即可.这里主要做一下第二问.  此题要求找出多个连续整数的立方和使其恰好等于另一个整数的立方,因为并没有明确给出相应的条件,比如起始项,项数等,所以找出所有结果并不现实.故将起始项a范围定位1~1000,项数n<=1000. 具体的实现思路很简单,先由两个for循环分别确定起始项和项数,通过立方和公式(此公式可自行推导)求出从a~a+n-1立方和,将其和取立方根,得到的立方根再取立方与立方和比较,若相同则输出. 关于代码中出现的立方和

一道笔试题-给定一个正整数序列,请尝试将它们重新排列使得排列的结果最大。

问题描述:给定一个正整数序列,请尝试将它们重新排列使得排列的结果最大,例如正整数序列为9,31,35,3,7则最大值为9735331. 思路分析:先将正整数序列转换为字符串数组,然后字符串数组进行排序,最后依次输出字符串数组即可.根据题目的要求,两个数字m和n排成的数字mn和nm,如果mn<nm,那么我们应该输出nm,也就是m应该排在n的后面,也就是m<n.反之,如果nm<mn,m排在n的前面,n<m.如果mn==mn,m等于n. 比较函数的定义是本解决方案的关键.这道题其实就是希