FIBONACCI

Iniciado por JOSE23, 22 Febrero 2011, 18:52 PM

0 Miembros y 1 Visitante están viendo este tema.

farresito

#10
Hace unos días la hice también en C++:

Código (cpp) [Seleccionar]
#include <stdio.h>
#include <iostream>
using namespace std;

int main (void)
{
int a, b, sum;
a = 0;
b = 1;
for (int i = 0; i < 20; i++)
{
sum = a + b;
cout << sum << endl;
a = b;
b = sum;
}
}


SI te fijas, hay un apartado donde hago el bucle; en el ejemplo he puesto hasta 20 carácteres:

Código (cpp) [Seleccionar]
for (int i = 0; i < 20; i++)

Solo hace falta que hagas un cin para pedir al usuario un número que se guardará por ejemplo en NUM, y hacer

Código (cpp) [Seleccionar]
for (int i = 0; i < NUM; i++)

Donde NUM será la variable que guardará cuantos numeros se mostrarán (los que pida el usuario.

Así que queda:

Código (cpp) [Seleccionar]
#include <stdio.h>
#include <iostream>
using namespace std;

int main (void)
{
int a, b, sum, num;
a = 0;
b = 1;

cout << "Introduce la cantidad de numeros a mostrar: ";
cin >> num;

for (int i = 0; i < num; i++)
{
sum = a + b;
cout << sum << endl;
a = b;
b = sum;
}
}


Espero lo hayas entendido y que no haya perdido minutos de mi vida en explicártelo ;)

Un abrazo

pajaras

#11
Funció FibonacciRecursiu (ent n:enter) retorna enter
Var

f:enter
fvar
Si
n=0 o n=1 ----> f:=1
n>1 ----> f:= FibonacciRecursiu(n-1)+FibonacciRecursiu(n-2)
fsi
Retorna f
ffunció

ventajas, es como un while pero la función se llama a sí misma hasta llegar al caso base n=0 o n=1, reduces longitud de codigo considerable.

PD: como te dije, aqui tienes el algorisme de la sucesión de fibonacci, està en catalan mi lengua (si no lo entiendes traductor ;) ) cualquier otra duda, pregunta, espero haberte ayudado.

RyogiShiki

Cita de: pajaras en 23 Febrero 2011, 20:48 PM
Funció FibonacciRecursiu (ent n:enter) retorna enter
Var

f:enter
fvar
Si
n=0 o n=1 ----> f:=1
n>1 ----> f:= FibonacciRecursiu(n-1)+FibonacciRecursiu(n-2)
fsi
Retorna f
ffunció

ventajas, es como un while pero la función se llama a sí misma hasta llegar al caso base n=0 o n=1, reduces longitud de codigo considerable.

PD: como te dije, aqui tienes el algorisme de la sucesión de fibonacci, està en catalan mi lengua (si no lo entiendes traductor ;) ) cualquier otra duda, pregunta, espero haberte ayudado.

No soy muy partidario de la Recursión, la verdad nunca me gustó, me gusta más la iteración, pero bueno, siempre hay muchas buenas y diferentes soluciones a un problema no?

Código (c++) [Seleccionar]
Programa: Secuencia de Fibonacci
Inicio Programa:
Entero CasoInicial = 0
Entero CasoInicial2 = 1
Mostrar CasoInIcial ", " CasoInicial2
Para i = 0 Hasta 13 ConIncremento = 1 Hacer:
Entero j = 0
j = CasoInicial + CasoInicial2
Mostrar ", " j
CasoInicial = CasoInicial2
CasoInicial = j
Fin_Para
Fin_Programa