Problem :
A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 * 99.
Find the largest palindrome made from the product of two 3-digit numbers.
Find the largest palindrome made from the product of two 3-digit numbers.
Solution :
#include<iostream> using namespace std; int palindrome(unsigned int num) { unsigned int i,j,div,flag=1,*arr,len,n=num; for(i=0,div=1;n>=10;n=n/10,i++,div=div*10); len=++i; arr=new unsigned int[len]; for(i=0;i<len;i++) { arr[i]=num/div; num=num%div; div=div/10; } for(i=0,j=len-1;i<j;i++,j--) { if(arr[i]!=arr[j]) return 0; } return 1; } int main() { unsigned int num,i,j,max; int flag=0; for(i=900;i<=999;i++) for(j=900;j<=999;j++) { num=i*j; flag=palindrome(num); if(flag==1) max=num; } cout<<"Max. palindrome number:"<<max; return 0; }
No comments:
Post a Comment