Pueden ver el video explicativo de como se elaboro este programa en el siguiente enlace:
Programa
/* Este programa presenta en pantalla nro. primos
en un rango especifico, pero presentando
únicamente los números primos que terminan
en uno (1)
Elaborado por: Carlos Ferrer
Rev. marzo de 2026
*/
#include <iostream>
using namespace std;
main()
{
int rg_menor,rg_mayor; // rangos a estudiar
int numero; //numero a estudiar
int div=2; //divisor para determinar si el numero es primo
int dig_final; //digito final de los números primos a presentar en pantalla
// Ingresamos el rango a estudiar
reiniciar:
cout <<"Ingrese el valor del rango menor a estudiar = ";
cin >>rg_menor;
cout <<"Ingrese el valor del rango mayor a estudiar = ";
cin >>rg_mayor;
//Ingresamos el valor del digito final que deben tener los números primos
cout <<"Ingrese el digito de finalizacion de los numeros primos (0-9) = ";
cin >>dig_final;
// revisamos si el rango es correcto de lo contrario repetimos
if (rg_menor>=rg_mayor)
{
system ("cls");
cout <<"Los rangos ingresados incorrectos"<<endl<<endl;
goto reiniciar;
}
numero=rg_menor;
cout <<endl<<endl<<"***** Numeros primos que terminan en ("<<dig_final<<") ****"<<endl<<endl;
repetir:
// verificamos que el numero termina en el digito solicitado
if((numero+(10-dig_final))%10==0)
{
//revisa si el numero es primo, dividimos entre todos los divisores desde 2 hasta el numero
repetir2:
if(numero%div==0)
{
if (div<numero)
{
//El numero NO es primo - Avanzamos al siguiente numero
goto seguir;
}
if (div==numero)
{
// El numero es primo - Lo imprimimos y colocamos un espacio en blanco
cout<<numero<<" ";
goto seguir;
}
}
// Aumentamos el valor del divisor y repetimos el chequeo
div=div+1;
goto repetir2;
}
seguir:
// reseteamos el divisor y pasamos al numero siguiente
div=2;
numero=numero+1;
if (numero<=rg_mayor)
{
//repite el procedimiento;
goto repetir;
}
}


No hay comentarios.:
Publicar un comentario