117.info
人生若只如初见

c++中怎么用for循环求水仙花数

水仙花数是指一个n位数,其每个位上的数字的n次幂之和等于它本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。

下面是使用for循环来求水仙花数的示例代码:

#include 
#include 

int main() {
    int num, n, digit, sum;
    
    for(num = 100; num < 1000; num++) {
        n = 0;
        sum = 0;
        int temp = num;
        
        // 计算num的位数
        while(temp != 0) {
            temp /= 10;
            n++;
        }
        
        temp = num;
        
        // 求每个位上的数的n次幂之和
        while(temp != 0) {
            digit = temp % 10;
            sum += pow(digit, n);
            temp /= 10;
        }
        
        // 判断是否是水仙花数并输出
        if(num == sum) {
            std::cout << num << " ";
        }
    }
    
    return 0;
}

此代码会输出所有的三位数水仙花数,即153、370、371、407。您可以根据需要修改循环的范围和位数来求不同位数的水仙花数。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe5a1AzsICAFSB1A.html

推荐文章

  • 怎么使用c#来读取数据

    使用C#读取数据可以通过以下步骤: 导入所需的命名空间。 using System;
    using System.IO; 创建一个StreamReader对象来读取数据。 StreamReader reader = n...

  • C++回调函数的作用是什么

    C++回调函数的作用是允许将一个函数作为参数传递给另一个函数,并在需要时被调用。回调函数可以提供一种灵活的方式来实现事件处理、异步操作、事件监听等功能。<...

  • C#多线程并发处理的方法是什么

    C#中实现多线程并发处理的方法有以下几种: Thread类:使用Thread类可以创建和控制线程。可以使用Thread.Start()方法开始一个新线程,并使用Thread.Join()方法等...

  • c#委托回调的方法是什么

    在C#中,委托回调的方法可以是任何符合委托类型定义的方法。委托类型定义了方法的参数和返回值类型。可以使用委托类型来声明委托变量,并将一个或多个方法的引用...

  • php中enum的用法是什么

    在PHP中,没有内置的枚举(enum)类型,但可以通过定义常量来模拟枚举的功能。使用常量来表示枚举值可以使代码更易读和维护。
    以下是一个示例代码来模拟枚举...

  • Torch中怎么预处理数据

    在 Torch 中,可以使用 torchvision.transforms 模块来对数据进行预处理。常见的数据预处理操作包括: 图片缩放和裁剪:使用 transforms.Resize 和 transforms.C...

  • Keras怎么处理不同的深度学习任务

    Keras是一个易于使用的深度学习库,可以用来处理各种不同的深度学习任务。以下是一些常见的深度学习任务和Keras如何处理它们的示例: 图像分类:Keras提供了一些...

  • Db2中怎么执行故障诊断和问题排查

    在Db2中执行故障诊断和问题排查通常需要以下步骤: 使用Db2的日志文件进行故障诊断:Db2会记录数据库的运行日志,包括错误信息、警告信息等。通过查看日志文件可...