其实判断水仙花数的问题并不复杂,但是又很多的朋友都不太了解水仙花数 水仙花数代码怎么写,因此呢,今天小编就来为大家分享判断水仙花数的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
一、“水仙花数”C语言程序
1、if(i==(num_0*num_0*num_0+num_1*num_1*num_1+num_2*num_2*num_2))
2、自幂数是指一个 n位数,它的每个位上的数字的 n次幂之和等于它本身。
3、n为1时,自幂数称为独身数。显然,0,1,2,3,4,5,6,7,8,9都是自幂数。
4、n为3时,自幂数称为水仙花数,有4个:153,370,371,407;
5、n为4时,自幂数称为四叶玫瑰数,共有3个:1634,8208,9474;
6、n为5时,自幂数称为五角星数,共有3个:54748,92727,93084;
7、n为6时,自幂数称为六合数,只有1个:548834;
8、n为7时,自幂数称为北斗七星数,共有4个:1741725,4210818,9800817,9926315;
9、n为8时,自幂数称为八仙数,共有3个:24678050,24678051,88593477;
10、n为9时,自幂数称为九九重阳数,共有4个:146511208,472335975,534494836,912985153;
11、n为10时,自幂数称为十全十美数,只有1个:4679307774。
二、VB编程水仙花数
VB实现水仙花数的程序代码如下:
If a^3+ b^3+ c^3= num Then Print num
1、启动VB程序,新建一个标准exe工程
2、在窗体上绘制一个命令按钮(名称:Command),双击命令按钮进入代码窗口。
3、接下来开始编写命令按钮的单击事件。点击事件要实现的内容就是上面提供的程序代码。
4、按F5运行程序,点击命令命令按钮,输出的水仙花数共有4个:153,370,371,407。
printf("'waterflower'numberis:");
三、vfp编程题~~~水仙花数的个数
main()-----有些C编译器,可能还要你在前面写上void
printf("100到999的水仙花数分别是:\n");
a++;----这个地方有问题,不能先改变这个a,得等与d比较完成后才能变
d=d+c*c*c;--------d的初值应该放在内循环的外面,不能放在外循环的外面.
void main()---如果你的编译器没问题,可不加void
printf("100到999的水仙花数分别是:\n");
水仙花数是指一个 n位数( n≥3),它的每个位上的数字的 n次幂之和等于它本身。(例如:1^3+ 5^3+ 3^3= 153)
三位的水仙花数共有4个:153,370,371,407;
四位的水仙花数共有3个:1634,8208,9474;
五位的水仙花数共有3个:54748,92727,93084;
六位的水仙花数只有1个:548834;
七位的水仙花数共有4个:1741725,4210818,9800817,9926315;
八位的水仙花数共有3个:24678050,24678051,88593477
以下为在各种编程语言中实现求取水仙花数的方法。
if(pow($a,3)+pow($b,3))+pow($c,3)==$i)
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
if a*a*a+b*b*b+c*c*c=100*a+10*b+c then writeln(100*a+10*b+c);
if b*b*b+c*c*c+d*d*d=a then writeln(a);
◆Visual Basic的"水仙花数"实现代码:
Dim a, b, c As Integer'a(个)b(十)c(百)
If a ^ 3+ b ^ 3+ c ^ 3= a+ 10* b+ 100* c Then
◆FORTRAN的"水仙花数"实现代码:
IF(K.NE.IA**3+IB**3+IC**3) GOTO 10
30 FORMAT(5X,18HN=I**3+J**3+K**3)
◆C++编译器上的水仙花数实现代码
cout<<a<<"是水仙花数"<<endl;}
#include<iostream.h>//求n位c++代码
cout<<"Enter i"<<endl;
{m=x%10;sum+=(pow(m,i));x=(x-m)/10;k++;
if(sum==y) cout<<y<<endl;
if i*100+j*10+k==i*i*i+j*j*j+k*k*k:
public static void main(String[] args){
if(i*i*i+j*j*j+k*k*k== 100*i+10*j+k)
System.out.print(i*100+j*10+k+"");
for(int i= 100; i< 1000; i++)
if(i== bai* bai* bai+ shi* shi* shi+ ge* ge* ge)
Response.Write("水仙花数:"+ i+"<br>");
◆javascript+html实现水仙花可变位数的运算:
<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0 Transitional//EN""">
<html xmlns="">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<title>无标题文档</title>
<script type="text/javascript">
var valnum=parseInt(document.frm.input.value);
//求得符合参量位数的最大值和最小值
var highnum=Math.pow(10,valnum)-1;
var lownum=Math.pow(10,valnum-1);
var output="共有个数:",res_str="";
//a为i分解为数组的下脚值,num为符合规则的水仙花的个数
for(i=lownum;i<=highnum;i++){
//res为水仙花数规则值,即n位的数的每位数的n次幂的和,预置为0
//分解出当前i的每位数并存如数组
var new_i=i.toString().split("");
res=Math.pow(parseInt(new_i[a]),valnum)+res;
//判断符合水仙花数的个数,如符合则将水仙花数并入输出队列
res_str=res_str+"<br>"+res;
if(valnum<3){output="你输入了无效位数!";}
else{output=output+num+res_str;}
document.getElementById("divnum").innerHTML=output;
<body><form name="frm">
<label>请输入水仙花的位数(N>=3):</label><input type="text" name="input" value="">
<input value="运算" type="button" onclick="fun()"/>
<div id="divnum" style=" position:absolute;left:100px;width:200px;top:100px;"></div>
四、用Java写个关于“水仙花数”的程序
1、public static void main(String[] args){
2、for(int i= 100; i<1000; i++){
3、int BaiNum= i/100;//分解出百位
4、int ShiNum= i/10%10;//分解出十位
5、//判断是否为水仙花数,即百位的三次方+十位的三次方+个位的三次方=数字本身
6、if(BaiNum*BaiNum*BaiNum+ ShiNum*ShiNum*ShiNum+GeNum*GeNum*GeNum== i){
7、System.out.println(i+"为水仙花数");
8、严格意义上来说,只有三位数才能被称为水仙花数,但其他位数的数同样也有符合水仙花数规则的,这些数有其他别称,如:
9、三位自幂数:水仙花数如:153,370,371,407;
10、四位自幂数:四叶玫瑰数如:1634,8208,9474;
11、五位自幂数:五角星数如:54748,92727,93084;
12、六位自幂数:六合数如:548834;
13、七位自幂数:北斗七星数如:1741725,4210818,9800817,9926315;
14、八位自幂数:八仙数如:24678050,24678051,88593477;
15、九位自幂数:九九重阳数如:146511208,472335975,534494836,912985153;
16、十位自幂数:十全十美数如:4679307774;
判断水仙花数和水仙花数 水仙花数代码怎么写的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!
标签: 水仙花