Primero y segundo: el prototipo de la función debe ser int num_maximo(int vec[]), sin más
Tercero:
Código: Seleccionar todo
//Funcion para calcular la potencia de un numero de forma recursiva
int potencia(int base, int expo)
{
int result = 1;
//Si el exponente es 0 resgresa uno
if(expo==0)
{
return 1;
}
else
{ //se va reduciendo el exponente en uno
result= potencia(base,expo-1) * base;
}
return result;
}
Muy buena la idea, pero mejor así:
Código: Seleccionar todo
//Funcion para calcular la potencia de un numero de forma recursiva
int potencia(int base, int expo)
{
int result = 1;
//Si el exponente es 0 regresa uno
if (expo != 0)
{ //se va reduciendo el exponente en uno
result= potencia(base,expo-1) * base;
}
return result;
}
Por supuesto esto sólo vale para potencias positivas, así que mejor indicarlo:
Código: Seleccionar todo
//Funcion para calcular la potencia de un numero de forma recursiva
int potencia(int base, unsigned int expo)
{
int result = 1;
//Si el exponente es 0 regresa uno
if (expo > 0)
{ //se va reduciendo el exponente en uno
result= potencia(base,expo-1) * base;
}
return result;
}
Cuarto: el prototipo de la función debe ser int sumar_array(int vec[]). A las funciones que crees intenta darles el mínimo número de parámetros necesarios, esto te permitirá reutilizarlas en otros programas (creando librerías por ejemplo). En este caso, una función que sume los elementos del vector sólo necesita saber el vector y devolver la suma. Los otros parmámetros que tienes son dependientes de la implementación, y por tanto deberían ser transparentes al programador. Ya desde sumar_array() puedes llamar a sumar_array_recursivo() ya con los parámetros que quieras. Piensa en sumar_array() como un "envoltorio" para sumar_array_recursivo(). Esto aplica igualmente para los demás problemas (incluída la agenda ).
Sexto: creo que no me entendiste. Tienes que devolver toda la serie de números de Fibonacci hasta un máximo. Por ejemplo, yo digo 5, y entonces el programa debe mostrar 0 1 1 2 3 5.
~Rdavid~ escribió:Por cierto te falto un 1 adelante en la secuencia de Fibonacci
Y un 0 Debería ser
m0skit0 escribió:La secuencia de números de Fibonacci es 0, 1, 1, 2, 3, 5, 8, 13, 21
Último:
Código: Seleccionar todo
//Funcion que imprime las id accesadas y regresa la id escogida
int seleccionar_id(int id, int escog)
¿Quién ha dicho que haya que imprimir todas las IDs accedidas? Y encima al revés
Y añado una parte a este ejercicio: implementar una función de búsqueda (exacta) de número y/o nombre
De todas formas veo que has pillado el concepto y ya te sale del alma Muy bueno ¿Verdad que no es tan complicado como parece en un primer momento ?