Cita:
Iniciado por Pantaláimon 2) Números en descomposición.
Crea una función descompon que descomponga un intervalo de números de a a b ambos inclusive, en sus factores primos. Esta función mostrará el resultado salida estándar
De momento dejo una primera aproximación al segundo ejercicio que ira mejorando lo escribí en C++; en este momento dispongo de poco tiempo, pero voy a ver que se me ocurre para el primer ejercicio :
Código C++:
Ver originalint comprobar_primo( int* num, int e )
{
if ( *num % e == 0 )
{
*num /= e;
return 1 + comprobar_primo( num, e );
}
return 0;
}
string factor_primo(int a, int b, std::stringstream& fact)
{
unsigned exp = comprobar_primo
(&a
, b
);
{
fact << b;
if (exp > 1) fact
<< '^' << exp; if (a != 1) fact << " * ";
}
if (a > 1) factor_primo(a, b + 1, fact);
return fact.str();
}
void descompon(int a, int b, int ver)
{
std::stringstream fact;
if(ver)
cout << a << " = " << factor_primo(a, 2, fact) << endl;
if(a < b)
descompon( a + 1, b, ver);
}
Saludos