21xrx.com
2024-11-25 11:14:53 Monday
登录
文章检索 我的文章 写文章
C++语言编写水仙花数函数程序
2023-07-01 11:05:28 深夜i     --     --
C++ 水仙花数 函数 程序

水仙花数是指一个三位数,其各位数字立方和等于其本身。例如,153就是一个水仙花数,因为1³+5³+3³=153。若要判断一个数是否为水仙花数,可以使用C++语言编写一个函数程序。

首先,在C++语言中,可以定义一个函数来判断给定的数是否为水仙花数。定义如下:


int isNarcissisticNumber(int num) {

  int sum = 0;

  int temp = num;

  while (temp > 0) {

    int remainder = temp % 10;

    sum += remainder * remainder * remainder;

    temp /= 10;

  }

  if (num == sum)

    return 1;

   else

    return 0;

  

}

上述函数isNarcissisticNumber中,参数num代表要判断的数,在函数中使用while循环分离num的每个位,再利用这些位的立方和与原数比较,来判断该数是否为水仙花数。如果是,函数返回1;否则返回0。

接下来,编写一个主函数来调用isNarcissisticNumber函数,输出所有三位水仙花数。代码如下:


#include <iostream>

using namespace std;

int isNarcissisticNumber(int num) {

  int sum = 0;

  int temp = num;

  while (temp > 0) {

    int remainder = temp % 10;

    sum += remainder * remainder * remainder;

    temp /= 10;

  }

  if (num == sum)

    return 1;

   else

    return 0;

  

}

int main() {

  cout << "All narcissistic numbers between 100 and 999:" << endl;

  for (int i = 100; i <= 999; i++) {

    if (isNarcissisticNumber(i))

      cout << i << endl;

    

  }

  return 0;

}

上述主函数遍历所有三位数,调用isNarcissisticNumber函数来判断是否为水仙花数。如果是,则输出该数。

运行上述代码,便可得到所有三位水仙花数的输出。这便是使用C++语言编写水仙花数函数程序的实现方法。

  
  

评论区

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