Por Yuvraj Chandra
CuotaPíoCorreo electrónico

Encuentra cubos y cuadrados perfectos usando algoritmos en varios idiomas.

A muchos programadores les encanta resolver problemas matemáticos complicados utilizando código. Ayuda a agudizar la mente y mejorar la capacidad de resolución de problemas. En este artículo, aprenderá a encontrar los cuadrados y cubos perfectos de n dígitos más pequeños y más grandes utilizando Python, C ++ y JavaScript. Cada ejemplo también contiene una salida de muestra para varios valores diferentes.

Cuadrados perfectos de N dígitos más pequeños y más grandes

Planteamiento del problema

Te dan un número entero norte, y necesitas encontrar los números de n dígitos más pequeños y más grandes que también sean cuadrados perfectos.

Ejemplo 1: Sea n = 2

El cuadrado perfecto de 2 dígitos más pequeño es 16 y el cuadrado perfecto de 2 dígitos más grande es 81.

Por tanto, la salida es:

Cuadrado perfecto de 2 dígitos más pequeño: 16

instagram viewer

Cuadrado perfecto de 2 dígitos más grande: 81

Ejemplo 2: Sea n = 3

El cuadrado perfecto de 3 dígitos más pequeño es 100 y el cuadrado perfecto de 3 dígitos más grande es 961.

Por tanto, la salida es:

Cuadrado perfecto más pequeño de 3 dígitos: 100

Cuadrado perfecto de 3 dígitos más grande: 961

Enfoque para resolver el problema

Puedes encontrar el cuadrado perfecto más pequeño de n dígitos usando la siguiente fórmula:

pow (ceil (sqrt (pow (10, n - 1))), 2)

Y para encontrar el cuadrado perfecto más grande de n dígitos, use la siguiente fórmula:

pow (ceil (sqrt (pow (10, n))) - 1, 2)

Programa C ++ para encontrar los cuadrados perfectos de N dígitos más pequeños y más grandes

A continuación se muestra el programa C ++ para encontrar los cuadrados perfectos de n dígitos más pequeños y más grandes:

// Programa C ++ para encontrar el más pequeño y el más grande
// cuadrados perfectos de n dígitos
#incluir
usando el espacio de nombres std;
vacío findPerfectSquares (int n)
{
cout << "Más pequeño" << n << "-dígito perfecto cuadrado:" << pow (ceil (sqrt (pow (10, n - 1))), 2) << endl;
cout << "Mayor" << n << "cuadrado perfecto de dígitos:" << pow (ceil (sqrt (pow (10, n))) - 1, 2) << endl;
}
int main ()
{
int n1 = 1;
cout << "Número de dígitos:" << n1 << endl;
findPerfectSquares (n1);
int n2 = 2;
cout << "Número de dígitos:" << n2 << endl;
findPerfectSquares (n2);
int n3 = 3;
cout << "Número de dígitos:" << n3 << endl;
findPerfectSquares (n3);
int n4 = 4;
cout << "Número de dígitos:" << n4 << endl;
findPerfectSquares (n4);
return 0;
}

Producción:

Número de dígitos: 1
Cuadrado perfecto más pequeño de 1 dígito: 1
Cuadrado perfecto más grande de 1 dígito: 9
Número de dígitos: 2
Cuadrado perfecto de 2 dígitos más pequeño: 16
Cuadrado perfecto de 2 dígitos más grande: 81
Número de dígitos: 3
Cuadrado perfecto más pequeño de 3 dígitos: 100
Cuadrado perfecto de 3 dígitos más grande: 961
Número de dígitos: 4
Cuadrado perfecto más pequeño de 4 dígitos: 1024
Cuadrado perfecto de 4 dígitos más grande: 9801

Relacionado: Cómo calcular el valor de nCr

Programa Python para encontrar los cuadrados perfectos más pequeños y más grandes de N dígitos

A continuación se muestra el programa Python para encontrar los cuadrados perfectos de n dígitos más pequeños y más grandes:

# Programa de Python para encontrar el más pequeño y el más grande
# cuadrados perfectos de n dígitos
importar matemáticas
def findPerfectSquares (n):
print ("El más pequeño", n, "- cuadrado perfecto de dígitos:", pow (math.ceil (math.sqrt (pow (10, n - 1))), 2))
print ("Mayor", n, "- cuadrado perfecto de dígitos:", pow (math.ceil (math.sqrt (pow (10, n))) - 1, 2))
n1 = 1
print ("Número de dígitos:", n1)
findPerfectSquares (n1)
n2 = 2
print ("Número de dígitos:", n2)
findPerfectSquares (n2)
n3 = 3
print ("Número de dígitos:", n3)
findPerfectSquares (n3)
n4 = 4
print ("Número de dígitos:", n4)
findPerfectSquares (n4)

Producción:

