Publicidad

Introducción:

Hola, hoy resolveremos una serie muy similar a la de Fibonacci, este ejercicio lo saque de un practico que me pasaron.

Problema:

Generar y mostrar los primeros N términos de la siguiente serie : 0,1,1,2,4,7,13,24,44.

Obtener N términos de la siguiente serie : 0,1,1,2,4,7,13,24,44 - Programación - Serie númerica - Iludtración (Ney)

 

Solución:

En la series fibonacci se suele sumar los 2 anteriores resultados (llamémoslos a y b) para generar el actual (llamémoslo R), iniciando normalmente en: a= -1 y b=1.

En esta serie sucede algo similar, solo que toma los 3 anteriores (llamémoslos a, b y c), para generar el actual (R), iniciando en: a= -1, b=1 y c=0.

Siendo que R=a+b+c y a= -1, b=1 y c=0 sumamos y obtenemos:

R= -1+1+0

R= 0

Publicidad

Ahora antes de volver a sumar, hacemos una sucesión de los valores con las variables donde a=b, b=c, c=R, recordando que a = -1, b = 1 y c = 0.

a = b, b = c, c = R

a =1, b = 0, c = 0

R = 1+0+0

R = 1

Haciendo lo mismo repetidas veces podemos ver que la serie funciona:

a   b   c = R
-1  1   0 = 1
1   0   1 = 1
0   1   1 = 2
1   1   2 = 4
1   2   4 = 7
2   4   7 = 13
4   7  13 = 24
7  13  24 = 44

Para que se entienda mejor lo escribiré en pseudocódigo.

Donde:

  • a, b, c y R valen 0.
  • n es la cantidad de números que retornara.
  • n1 incrementara hasta llegar a n-1.
  • serie es una variable de tipo cadena o string.
pedir n
a=-1
b=1
c=0
while(n>0){
  R=a+b+c
  mostrar R
  a=b
  b=c
  c=R
  n=n-1
}

Aquí les dejo el código escrito en c++, por si desean probar el código directamente:

#include <iostream>
#include <string>

using namespace std;

int main(){
  int R,n,a,b,c;
  R=0; a=-1; b=1; c=0;
  string serie="";
  cout<<"por favor ingrese un número: ";
  cin>>n;
  while(n>0){
    R = a+b+c;
    serie = serie+to_string(R)+",";
    a = b;
    b = c;
    c = R;
    n = n-1;
  }
  cout<<serie;
  cout <<"\n"<<endl;
  return 0;
}

Si, encuentras algún error por favor dejalo en los comentarios, para que pueda rectificar el ejercicio.

Publicidad


Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments