/* =============================================================================================
Wilfredo Cruz Yarlequé wcruzy@gmail.com
Piura, Perú, Noviembre 28 de 2024
=============================================================================================
En matemáticas, un número de Kaprekar es aquel entero no negativo tal que, en una base dada,
los dígitos de su cuadrado en esa base pueden ser separados en dos números que sumados dan
el número original.
Por ejemplo, en el sistema decimal (base 10), 45 es un número de Kaprekar porque
45^2=2025, y 20+25=45.
Nótese que el segundo sumando puede empezar por uno o varios ceros, como en el caso de
999^2=998001; 998+001=999.
Los números de Kaprekar se llaman así porque fueron estudiados por el matemático indio Shri
Dattatreya Ramachandra Kaprekar (1905 - 1986).
Fuente: Wikipedia https://es.wikipedia.org/wiki/Número_de_Kaprekar
============================================================================================= */
#include <stdio.h>
#include <math.h>
void main()
{
int i, j,l, m;
i = 1;
while (i<1000)
{
j = i * i;
if (i <= 9)
{
l=j / 10;
m=j % 10;
}
else
if (i <= 99)
{
l = j / 100;
m = j % 100;
}
else
{
l = j / 1000;
m = j % 1000;
}
if (i == l + m)
printf("\n%5d es un número de Kaprekar\n", i);
i++;
}
}