21xrx.com
2024-11-22 03:45:57 Friday
登录
文章检索 我的文章 写文章
C++实现三位数的水仙花数
2023-07-07 03:12:33 深夜i     --     --
C++ 三位数 水仙花数

水仙花数是指一个三位数的每个位上的数字的立方和等于该数本身的数,比如153就是一个水仙花数,因为1^3+5^3+3^3=153。本文将介绍如何使用C++语言来实现找到三位数的水仙花数。

首先,我们需要从100开始循环到999,因为题目要求是三位数。在循环体内,我们需要将该数的每一位数分离出来,可以使用取模和除法来实现。然后将每一位数立方后相加得到一个新的数,与原数比较,如果相等,则输出该数。

下面是实现的代码:


#include<iostream>

using namespace std;

int main()

{

  int num, sum, n;

  for (int i = 100; i < 1000; i++)

  {

    n = i;

    sum = 0;

    while (n != 0)

    {

      num = n % 10;

      sum += num*num*num;

      n /= 10;

    }

    if (sum == i)

      cout << i << " ";

  }

  return 0;

}

运行结果如下:


153 370 371 407

可以看到,输出了四个水仙花数。我们可以手动验证一下,153、370、371和407都符合水仙花数的定义。因此,我们可以确定该代码功能正确。

本文介绍了如何使用C++语言来实现一个找到三位数水仙花数的程序。通过这个程序,我们可以更加深入地理解循环和数字分离等相关的知识点,并且巩固了C++基础算法的学习。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复