zoukankan      html  css  js  c++  java
  • 完全数

    完全数

    需求分析

    在学习C语言时我们也曾经接触过完全数,完全数所有的真因子的和,恰好等于它本身,所以要查找完全数只需比对该数是否满足该约束条件。

    功能设计

    • 基本功能:查找、判断并输出完全数
    • 扩展功能:输入一个区间的两个端点,判断该区间内是否存在完全数,根据判断输出相应的结果

    设计实现

    首先定义两个变量a,b,存储用户输入的区间头和尾,之后使用for循环遍历区间,逐个判断其真因子和是否等于它本身,如果有的话输出,同时计数变量count的值加一,最后判断计数变量count的值是否等于初值,如果相等说明区间内未找到完全数,输出提示“该区间内没有完全数”。

    测试运行

    正常情况

    输入图片说明

    异常情况

    输入图片说明

    核心代码

    
            for (int i=a;i<=b ;i++) {   //遍历a到b
                for(int j=1;j<i;j++){   //遍历比该数小的正整数
                    if(i%j==0) {        //如果j是i的因子
                        total = total + j;  //total是在循环外定义的,初值为0,用于计算真因子和
                    }
                }
                if(total==i){           //如果真因子和等于它本身
                    System.out.println(i);   //输出该数
                    count++;     //count初值为0,若找到则其不再为0,可用于判断该区间内是否有完全数
                }
                total=0;
            }
    
    

    总结

    在写第二个个人项目时,我先抓住问题的关键,即判断一个数的因子和是否与其本身相等,再围绕问题关键解决问题。我发现这样解决问题又快思路又清晰,虽然这是一个特别小的项目,代码只有几十行,但是在完成大的项目时这种方法依然适用且高效。

    PSP

    步骤 耗时(min) 百分比
    需求分析 5 8.3%
    设计 15 25%
    代码实现 15 25%
    测试 10 16.7%
    分析总结 15 25%
  • 相关阅读:
    NLPIR的语义分析系统
    [译] 12步轻松搞定python装饰器
    python实现爬取千万淘宝商品的方法_python_脚本之家
    Deep Learning(深度学习)学习笔记整理系列 | @Get社区
    那些年,曾经被我们误读的大数据
    值得关注的10个python语言博客
    淘宝的评论归纳是如何做到的?
    pycharm激活码
    Windows下配置Qt 5.8+opencv 3.1.0开发环境
    Ubuntu安装opencv3.1.0后配置环境变量
  • 原文地址:https://www.cnblogs.com/20175317zrw/p/10915929.html
Copyright © 2011-2022 走看看