Java黑皮书课后题第6章:**6.27(反素数)反素数(反转拼写的素数)是指一个非回文素数,将其反转之后也是一个素数。编写程序,显示前100个反素数,每行显示10个,并且数字间用空格隔开
生活随笔
收集整理的這篇文章主要介紹了
Java黑皮书课后题第6章:**6.27(反素数)反素数(反转拼写的素数)是指一个非回文素数,将其反转之后也是一个素数。编写程序,显示前100个反素数,每行显示10个,并且数字间用空格隔开
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
6.27(反素數(shù))反素數(shù)(反轉(zhuǎn)拼寫的素數(shù))是指一個非回文素數(shù),將其反轉(zhuǎn)之后也是一個素數(shù)。編寫程序,顯示前100個反素數(shù),每行顯示10個,并且數(shù)字間用空格隔開
- 題目
- 題目描述
- 破題
- 代碼
題目
題目描述
6.27(反素數(shù))反素數(shù)(反轉(zhuǎn)拼寫的素數(shù))是指一個非回文素數(shù),將其反轉(zhuǎn)之后也是一個素數(shù)。
比如,17是一個素數(shù),而71也是一個素數(shù),所以17和71是反素數(shù)
編寫程序,顯示前100個反素數(shù),每行顯示10個,并且數(shù)字間用空格隔開
如下所示:
破題
翻譯成人話(兩個反素數(shù)條件):
①一個素數(shù)倒過來還是個素數(shù);②兩個素數(shù)不相等(非回文素數(shù))
代碼
public class Test6_27 {public static void main(String[] args) {int count = 0; // 計數(shù)變量// 循環(huán)遍歷for (int i = 10; count <= 100; i++){if (isPrimeNumber(i) && isPrimeNumber(reverse(i)) && (i != reverse(i))){System.out.print(i+" ");count++;if (count % 10 == 0)System.out.println();}}}// 倒置public static int reverse(int i){// 通過將int型數(shù)轉(zhuǎn)為String實現(xiàn)倒置String str0 = i +"", str1 = "";int length = str0.length();for (int n = length-1; n >= 0; n--){str1 += str0.charAt(n);}// 再將轉(zhuǎn)換后的String轉(zhuǎn)為int型輸出return Integer.parseInt(str1);}// 判斷是否是素數(shù)public static boolean isPrimeNumber(int i){boolean bool = true;for (int n = 2; n <= i / 2 ;n++){if ( i % n == 0){bool = false;break;}}return bool;} }總結(jié)
以上是生活随笔為你收集整理的Java黑皮书课后题第6章:**6.27(反素数)反素数(反转拼写的素数)是指一个非回文素数,将其反转之后也是一个素数。编写程序,显示前100个反素数,每行显示10个,并且数字间用空格隔开的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java黑皮书课后题第6章:**6.26
- 下一篇: Java黑皮书课后题第6章:**6.28