Número de dígitos: 1
Cuadrado perfecto más pequeño de 1 dígito: 1
Cuadrado perfecto más grande de 1 dígito: 9
Número de dígitos: 2
Cuadrado perfecto de 2 dígitos más pequeño: 16
Cuadrado perfecto de 2 dígitos más grande: 81
Número de dígitos: 3
Cuadrado perfecto más pequeño de 3 dígitos: 100
Cuadrado perfecto más grande de 3 dígitos: 961
Número de dígitos: 4
Cuadrado perfecto más pequeño de 4 dígitos: 1024
Cuadrado perfecto más grande de 4 dígitos: 9801

Relacionado: Cómo encontrar los dígitos más grandes y más pequeños de un número con programación

Programa JavaScript para encontrar los cuadrados perfectos más pequeños y más grandes de N dígitos

A continuación se muestra el programa JavaScript para encontrar los cuadrados perfectos de n dígitos más pequeños y más grandes:

// Programa JavaScript para encontrar el más pequeño y más grande
// cuadrados perfectos de n dígitos
función findPerfectSquares (n) {
document.write ("Smallest" + n + "-digit perfect square:" + Math.pow (Math.ceil (Math.sqrt (Math.pow (10, n - 1))), 2) + "
");
document.write ("Mayor" + n + "-cuadrado perfecto de dígitos:" + Math.pow (Math.ceil (Math.sqrt (Math.pow (10, n))) - 1, 2) + "
");
}
var n1 = 1;
document.write ("Número de dígitos:" + n1 + "
");
findPerfectSquares (n1);
var n2 = 2;
document.write ("Número de dígitos:" + n2 + "
");
findPerfectSquares (n2);
var n3 = 3;
document.write ("Número de dígitos:" + n3 + "
");
findPerfectSquares (n3);
var n4 = 4;
document.write ("Número de dígitos:" + n4 + "
");
findPerfectSquares (n4);

Producción:

Número de dígitos: 1
Cuadrado perfecto más pequeño de 1 dígito: 1
Cuadrado perfecto más grande de 1 dígito: 9
Número de dígitos: 2
Cuadrado perfecto de 2 dígitos más pequeño: 16
Cuadrado perfecto de 2 dígitos más grande: 81
Número de dígitos: 3
Cuadrado perfecto más pequeño de 3 dígitos: 100
Cuadrado perfecto de 3 dígitos más grande: 961
Número de dígitos: 4
Cuadrado perfecto más pequeño de 4 dígitos: 1024
Cuadrado perfecto de 4 dígitos más grande: 9801

Cubos perfectos de N dígitos más pequeños y más grandes

Planteamiento del problema

Te dan un número entero norte, necesitas encontrar los números de n dígitos más pequeños y más grandes que también sean cubos perfectos.

Ejemplo 1: Sea n = 2

El cubo perfecto de 2 dígitos más pequeño es 27 y el cubo perfecto de 2 dígitos más grande es 64.

Por tanto, la salida es:

Cubo perfecto de 2 dígitos más pequeño: 27

Cubo perfecto de 2 dígitos más grande: 64

Ejemplo 2: Sea n = 3

El cubo perfecto de 3 dígitos más pequeño es 120 y el cubo perfecto de 3 dígitos más grande es 729.

Por tanto, la salida es:

El cubo perfecto más pequeño de 3 dígitos: 125

Cubo perfecto de 3 dígitos más grande: 729

Enfoque para resolver el problema

Puedes encontrar el cubo perfecto más pequeño de n dígitos usando la siguiente fórmula:

pow (ceil (cbrt (pow (10, (n - 1)))), 3)

Y para encontrar el cubo perfecto más grande de n dígitos, use la siguiente fórmula:

pow (ceil (cbrt (pow (10, (n)))) - 1, 3)

Programa C ++ para encontrar los cubos perfectos de N dígitos más pequeños y más grandes

A continuación se muestra el programa C ++ para encontrar los cubos perfectos de n dígitos más pequeños y más grandes:

// Programa C ++ para encontrar el más pequeño y el más grande
// cubos perfectos de n dígitos
#incluir
usando el espacio de nombres std;
vacío findPerfectCubes (int n)
{
cout << "Más pequeño" << n << "cubo perfecto de dígitos:" << pow (ceil (cbrt (pow (10, (n - 1)))), 3) << endl;
cout << "Mayor" << n << "-cubo perfecto de dígitos:" << (int) pow (ceil (cbrt (pow (10, (n))))) - 1, 3) << endl;
}
int main ()
{
int n1 = 1;
cout << "Número de dígitos:" << n1 << endl;
findPerfectCubes (n1);
int n2 = 2;
cout << "Número de dígitos:" << n2 << endl;
findPerfectCubes (n2);
int n3 = 3;
cout << "Número de dígitos:" << n3 << endl;
findPerfectCubes (n3);
int n4 = 4;
cout << "Número de dígitos:" << n4 << endl;
findPerfectCubes (n4);
return 0;
}

Producción:

Número de dígitos: 1
Cubo perfecto de 1 dígito más pequeño: 1
Cubo perfecto de 1 dígito más grande: 8
Número de dígitos: 2
Cubo perfecto de 2 dígitos más pequeño: 27
Cubo perfecto de 2 dígitos más grande: 64
Número de dígitos: 3
El cubo perfecto más pequeño de 3 dígitos: 125
Cubo perfecto de 3 dígitos más grande: 729
Número de dígitos: 4
El cubo perfecto más pequeño de 4 dígitos: 1000
Cubo perfecto de 4 dígitos más grande: 9261

Programa Python para encontrar los cubos perfectos de N dígitos más pequeños y más grandes

A continuación se muestra el programa Python para encontrar los cubos perfectos de n dígitos más pequeños y más grandes:

# Programa de Python para encontrar el más pequeño y el más grande
# cubos perfectos de n dígitos
importar matemáticas
def findPerfectCubes (n):
print ("El más pequeño", n, "- cubo perfecto de dígitos:", pow (math.ceil ((pow (10, (n - 1))) ** (1/3)), 3))
print ("Mayor", n, "- cubo perfecto de dígitos:", pow (math.ceil ((pow (10, (n))) ** (1/3)) - 1, 3))
n1 = 1
print ("Número de dígitos:", n1)
findPerfectCubes (n1)
n2 = 2
print ("Número de dígitos:", n2)
findPerfectCubes (n2)
n3 = 3
print ("Número de dígitos:", n3)
findPerfectCubes (n3)
n4 = 4
print ("Número de dígitos:", n4)
findPerfectCubes (n4)

Producción:

Número de dígitos: 1
El cubo perfecto más pequeño de 1 dígito: 1
El cubo perfecto más grande de 1 dígito: 8
Número de dígitos: 2
El cubo perfecto más pequeño de 2 dígitos: 27
El cubo perfecto más grande de 2 dígitos: 64
Número de dígitos: 3
El cubo perfecto más pequeño de 3 dígitos: 125
El cubo perfecto más grande de 3 dígitos: 729
Número de dígitos: 4
El cubo perfecto más pequeño de 4 dígitos: 1000
El cubo perfecto más grande de 4 dígitos: 9261

Programa JavaScript para encontrar los cubos perfectos de N dígitos más pequeños y más grandes

abajo esta el JavaScript programa para encontrar los cubos perfectos de n dígitos más pequeños y más grandes:

// Programa JavaScript para encontrar el más pequeño y más grande
// cubos perfectos de n dígitos
función findPerfectCubes (n) {
document.write ("El más pequeño" + n + "-cubo perfecto de dígitos:" + Math.pow (Math.ceil (Math.cbrt (Math.pow (10, (n - 1)))), 3) + "
");
document.write ("Mayor" + n + "cubo perfecto de dígitos:" + Math.pow (Math.ceil (Math.cbrt (Math.pow (10, (n)))))) - 1, 3) + "
");
}
var n1 = 1;
document.write ("Número de dígitos:" + n1 + "
");
findPerfectCubes (n1);
var n2 = 2;
document.write ("Número de dígitos:" + n2 + "
");
findPerfectCubes (n2);
var n3 = 3;
document.write ("Número de dígitos:" + n3 + "
");
findPerfectCubes (n3);
var n4 = 4;
document.write ("Número de dígitos:" + n4 + "
");
findPerfectCubes (n4);

Producción:

Número de dígitos: 1
Cubo perfecto de 1 dígito más pequeño: 1
Cubo perfecto de 1 dígito más grande: 8
Número de dígitos: 2
Cubo perfecto de 2 dígitos más pequeño: 27
Cubo perfecto de 2 dígitos más grande: 64
Número de dígitos: 3
El cubo perfecto más pequeño de 3 dígitos: 125
Cubo perfecto de 3 dígitos más grande: 729
Número de dígitos: 4
El cubo perfecto más pequeño de 4 dígitos: 1000
Cubo perfecto de 4 dígitos más grande: 9261

Agudice su cerebro con estimulantes acertijos matemáticos

Si eres alguien a quien le encanta resolver acertijos y acertijos matemáticos, ¡le estás haciendo un favor a tu cerebro! Resolver acertijos y acertijos matemáticos mejora la memoria, aumenta las habilidades para resolver problemas y también puede aumentar el coeficiente intelectual. Algunos sitios web, canales de YouTube y aplicaciones excelentes ofrecen juegos y acertijos matemáticos increíbles de forma gratuita.

CuotaPíoCorreo electrónico
5 recursos para estimular el cerebro para acertijos, acertijos y juegos matemáticos gratuitos

Si te encantan los acertijos de lógica, aquí es donde puedes conseguir más acertijos y juegos matemáticos asombrosos para agudizar tu ingenio.

Leer siguiente

Temas relacionados
  • Programación
  • Pitón
  • JavaScript
  • Tutoriales de codificación
  • Programación
Sobre el Autor
Yuvraj Chandra (67 Artículos publicados)

Yuvraj es estudiante de licenciatura en Ciencias de la Computación en la Universidad de Delhi, India. Le apasiona el desarrollo web Full Stack. Cuando no está escribiendo, está explorando la profundidad de diferentes tecnologías.

Más de Yuvraj Chandra

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse