Skip to content

Instantly share code, notes, and snippets.

@kenreisan
Created July 3, 2018 18:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kenreisan/2477303b79bc326af945b0623b54a8a2 to your computer and use it in GitHub Desktop.
Save kenreisan/2477303b79bc326af945b0623b54a8a2 to your computer and use it in GitHub Desktop.
/*
* Autor: Eduardo Romero
* Version: 1.0
*
* Programa para calcular los numeros de la serie de
* Fibonacci. Se usa el metodo iterativo.
*
* Por las limitantes del rango de numeros que puede
* contener un "unsigned long long" el numero de Fibonacci
* que puede mostrar el programa es fibo93.
*/
#include <stdio.h>
#include <stdlib.h>
unsigned long long fibonacci(int num){
/*
* Recibe: Numero de la serie de Fibonacci.
*
* Regresa: El valor correspondiente alo numero
* de la serie de Fibonacci.
*
* Los casos bases son 0 y 1, despues solo es una suma
* numero fibo-1 y fibo-2.
*/
unsigned long long fibo1, fibo2, fibor;
if (num <= 0)
return 0;
if (num == 1)
return 1;
fibo1 = 0;
fibo2 = 1;
for (int i=2; i <= num; i++){
fibor = fibo1 + fibo2;
fibo1 = fibo2;
fibo2 = fibor;
}
return fibor;
}
int main(int argc, char *argv[]){
/*
* Recibe: El numero de la serie de Fibonacci desde la
* linea de comandos.
*
* Imprime en pantalla el numero deseado de la serie.
*/
unsigned long long resultado;
resultado = fibonacci(atoi(argv[1]));
printf("fibo[%s] = %llu\n",argv[1],resultado);
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment