素數迴文數的個數
- 描述
-
求11到n之間(包括n),既是素數又是迴文數的整數有多少個。
- 輸入
- 一個大於11小於1000的整數n。
- 輸出
- 11到n之間的素數迴文數個數。
- 樣例輸入
-
23
- 樣例輸出
-
1
- 提示
- 迴文數指左右對稱的數,如:292,333。
- 來源
- 06計算概論課
- 這題考察的是無數和迴文數的的綜合,我自定義了兩個判斷函式,在主函式裡面呼叫,比較簡單明瞭,若還有更好的方法歡迎提意見。
- #include<stdio.h>
int sp(int n)//素數判斷函式
{
int j;
for(j=2;j<n;j++)
{
if(n%j==0)
break;
}
if(n==j)
return 1;
else
return 0;
}
int hp(int n)//迴文數判斷函式
{
int w=0,j,r=0,a[5]={0};
while(n)
{
a[w++]=n%10;
n/=10;
}
for(j=0;j<w;j++)
{
if(a[j]==a[w-j-1])
r=1;
else
{
r=0;
break;
}
}
if(r==1)
return 1;
else
return 0;
}
int main()
{
int n,i,s=0,h=0,l=0;
scanf("%d",&n);
for(i=11;i<=n;i++)
{
h=sp(i);//呼叫素數判斷函式
l=hp(i);//呼叫迴文數判斷函式
if(h==1&&l==1)
s++;
}
printf("%d",s);
return 0;
}
相關推薦
JavaStudy——0057:素數迴文數的個數
總時間限制: 1000ms 記憶體限制: 65536kB 描述 求11到n之間(包括n),既是素數又是迴文數的整數有多少個。 輸入 一個大於11小於1000的整數n。 輸出 11到n之間的素數迴文數個數。 樣例輸入 23 樣例輸出 1 提示 迴文數指左右對稱
素數迴文數的個數
總時間限制: 1000ms 記憶體限制: 65536kB 描述 求11到n之間(包括n),既是素數又是迴文數的整數有多少個。 輸入一個大於11小於1000的整數n。輸出11到n之間的素數迴文數個數。樣
05:素數迴文數的個數
描述 求11到n之間(包括n),既是素數又是迴文數的整數有多少個。 輸入 一個大於11小於1000的整數n。輸出11到n之間的素數迴文數個數。 樣例輸入 23 樣例輸出 1 提示迴文數指左右對稱的數,如:292,333。 來源 06計算概論課 程式碼 1
7655:迴文數個數
描述 不超過n位的正整數中,有多少個迴文數? 輸入 一個正整數n,n <= 10。 輸出 一個整數,即迴文數個數。 樣例輸入 5 樣例輸出 1098 來源 《奧數典型題舉一反三(小學五年級)》 (ISBN 978-7-5445-2882-5) 第一章
小王對既是素數又是迴文的數特別感興趣。比如說151既是素數又是個迴文。現在小王想要你幫助他找出某個範圍內的素數迴文數,請你寫個程式找出 a 跟b 之間滿足條件的數。(5
#include <iostream> #include <cstdio> using namespace std; const int N=10000001; bool prime[N]; int count=0; int primehuiwen[
演算法:給定一個整數陣列和一個目標值,找出陣列中和為目標值的兩個數、判斷一個整數是否是迴文數
<!-- 給定一個整數陣列和一個目標值,找出陣列中和為目標值的兩個數。 你可以假設每個輸入只對應一種答案,且同樣的元素不能被重複利用。 示例: 給定 nums = [2, 7, 11, 15], target = 9 因為 nums[0] + nums[1] = 2 + 7 = 9
輸入一個整數,判斷其是否是迴文數,迴文數是指這個數顛倒後,和原數相同那個。
1 public static void main(String[] args) { 2 System.out.println("請輸入一個整數:"); 3 Scanner input = new Scanner(System.in); 4 int
c++求解一個五位數裡迴文數的個數
1.問題的重述 編寫一個通用的函式,該函式的功能是判斷一個五位數是否是一個迴文數。所謂迴文數就是一個數字從左邊看和從右邊看是一樣的,例如:35653,這就是一個迴文數,而12345則不是迴文數,即最高位的數字等於最低位的數字,次高位的數字等於次低位的數字。所以
前端演算法:給定一個整數陣列和一個目標值,找出陣列中和為目標值的兩個數、判斷一個整數是否是迴文數
<!-- 給定一個整數陣列和一個目標值,找出陣列中和為目標值的兩個數。 你可以假設每個輸入只對應一種答案,且同樣的元素不能被重複利用。 示例: 給定 nums = [2, 7, 11, 15], target = 9 因為 nums[0] + nums[
【C語言】判斷一個數是不是迴文數
所謂迴文數,就是說一個數字從左邊讀和從右邊讀的結果是一模一樣的。 首先,我們來判斷一下一個數是否為迴文數: #define _CRT_SECURE_NO_WARNINGS 1 #include&
判斷一個數是不是迴文數(Java StringBuffer)
這個題目如果是用Java寫,會聯想到StringBuffer類中有一個倒置字串的函式:reverse(),值得注意的是,這個函式返回一個引用,也就是說,進行倒置之後原來的StringBuffer物件也就變了,所以一定要記得在寫的時候注意。
提高篇第一講專案6.4——編制函式輸出1000以內的所有素數,迴文數,迴文素數,可逆素數
問題描述 (4)編制main函式,呼叫上面定義的3個函式,完成 輸出1000以內的所有素數。輸出1000以內的所有迴文數。輸出1000以內的所有迴文素數。若一個素數的反序數仍為素數,則稱它為可逆素數。
C++ 如何判斷一個數為迴文數
如果一個數從左邊讀和從右邊讀都是同一個數, 就稱為迴文數 解答: 思想最簡單的方法就是模擬,把各個數位取出來,然後比較。當然這種方法比較麻煩。 我們這次要用的方法如下:既然是迴文數,那我們把各個數位上的數 正著 加起來跟 逆著 加起來的 和 是一樣的。運用這條性質我們就可以很
C語言經典演算法100例-030-判斷一個數是否為迴文數
所謂迴文數,即是正序與逆序相等的一個數,如121,12321,10501等。寫程式判斷輸入的數是否為迴文數。 1.分析:表面上看,我們似乎要這麼做,把各個位分離,然後把第一個數跟最後一個數比較,第二個跟倒數第二個....等等。注意,這樣做太複雜了,迴文數的條件是正序等於逆序
用Python判斷一個數是否為迴文數(或者回文字串)
所謂迴文數。就是正著讀和反著讀,都是一樣的。 例如: 數字:121、1331、22、都是迴文數。 1234 不是迴文數。 自然數中最小的迴文數是0,再就是1,2,3,4,5,6,7,8,9,
從控制檯輸入一個數,判斷這個數是否為迴文數
分析:要判斷一個數是否是迴文數,首先要知道什麼是迴文數。 1.迴文數必須是五位數。 2.滿足條件:萬位數=各位數;千位數=十位數; 3.獲取各個位數的方法 int ww=a/10000;//萬位 //int qw=a/1000%10;//千位 //int bw=a/100%
輸出1000以內的所有素數;輸出1000以內的所有迴文數;輸出1000以內的所有迴文素數;輸出1000以內的所有可逆素數;
/* * Copyright (c) 2013, 煙臺大學計算機學院 * All rights reserved. * 作 者:王穎 * 完成日期:2013 年 11 月 11 日 * 版 本 號:v1.0 * * 輸入描述: 無 * 問題描述:輸出1000以內的所
python 學習 迴文數 、 田字格 、猜數遊戲、統計不同字元個數DAY15
迴文數 getnum = input("請輸入一個自然數:") if getnum == getnum[::-1]: print("{0}是迴文數".format(getnum)) else: print("該數不是迴文數") 田字格1 for i i
要求迴圈輸入一個數,判斷是否為迴文數
import java.util.Scanner; public class HuiWenShu { public static void main(String[] args) { Scanner input = new Scanner(System.in);
判斷一個數為迴文數的最簡單實現
程式碼的核心就在於將一個數子一步步從個位數拆分開來,然後再將拆分得到的數字從高位向低位加起來。 如果得到的數字與原來的數字相等,則判斷為迴文數 #include <stdio.h> in