鱼C论坛

 找回密码
 立即注册
查看: 2316|回复: 3

[已解决]水仙花数代码哪里错了

[复制链接]
发表于 2023-10-18 19:26:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
        int a,b,c,d;
        b=a/100;
        c=a/10%10;
        d=a-100*b-10*c;
        for(int i=100;i<=999;i++)
        {
                if(a==pow(b,3)+pow(c,3)+pow(d,3))
                {
                        cout<<a<<endl;
                }
       
        }
        return 0;
}
最佳答案
2023-10-18 19:26:55
代码中存在几个问题:

1. 变量a没有被赋值,所以无法计算a的值。需要在for循环中为a赋值。

2. 变量a应该在for循环内部进行赋值,以便每次循环都能计算不同的a值。

3. 变量b、c、d的计算应该在for循环内部进行,以便每次循环都能计算对应的b、c、d值。

下面是修改后的代码:

  1. #include<iostream>
  2. #include<cmath>
  3. using namespace std;
  4. int main()
  5. {
  6.     for(int a=100;a<=999;a++)
  7.     {
  8.         int b=a/100;
  9.         int c=a/10%10;
  10.         int d=a-100*b-10*c;
  11.         if(a==pow(b,3)+pow(c,3)+pow(d,3))
  12.         {
  13.             cout<<a<<endl;
  14.         }
  15.     }
  16.     return 0;
  17. }
复制代码


这段代码会输出所有满足水仙花数条件的数。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-26 03:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表