Hola!
He creado un pequeño programa en c++ el cual al decirle un número de dígitos, devuelve el primer termino de la serie de fibonacci con el número de dígitos indicado y la posición de ese termino en la serie. Sin embargo al ejecutalo e introducir el número de dígitos el programa deja de funcionar, si alguien me pudiera decir por que puede ser me sería de gran ayuda. Aquí dejo el código del programa , gracias por adelantado, un saludo.
#include <iostream>
#include "../../biblioteca/Enteros/propiedades.h"
#include "../../biblioteca/Enteros/calculos.h" // Hago uso de unos módulos para poder utilizar ciertas funciones mas adelante como numCifras y fibonacci
using namespace std;
/*
* Pre: ---
* Post: Devuelve el primer término de la serie de Fibonacci con el número de cifras indicado
* e indica la posición del término en la sucesión.
*
*/
void PrimerTermino(int d){
int n = 0;
int i = fibonacci(n); // La función fibonacci devuelve el n-ésimo término de la sucesión de Fibonnaci
int term;
bool encontrada = false;
while(!encontrada){
if(numCifras(i) == d){
encontrada = true;
term = n;
} else {
n++;}
}
}
int main(){
int d,i,term;
cout << "Numero de digitos (0 o negativo de acabar): ";
cin >> d;
PrimerTermino(d);
cout << i << "Es el termino " << term << " de la sucesion de Fibonacci"<<endl;
cout << " y es el primero con " << d << "digitos" << endl;
return 0;
}