miércoles, 15 de mayo de 2013

Succesión de Fibonacci en C

El programa calcula e imprime en pantalla los valores de los términos de la famosa sucesión de Fibonacci. Cada término de la sucesión de Fibonacci se define como la suma de los dos términos anteriores. Las dos primeras componentes de la sucesión son 1 y 1, a partir de los cuales se pueden sacar todos los demás términos.
Esta sucesión es muy utilizada para describir distintos fenómenos, como son el crecimiento de una población de conejos en medio salvaje y sin depredadores. También nos permite modelar otros fenómenos como son el crecimiento de muchas plantas o el de las galaxias.

Aquí pongo el Código de la sucesión de Fibonacci en C:



/*PROGRAMA PARA CALCULARA LA SERIE DE FRIBONACCI EN C/C++*/
#include <stdio.h>

int ind,c,ter1=1,ter2=0;
char imp,corr=0;

int main(void)
{
    int aux;

    printf("CALCULA LA SERIE DE FIBONACCI:");
    printf("Introduce el indice a calcular: ");
    fflush(stdin); scanf("%i",&ind);
    while (corr==0)
    {
        printf("Quieres imprimir toda la serie? (S=Si,N=No):  ");
        fflush(stdin);
        scanf("%c",&imp);
        if ((imp=='S')||(imp=='s'))
        {
            printf("\nLa serie hasta el termino %i es:\n",ind);
            for(c=1;c<=ind;c++)
            {
                printf("%6i",ter1);
                aux=ter2;
                ter2=ter1;
                ter1=ter1+aux;
            }
            corr=1;
        }
        else if ((imp=='N')||(imp=='n'))
        {
            for(c=1;c<=ind;c++)
            {
                aux=ter2;
                ter2=ter1;
                ter1=ter1+aux;
            }
            printf("El termino %i vale: %i",ind,ter2);
            corr=1;
        }
        else printf("Solo puede introducir N o S.\n\n");
}}


Se ha utilizado la función fflush para limpiar el buffer del teclado, ya que daba probelmas.

Un saludo.

No hay comentarios:

Publicar un comentario