Cita:
Iniciado por Pantaláimon La idea de tener una bandera ver era para poder ponerla a 0 y medir el tiempo de ejecución del código sin las interferencias que pudiera producir mostrar la salida estándar. El problema es que hay códigos que dejan de hacer ciertos cálculos que no son meramente de mostrar los resultados cuando ver == 0.
Un ejemplo claro es el de kutcher donde hay el siguiente código:
Entiendo en un primer momento lo mal interprete, pero bueno a corregirlo:
Código C++:
Ver original#include <iostream>
#include <sstream>
int comprobar_primo( int* num, int e )
{
if (*num%e == 0)
{
*num /= e;
return 1 + comprobar_primo(num, e);
}
return 0;
}
std::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;
std::string result = factor_primo(a, 2, fact);
if(ver)
std::cout << a << " = " << result << std::endl;
if(a < b)
descompon( a + 1, b, ver);
}
int main(void)
{
descompon(2, 1000, 1);
return 0;
}
Y ahora con respecto al primer reto, al decir tu
lo transforme en otro con sus elementos ordenados te refieres a almacenar los elementos ordenados en un segundo array
Un saludo