jueves, 27 de marzo de 2025

01.- Programación I - Prueba Corta 27 de marzo de 2025 - Solución del Profesor

Ejercicio: Elabore un programa que presente en pantalla los primeros veinte (20) números que:

a.- Que sean divisibles exactamente entre cuatro (4). (Sin parte decimal)

b.- Que sean divisibles exactamente entre seis (6). (Sin parte decimal)

c.- Que su raíz cuadrada de un numero entero (Sin parte decimal) y que ese número termine es cuatro (4).

El rango a revisar es desde 5.000.000 hasta que consiga los primeros cinco (5) números.

En la pantalla deberá presentarse los número.


Solución 

Una forma de hacer el ejercicio es ejecutar las verificaciones en el orden que establece el enunciado, funciona pero no es el programa mas eficiente.


Programa Nro.1

/* Programa para determinar los primeros 5

números a partir de 5 millones que son divisibles

exactamente entre 4 y 6, que la raíz da un resultado sin

parte decimal y que ese resultado termina en 4.


Elaborado: Por Carlos Ferrer

Rev. marzo 2025

*/


#include <iostream>

#include <math.h>

using namespace std;


main()

{

int numero=5000000; //Números del 5000000 en adelante

double raiz; //raíz cuadrada del numero a estudiar

int i=0; //Contador de números

int aux_entero; //Variable auxiliar entera

double aux_doble; //Variable auxiliar doble


cout <<"Numero  Divi/4  Div/6  Raiz"<<endl;


//Revisamos hasta conseguir 5 números

while (i<=5) 

{

//verificamos si es divisible entre 4 y 6

if(numero%4==0 and numero%6==0)

{

//Verificamos si la raíz es exacta

raiz=sqrt(numero);

aux_entero=raiz;

aux_doble=raiz;

aux_doble=aux_doble-aux_entero;

if (aux_doble==0)

{

//Verificamos si la raiz termina en 4

aux_entero=raiz/10;

aux_doble=raiz/10;

aux_doble=aux_doble-aux_entero;

if (aux_doble>0.39 and aux_doble<0.41)

{

cout <<numero<<" "<<numero/4<<" "<<numero/6<<" "<<raiz<<endl;

i=i+1;

}

}

}

numero=numero+1;

}

}


Otra forma de hacer el ejercicio es arrancar desde la raíz, sabemos que la raiz de 5.000.000 es 2.236,067977, la idea es buscar todos los números a partir de 2236 que terminen en 4 arrancando en 2244, se eleva al cuadrado y luego simplemente verificamos si es divisible entre 4 y 6. Al conseguir los primeros 5 finalizamos la búsqueda, aparentemente esta es la forma mas simple.

Programa Nro. 2

/* 2do Programa para determinar los primeros 5

números a partir de 5 millones que son divisibles

exactamente entre 4 y 6, que la raiz da un resultado sin

parte decimal y que ese resultado termina en 4.


Elaborado: Por Carlos Ferrer

Rev. marzo 2025

*/


#include <iostream>

#include <math.h>

using namespace std;


main()

{

int numero; //Números del 5000000 en adelante

double raiz=2244; //raíz cuadrada del numero a estudiar

int i=0; //Contador de números

int aux_entero; //Variable auxiliar entera


cout <<"Numero  Divi/4  Div/6  Raiz"<<endl;


//Revisamos hasta conseguir 5 números

while (i<=5) 

{

numero=pow(raiz,2);

if (numero%4==0 and numero%6==0)

{

cout <<numero<<" "<<numero/4<<" "<<numero/6<<" "<<raiz<<endl;

i=i+1;

}

raiz=raiz+10;

}

}


Ambos programas arrojan el siguiente resultado:




No hay comentarios.:

Publicar un comentario