導航:首頁 > 源碼編譯 > 迴文數演算法描述及實驗步驟

迴文數演算法描述及實驗步驟

發布時間:2024-12-13 14:15:13

Ⅰ 設計一個演算法,判斷一個正的n(n>2)位數是不是迴文數,用自然語言描述演算法步驟。

設這個數為a,b=log10(n)取整可表示其位數。
先通過演算法確定每一位的數字,a1=a/(10^b)取整,a2=(a-a1*10^b)/10^(b-1)。。。。,依次得到各個位數。
然後從第一和最後開始比較,各位數是否相等,如首位數和末位數是否相同。
若都相同才是迴文數,否則就不是。

Ⅱ [演算法筆記]求最大迴文數

小碼哥在數學王國是個對迴文數著迷的孩子。他計劃在數字商店購買一個最大的迴文數,每個數的價格等同於該數的值。小碼哥手上有n塊錢,他想知道能買到的最大迴文數是多少。

輸入格式:一個正整數n,表示小碼哥的零花錢,其中包含前導零。

輸出格式:輸出一個正整數,表示小碼哥能買到的最大迴文數。

輸入示例:648

輸出示例:646

備註:數字長度不超過200。

解題思路:去除前導零後,從前到後遍歷迴文數的一半部分。若當前字元小於等於其對稱位置的字元,直接更新對稱位置的字元;反之,需要向前借位。若遇到前一位為0,則將其設為9,繼續借位,直到遇到非零數字。若借到首位且原來為1,現為0,則說明數字為1後跟若干個0,直接輸出除去首位外的9個數。

Ⅲ 迴文數的迴文數演算法

隨意找一個十進制的數,把它倒過來成另一個數,再把這兩個數相加,得一個和數,這是第一步;然後把這個和數倒過來,與原來的和數相加,又得到一個新的和數,這是第二步。照此方法,一步步接續往下算,直到出現一個「迴文數」為n。例如:28+82=110,110+011=121,兩步就得出了一個「迴文數」。如果接著算下去,還會得到更多的「迴文數」。這個過程稱為「196演算法」。

Ⅳ 可以幫我解釋一下這段 C語言 的迴文數的演算法嗎

這段代碼就是把m顛倒過來,然後將這個數與原來的數進行比較,如果相等就說明是迴文數。比如m為1234321,顛倒過來還是1234321,與原來相等,說明1234321是迴文數。其實有快的,將數作為字元串讀入,然後對字元串分別從首尾開始掃描判斷是否相等,這樣比乘除法更高效。代碼如下:
#include <stdio.h>
#include <string.h>
bool isHuiwen(char str[])
{
int i,j;
for (i = 0,j = strlen(str) - 1; i < strlen(str) / 2; i++,j--)
{
if (str[i] != str[j])
return false;
}
return true;

}
int main()
{
int i;
char str[100];
while (scanf ("%s",str))
{
if (isHuiwen(str))
printf ("Yes\n");
else
printf ("No\n");
}
return 0;

}

閱讀全文

與迴文數演算法描述及實驗步驟相關的資料

熱點內容
javaforosx 瀏覽:773
三星s4簡訊存在哪個文件夾 瀏覽:179
安卓哇偶的ai男友怎麼注銷 瀏覽:324
app藍道出行司機端在哪裡下載 瀏覽:35
tcl空調壓縮機電容 瀏覽:812
25歲轉行程序員值不值得 瀏覽:801
如何連接浴霸中的APP 瀏覽:851
學app在哪裡學 瀏覽:235
荒野之息攻略pdf 瀏覽:633
linux硬鏈接和軟鏈接的區別 瀏覽:479
pythonmysql書籍 瀏覽:254
制圖的基本命令 瀏覽:318
從哪裡下載網上國網app 瀏覽:68
葯品的掛網信息app在哪裡查詢 瀏覽:745
pdf轉換flash 瀏覽:230
網易mc伺服器如何開掛 瀏覽:11
epub格式轉pdf 瀏覽:306
李光耀觀天下pdf 瀏覽:778
慢動作解壓視頻教程 瀏覽:972
命令行導入sql文件 瀏覽:570