2階的自守數(也就是開平方)
如果某個數的平方尾端幾位數剛好等於這個數,就稱這個數字為自守數。
例如:( 5 * 5 = 25 )、( 25 * 25 = 625 )
由於字串比較好操作,所以將數字轉成字串後再進行比較
依據定義分析,就是驗證 x 的平方 m ,如果 m 的最後幾位數等於 x ,那麼 x 就是自守數。
class Program
{
static void Main(string[] args)
{
Console.WriteLine("請輸入整數上限:");
int x = Convert.ToInt32(Console.ReadLine());
//運行的程式
for (int i = 1; i < x; i++)
{
chkNum(i);
}
Console.ReadLine();
}
public static void chkNum(int x)
{
//將數字轉為字串
string str = x.ToString();
//計算數字的平方,再轉成字串
string str2 = (x * x).ToString();
//取出x平方字串的尾數,與x字串等長的字串
string last = str2.Substring(str2.Length - str.Length);
//假如字串箱等,就是自守數
if (last.Equals(str))
{
Console.WriteLine(String.Format("{0} * {0} = {1} : {2} 是自守數 ", str, str2, last));
}
}
}
結果:
水滴可成涓流,涓流可成湖泊大海。
汲取累積知識,將知識堆積成常識;將常識探究成學識;將學識簡化為知識;授人自省。