回文素數指某乙個數既是回文數、又是素數,例如2, 3, 5, 7, 11, 101, 131,… 程式設計找出前100個回文素數,並且要求按照每行10個的格式輸出。輸出方式任選。
1、本題主要變數的功能:
count1:
記錄一行已經輸出了幾個,實現每行輸出10
個,整型,初始值為0;
count2:
記錄已經輸出回文素數個數,直到輸出100
個,整型,初始值為1;
ispalindromes:
是否是回文數的標記,布林型,初始值為true;
isprime=true:
是否是素數的標記,布林型,初始值為true。
n:用於生成要進行判斷的數,整型,初始值為2。
s:儲存數字轉換成的字串,字串型,用於判斷是否為回文數。
2、本題主要分為兩大模組:
a、判斷是否為素數:
判斷數n
能否被從2到
n-1的數整除,如果能則
isprime
值變為false
,跳出迴圈繼續判斷
n+1。
for(i = 2; i
if(n % i == 0) }
b、判斷是否為回文數:
n已經經過判斷是素數,再講
n轉化為字串,賦給s。
for(j=0;j <= len/2-1;j++) }
a、通過這個迴圈依次進行前部分元素與後部分元素的比較進行判斷是否為回文數,如果出現不匹配的情況,則說明不是回文數,
ispalindromes=false
,跳出迴圈。
b、如果
ispalindromes=true
則說明這個素數是回文數,輸出,
count2++
,count1++。
c、每判斷完乙個數都要將
isprime
和ispalindromes
的值恢復為
isprime = true; //每一次判斷後要恢復初始值
ispalindromes = true;
}system.out.print("\n");
}}
866 回文素數
求出大於或等於n的最小回文素數。回顧一下,如果乙個數大於 1,且其因數只有 1 和它自身,那麼這個數是素數。例如,2,3,5,7,11 以及 13 是素數。回顧一下,如果乙個數從左往右讀與從右往左讀是一樣的,那麼這個數是回文數。例如,12321 是回文數。示例 1 輸入 6輸出 7示例 2 輸入 8...
python123回文素數 平方回文素數
問題描述 素數的平方是回文,比如11 11 121。求不超過1000的平方回文素數。我的 import math def prime m count 0 for i in range 2,int math.sqrt m 1 if m i 0 count 1 if count 1 return tru...
noi1 13 11回文素數題解
首先還是上題目 總時間限制 5000ms 記憶體限制 65536kb 描述乙個數如果從左往右讀和從右往左讀數字是相同的,則稱這個數是回文數,如121,1221,15651都是回文數。給定位數n,找出所有既是回文數又是素數的n位十進位制數。注 不考慮超過整型數範圍的情況 輸入位數n,其中1 n 9。輸...