/* Se ficar com duvida em algum algoritmo, pode me chamar. */
#include <iostream>
using namespace std;
#include <cmath>
int VerificaPolindromo(int y ){
int a1, a2, a3, a4, a5;
a1 = y / 10000;
a2 = (y / 1000) % 10;
a3 = ( y / 100 ) % 10;
a4 = ( y / 10 ) % 10;
a5 = y%10;
if( ( a5*10000 ) + ( a4*1000 ) + ( a3*100 ) + ( a2*10 ) + a1 == y ){
cout << "\n" << y << " é polindromo.";
}
}
int main(){
/* 9 Número de 4 digitos, separados no meio, somando a separação, são iguais a raiz quadrada do mesmo, inteiro. */
int x, P1;
for( x = 1000 ; x <= 9999 ; x++){
P1 = ( x - ( x % 100 ) ) / 100;
if( P1 + ( x % 100 ) == sqrt( x ) ){
cout << "\n Este valor é correspondente: " << x << " = " << P1 + ( x % 100 );
}
}
cout << "\n\n" ;
/* 8 Números políndromos: */
int polindromo, y;
for( y = 10000 ; y <= 99999 ; y++ ){
VerificaPolindromo( y );
}
cout << "\n\n";
/* 2 Pares e Impares*/
int Pares=0, Impares=0, Op;
cout << " Digite " << 9999 << " para sair. ";
do{
cout<< " Insira um numero: ";
cin >> Op;
if(Op == 9999){
break;
}else if(Op%2 == 0){
Pares++;
}else{
Impares++;
}
}while(1);
cout << "\n Pares: " << Pares << " \n Impares: " << Impares;
}