21xrx.com
2024-12-22 16:46:19 Sunday
登录
文章检索 我的文章 写文章
C++ while语句实现水仙花数
2023-06-28 14:34:49 深夜i     --     --
C++ while语句 水仙花数

水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。在C++语言中,可以使用while语句来实现水仙花数的求解。

如何使用while语句实现水仙花数的求解呢?首先我们需要了解while语句的基本语法。while语句的基本形式如下:


while (条件表达式)

  循环体语句;

while语句的执行步骤是这样的:首先计算条件表达式的值;如果该值为真,执行循环体语句,然后再次计算条件表达式的值;如果该值为假,则跳出while循环。

因此,我们可以使用如下的代码来实现水仙花数的求解:


#include <iostream>

using namespace std;

int main()

{

  int num, temp, remainder, sum = 0;

  cout << "请输入一个三位数: ";

  cin >> num;

  temp = num;

  while (temp != 0)

  {

    remainder = temp % 10;

    sum += remainder * remainder * remainder;

    temp /= 10;

  }

  if (sum == num)

    cout << num << "是水仙花数" << endl;

  else

    cout << num << "不是水仙花数" << endl;

  return 0;

}

上述代码中,首先用户输入一个三位数,然后将该数赋值给变量num。接着我们定义了变量temp、remainder和sum,temp用于保存num的值,remainder用于保存temp的个位数,sum用于保存每个位数的立方和。

接下来使用while语句进行循环操作,在循环体中,使用取模运算和除法运算分别计算出temp的个位数和十位数,然后将这些位数的立方相加,计算出总的立方和。最后,通过判断sum是否与num相等,来确定当前的数是否为水仙花数,并输出相应的结果。

通过这种方法,我们可以很方便地使用while语句来实现水仙花数的求解。当然,在实际的编程过程中还需要注意一些细节问题,例如输入的数字必须是三位数等。但是无论如何,我们都可以通过while语句,以一种简单而又高效的方式来完成数值计算任务。

  
  

评论区

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