首页 > 其他分享 >阿姆斯特朗数

阿姆斯特朗数

时间:2023-05-15 20:12:18浏览次数:28  
标签:10 cout int && 100 阿姆斯特朗

如果一个整数等于其各个数字的立方和,则该数称为“阿姆斯特朗数”(亦称为自恋性数)。如153=1^3+5^3+3^3就是一个“阿姆斯特朗数”。试编程求1000以内的所有“阿姆斯特朗数”。

阿姆斯特朗数不同于水仙花数是求所有满足一个整数等于各个数字的立方和的数,而求1000以下的阿姆斯特朗数我们只需求水仙花数和和两位数是否满足该条件的数即可。

#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cout<<"1000以下的阿姆斯特朗数有:"<<endl;
for(int i=0;i<1000;i++)
{
if(i>10&&i<=100)
{
a=i/10;
b=i%10;
if(i==a*a*a+b*b*b)
{
cout<<i<<endl;
}
}
else if(i>100&&i<1000)
{
a=i/100;
b=i/10%10;
c=i%10;
if(i==a*a*a+b*b*b+c*c*c)
{
cout<<i<<endl;
}
}
}
return 0;
}

运行结果为:

 

标签:10,cout,int,&&,100,阿姆斯特朗
From: https://www.cnblogs.com/618zyk/p/17391620.html

相关文章

  • day 26 阿姆斯特朗数
     1.用数组储存数M;2.循环遍历,找到所有的M;3.输出M #include<iostream>usingnamespacestd;intg(intnum){intflag=0;inta[10];intsum=0;intNum=num;for(;num>0;flag++){a[flag]=num%10;sum+=a[flag]*a[flag]*a[flag];......
  • 阿姆斯特朗数
    自然语言解决问题:“阿姆斯特朗数”与上例中的“水仙花数”的不同在于,前者并没有规定几位数,从两者的定义来看“水仙花数”可以看做是“阿姆斯特朗数”的一个子集。对于这类问题的算法与“水仙花数”类似,即需要把每一位分离出来,然后比较其立方和与原数是否相等流程图: 具体代码:......
  • 阿姆斯特朗数
    一问题描述  一个数的各个位数的立方和为它本身。在1000内二设计思路 从0-1000遍历,让每个数的各位三次方相加,判断和是否等于原数。三程序流程图四伪代码实现#include<bits/stdc++.h.>usingnamespacestd;intmain(){ intx=0; for(inti=0;i<1000;i++) { intt=i; ......
  • 阿姆斯特朗数
    一问题描述一个数的各个位数的立方和为它本身。在1000内二设计思路先求出数的位数再通过情况进行对各个位数的求出。三程序流程图 四伪代码实现#include<iostream>usingnamespacestd;intmain(){ intx,y,z,i; for(x=0;x<1000;x++){ y=x; for(i=1;i<=4;i++){ y=y/10;......
  • 阿姆斯特朗数
    一、问题描述:  二、设计思路:  三、程序流程图: nc  四、代码实现......
  • 阿姆斯特朗数
    1.问题描述如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数。例如1^3+5^3+3^3=153试编程求1000以内的所有阿姆斯特朗数2.问题分析其实和水仙花数一样,只需要把每个位置的数分离出来,然后算一下立方和,如果等于原数,就可以输出3.算法设计先搞一个数组,......
  • C语言:水仙花数:阿姆斯特朗数 也就是俗称的 水仙花数 ,是指一个三位数,其各位数字的立方和
    #include<stdio.h>main(){inta,b,c,i;for(a=1;a<=9;a++)for(b=0;b<=9;b++)for(c=0;c<=9;c++)if(a*a*a+b*b*b+c*c*c==a*100+b*10+c)printf(......