zoukankan      html  css  js  c++  java
  • HDU2010 水仙花数【进制+趣味程序】

    问题链接HDU2010 水仙花数

    问题简述参见上述链接。

    问题分析这里采用了与多数人不一样的计算立方和的方法,从个位开始逐位取出数字,来计算各位的立方和。

    程序说明(略)。

    参考链接I00012 打印三位数的水仙花数及其个数


    AC的C语言程序如下:

    /* HDU2010 水仙花数 */
    
    #include <stdio.h>
    
    int main(void)
    {
        int m, n, count, i, t;
    
    
        while(scanf("%d%d", &m, &n) != EOF) {
            // 水仙花数计数清零
            count = 0;
    
            for(i=m; i<=n; i++) {
                // 计算立方和:从个位、十位到百位分别计算求和
                int sum = 0;
                t = i;
                while(t) {
                   int t2 = t % 10;
                   sum += t2 * t2 * t2;
    
                   t /= 10; // 去掉个位
                }
    
                // 输出结果
                if(sum == i) {
                    if(count > 0)
                        printf(" ");
                    printf("%d", i);
    
                    count++;
                }
            }
    
            // 输出结果(没有水仙花数)和换行
            if(count == 0)
                printf("no");
            printf("
    ");
        }
    
        return 0;
    }


  • 相关阅读:
    访问者模式
    解释器模式
    享元模式
    职责链模式
    中介者模式
    单例模式
    桥接模式
    命令模式
    迭代器模式
    Python 学习笔记15 类
  • 原文地址:https://www.cnblogs.com/tigerisland/p/7564698.html
Copyright © 2011-2022 走看看