數字王國中有很多有趣的數字,比如質數、水仙花數、回文數、親密數……今天我們來了解有趣的數字——回文數。什么是回文數呢?古今中外都有的一種修辭方式和文字游戲,如“我為人人,人人為我”正讀反讀都能讀通句子,這就是回文?;匚臄狄灿羞@樣的特征,n為任意自然數,若將n的各位數字反向排列所得自然數n1與n相等,則稱n為回文數。例如,n=1234321為回文數。自然界中最小的回文數是0。
下面我們通過編程找出100到999之間全部回文數。假設有一個三位數,如何去判斷它是否回文數呢?只需要考慮個位和百位是否相等,如果相等的話就是回文數,否則的話就不是回文數。如何提取出個位數和百位數呢?方法有很多種,這正是這道題目的精華部分。
取一個三位數的個位數方法是將該數字除以10的余數,取百位數的方法就是將該數字除以100后取整。然后判斷個位和百位數字是否相等,相等就是回文數。這種使用數學方法取個位百位數的方法我們已經會了(如圖1)。
第二種取數字的方法是把輸入的數字看成一個字符串,如ABA。然后我們就可以用對字符串處理的方法分別提取出左邊的第一位和右邊最后一位,看看是否相等,如果相等就是回文數。
如果提高難度,如何判斷輸入的一串數字或者字符是否回文數呢?
我們可以用循環的方法把數字倒著輸出,看看和正序字符串是否一樣,如果一樣就顯示回文數,不一樣的話則不是回文數(如圖2)。
現在你趕快來試試吧,希望你還能想到其他更多的方法。