SERIE FIBONACCI

celio

Bovino maduro
#1
Señores aqui hice mi codigo de la serie fibonacci hecho por mi (sin copiarlo de algun libro como dicen unos..)

#include <stdio.h>
#include <conio.h>
main()
{

int i,ultimo,penultimo,proximo;
ultimo=0;
penultimo=1;
i=0;
while(i<=10){
proximo=ultimo+penultimo;
ultimo=penultimo;
penultimo=proximo;
printf("%d\n",ultimo);
i=i+1;

}
getch();
}

El programa me compila y corre pero mi duda es que si quiero imprimir 100 o hasta 1000 numeros de la serie pues me imprime una cantidad de numeros negativos y codigo basura , es mas ya cambie el tipo de dato a long int y no lo hace.


Muchas gracias
 

z0n3r

Bovino maduro
#2
que compilador usas?

#include <stdio.h>
#include <conio.h>
main()
{

int i,ultimo,penultimo,proximo;
ultimo=0;
penultimo=1;
i=0;
while(i<=46){
proximo=ultimo+penultimo;
printf("%d + %d = %d\n ",ultimo,penultimo,proximo);
ultimo=penultimo;
penultimo=proximo;
i++;
}
getch();
}
 

Meroll

Bovino de alcurnia
#4
Amplia la cantidad en tu while, solo lo tienes trabajando para menos de 10 numeros, podrias pedir que el usuario tecleé la cantidad de iteraciones que quieres desplegar, hace mucho que no utilizo c, pero recuerdo que si se podia hacer....
 

celio

Bovino maduro
#6
no mira que es que la programacion me da curiosidad me gusta leer e investigar, pero tu pregunta no la entiendo
 

celio

Bovino maduro
#7
Pues fijate que si amplio el while a 100 el programa no hace nada y es que ya cambie el tipo de dato y no quiere hacer lo
gracias
 

celio

Bovino maduro
#8
Pues fijate que si amplio el while a 100 el programa no hace nada y es que ya cambie el tipo de dato y no quiere hacer lo
gracias
 

z0n3r

Bovino maduro
#9
parece ser que es problema en el compilador :/ aunque yo lo probe en DEV C++ y pasa lo mismo en la iteracion 46
 

celio

Bovino maduro
#10
Si fijate que lo he notado y estos compildores viejos de Borland en win xp no es que funcionen muy bien

Muchas gracias
 

jlrmdevil

Bovino maduro
#11
Hmmmm...ya cambiaste el tipo de dato a long int o algo similar???? igual y esos compiladores ya no funcionan en XP y tengas que correrlo en una maquina virtual, o en su defecto migrar a un lenguaje visual...
 
#12
si despues de mucho sumar llegas a numeros negativos es limitacion del tipo de dato
si no te sirve ni el unsigned long vas a tener que usar otra libreria para manejar enteros mas grandes
 

timoneyti

Bovino maduro
#13
#include <stdio.h>
#include<stdlib.h>
main ()
{

int contador=3,numero1=0,numero2=1,numero3,n;
printf ("\nHasta que numero deseas imprimir de la serie de fibonacci? ");
scanf ("%d",&n);
printf ("\t%i \n\t%i\n",numero1,numero2);

do {
numero3=numero1+numero2;
printf("\t%i \n",numero3);
numero1=numero2;
numero2=numero3;
contador=contador+1;
} while (contador<=n);
system("pause");
}
 
#14
Hola amigo, apartir de un número te va a votar negativos por el tamaño de palabra de tu computadora, si lo corres en una Mac por ejemplo te va a cargar más números aunque se tarda unos 5 minutos en hacer la serie, fue un proyecto que hice hace un mes en la escuela, no te estreses.
 
Arriba