Problem #4

#include <iostream>
using namespace std;
string reverse(string str){
    int len=str.length();
    int n=len-1;
    for(int i=0; i<(len/2); i++){
        swap(str[i],str[n]);
        n=n-1;
    }
    return str;
}
int isPalindrome(int num){
    string num_str=to_string(num);
    string rev=reverse(num_str);
    if (num_str==rev){ return 1; }
    else { return 0; }
}
void largestNum(int min, int max){
    int a=min;
    int b=min;
    int multiple;
    int result=0;
    while(a<=max){
        while(b<=max){
            multiple=a*b;
            if(isPalindrome(multiple)==1 && multiple>result){result=multiple;}
            b++;
        }
        b=min;
        a++;
    }
    cout<<result<<endl;
}
int main()
{
    largestNum(100,999);
    return 0;
}

Comments