• 算法练习:水仙花数、完全数、相亲数


    输出所有水仙花数
    一个三位数,每位的立方之和为其数本身

     1            for (int i = 100; i <= 999; i++)
     2            {
     3
     4                if (Math.Pow(i / 1003+
     5                        Math.Pow((i / 10- (i / 100* 103+
     6                                Math.Pow(i - i / 10 * 103== i)
     7                {
     8                    System.Console.WriteLine(
     9                        "{0}:[{1}|{2}|{3}]", i, i / 100, (i / 10- (i / 100* 10, i - i / 10 * 10);
    10                }

    11            }



    输出10000以内的完全数
    又称完美数,它是指真因子之和等于自身的自然数

     1            for (int i = 1; i <= 10000; i++)
     2            {
     3                int k = 0;
     4                for (int j = 1; j <= i - 1; j++)
     5                {
     6                    if ((i % j) == 0)
     7                    {
     8                        k += j;
     9                    }

    10                }

    11                if (k == i)
    12                {
    13                    System.Console.WriteLine(i);
    14                }

    15            }




    输出10000以内的相亲数
    两个正整数,X的真因子之和等于Y的真因子之和
     1            for (int i = 1; i <= 10000; i++)
     2            {
     3                int x = i;//X为初值
     4                int y = 0;
     5                for (int j = 1; j <= x - 1; j++)//计算X的真因子
     6                {
     7                    if ((x % j) == 0)
     8                    { y += j; }
     9                }
    //Y=X的真因子之合
    10                if (y == x)//完美数
    11                continue; }
    12                x = 0;
    13                for (int j = 1; j <= y - 1; j++)//计算Y的真因子
    14                {
    15                    if ((y % j) == 0)
    16                    { x += j; }
    17                }
    //X=Y的真因子之合
    18                if (x == i)
    19                {
    20                    System.Console.WriteLine("{0}--{1}", x, y);
    21                }

    22            }
  • 相关阅读:
    论自己电脑如何搭建服务器
    nodejs + express + art-template + mongodb简单项目
    npm和yarn使用
    Linux内核编译
    Linux 网络编程
    Linux进程管理
    LeetCode1576. 替换所有的问号
    LeetCode392. 判断子序列
    LeetCode674. 最长连续递增序列
    剑指 Offer 48. 最长不含重复字符的子字符串
  • 原文地址:https://www.cnblogs.com/shyleoking/p/635591.html
Copyright © 2020-2023  润新知