第一種方法:
using System;
class ShuiXianHua
{
static void Main()
for(int i=1;i<10;i++)
for(int j=0;j<10;j++)
for(int k=0;k<10;k++)
if(i*100+j*10+k==Math.Pow(i,3)+Math.Pow(j,3)+Math.Pow(k,3))
Console.Write("{0,5}",i*100+j*10+k);
Console.WriteLine();
}
第二種方法:
int i,j,k;
for(int num = 100;num<1000;num++)
i = num/100; //百位數字
j = num%100/10; //十位數字
k = num%10; //個位數字
if(i*i*i+j*j*j+k*k*k == num)
Console.Write("{0,5}",num);
第三種方法:
public bool IsShuiXianHua(int num) //定義一個函式判斷一個數是否為水仙花數
bool mark = false;
mark = true;
else
mark = false;
return mark;
class Test
ShuiXianHua sxh = new ShuiXianHua();
for(int n = 100;n < 1000; n++)
if(sxh.IsShuiXianHua(n))
Console.Write("{0,5}",n);
第四種方法:
Console.WriteLine("水仙花數有:");
for(int n=100;n<1000;n++)
i = n/100; //獲得百位上的數字
j = (n -i*100)/10; //獲得十位上的數字
k = n - i*100 - j*10; //獲得個位上的數字
if(Math.Pow(i,3)+Math.Pow(j,3)+Math.Pow(k,3)==n)
第五種方法:
string s;
s = n.ToString(); //將數字n轉化為字串
i = s[0] - "0"; //獲得百位上的數字
j = s[1] - "0"; //獲得十位上的數字
k = s[2] - "0"; //獲得個位上的數字
if(i*i*i + j*j*j + k*k*k == n)
第一種方法:
using System;
class ShuiXianHua
{
static void Main()
{
for(int i=1;i<10;i++)
for(int j=0;j<10;j++)
for(int k=0;k<10;k++)
if(i*100+j*10+k==Math.Pow(i,3)+Math.Pow(j,3)+Math.Pow(k,3))
Console.Write("{0,5}",i*100+j*10+k);
Console.WriteLine();
}
}
第二種方法:
using System;
class ShuiXianHua
{
static void Main()
{
int i,j,k;
for(int num = 100;num<1000;num++)
{
i = num/100; //百位數字
j = num%100/10; //十位數字
k = num%10; //個位數字
if(i*i*i+j*j*j+k*k*k == num)
Console.Write("{0,5}",num);
}
Console.WriteLine();
}
}
第三種方法:
using System;
class ShuiXianHua
{
public bool IsShuiXianHua(int num) //定義一個函式判斷一個數是否為水仙花數
{
bool mark = false;
int i,j,k;
i = num/100; //百位數字
j = num%100/10; //十位數字
k = num%10; //個位數字
if(i*i*i+j*j*j+k*k*k == num)
mark = true;
else
mark = false;
return mark;
}
}
class Test
{
static void Main()
{
ShuiXianHua sxh = new ShuiXianHua();
for(int n = 100;n < 1000; n++)
{
if(sxh.IsShuiXianHua(n))
Console.Write("{0,5}",n);
}
Console.WriteLine();
}
}
第四種方法:
using System;
class ShuiXianHua
{
static void Main()
{
int i,j,k;
Console.WriteLine("水仙花數有:");
for(int n=100;n<1000;n++)
{
i = n/100; //獲得百位上的數字
j = (n -i*100)/10; //獲得十位上的數字
k = n - i*100 - j*10; //獲得個位上的數字
if(Math.Pow(i,3)+Math.Pow(j,3)+Math.Pow(k,3)==n)
Console.Write("{0,5}",n);
}
Console.WriteLine();
}
}
第五種方法:
using System;
class ShuiXianHua
{
static void Main()
{
string s;
int i,j,k;
Console.WriteLine("水仙花數有:");
for(int n=100;n<1000;n++)
{
s = n.ToString(); //將數字n轉化為字串
i = s[0] - "0"; //獲得百位上的數字
j = s[1] - "0"; //獲得十位上的數字
k = s[2] - "0"; //獲得個位上的數字
if(i*i*i + j*j*j + k*k*k == n)
Console.Write("{0,5}",n);
}
Console.WriteLine();
}
}