問題描述
輸入兩整數,找出兩整數區間內所有具有回文結構的數字。比如說,輸入 80 100 ,則輸出為 88 99 。 100 200 ,則輸出為 101 111 121 131 141 151 161 171 181 191 。若沒有則輸出 0 。
輸入格式
輸入 兩整數。
輸入 兩整數。
輸出格式
輸出為 區間內所有具有回文結構的數字 。
輸出為 區間內所有具有回文結構的數字 。
Example
Sample Input: | Sample Output: |
80 100 100 200 | 88 99 101 111 121 131 141 151 161 171 181 191 |
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- int PalindromicNum(int temp,int c){
- int i,a,b;
- for(i=0;i<=c/2;i++){
- a=temp/(int)floor((pow(10,i)));
- a=a%10;
- b=temp/(int)floor(pow(10,c-i-1));
- b=b%10;
- if(a!=b){
- return 0;
- }
- }
- return 1;
- }
- int main(){
- int num1,num2,i,c,flag=1;
- scanf("%d%d",&num1,&num2);
- for(i=num1;i<=num2;i++){
- c=computeD(i);
- if(PalindromicNum(i,c)==1){
- if(flag==1){
- printf("%d",i);
- flag=0;
- }else{
- printf(" %d",i);
- }
- }
- }
- if(flag==1){
- printf("0\n");
- }else{
- printf("\n");
- }
- system("PAUSE");
- return 0;
- }
- int computeD(int temp){
- int i,c;
- for(i=0;temp>0;temp/=10,i++);
- return i;
- }
Hiç yorum yok:
Yorum Gönder