第10周项目5-输出完数

  1. /*  
  2.  * Copyright (c) 2014, 烟台大学计算机学院  
  3.  * All rights reserved.  
  4.  * 文件名称:test.cpp  
  5.  * 作    者:刘畅   
  6.  * 完成日期:2014年 11 月 3 日  
  7.  * 版 本 号:v1.0  
  8.  *  
  9.  * 问题描述:一个数如果恰好等于它的因子之和,这个数就称为“完数”。编程找出1000以内所有完数
  10. * 输入描述: 三个变量n,s;
  11.  * 程序输出:一个完数的所有因子i;
  12. */
  13. #include <iostream>
    using namespace std;
    int main()
    {
        int n, i, s;
        for (n = 2; n <= 1000; n++)
        {
            s = 0;
            for (i = 1; i < n; i++)
            {
                if ((n % i) == 0)
                    s = s + i;
            }
            if (s == n)
            {
                cout << n << "是一个完数" << endl;
                cout << "它的因子依次为:";
                for (i = 1; i < n; i++)
                    if (n % i == 0)
                        cout << i << " ";
                cout << endl;
    
            }
    
        }
        return 0;
    }
    


  14. 运行结果:

  15.  
  16. 知识点总结:
  17. 主要难点是for语句的嵌套和if后面的条件语句,搞定这两样,完数就在你眼前。
  18.  
  19. 学习总结:
  20. 姜果然还是老的辣,自己编的多出了一个24,不知道问题出在哪,贺老大手一挥,把内嵌的第二个for语句提前结束就搞定了;果然还是个菜鸟,得更加努力了,加油奋斗奋斗奋斗!!!!!!!!!!!!!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值