Fibonacci sequence, slightly different.

I am trying to write a code for the fibonacci sequence, but instead of adding the the term to its previous one, I want a number to start with (say 4, my code input called begin) and its first two outputs would be 4. It would loop n times (say 7 for this example). The output would look like [4 4 8 12 16 20 24]. How could I generalize this. So far I have
if begin ~=1 || begin ~= 0
seq(1)=begin;
seq(2)=begin;
k=3;
while k <= n
seq(k)=seq(begin-1)+begin;
k =k+1;
end
end

 Akzeptierte Antwort

James Tursa
James Tursa am 19 Feb. 2015

0 Stimmen

Looks like your indexing into seq is not quite right. Try this:
seq(k)=seq(k-1)+begin;

Weitere Antworten (3)

Titus Edelhofer
Titus Edelhofer am 19 Feb. 2015

1 Stimme

Hi,
I don't see what this has to do with Fibonacci though ;-). But you don't need the loop, just do something like
seq = begin * [1 1:(n-1)];
Titus
Evan
Evan am 19 Feb. 2015
Bearbeitet: Evan am 19 Feb. 2015

0 Stimmen

It seems to be quite close. You just need to make one small change. You should reference the seq variable using the index, k, not the begin variable:
begin = 4;
n = 5;
if begin ~=1 && begin ~= 0
seq(1)=begin;
seq(2)=begin;
k=3;
while k <= n
seq(k)=seq(k-1)+seq(k-2);
k = k+1;
end
end
Note that your example output isn't a fibonnaci sequence. Is this really what you want? If so, you could just make that array with:
begin = 4;
n = 5;
seq = [begin begin:begin:begin * n];
Bob Whiley
Bob Whiley am 19 Feb. 2015
Bearbeitet: Bob Whiley am 19 Feb. 2015

0 Stimmen

If he beginning number were 0, how could I make it so the first index in the output vector is 0, then the sequence continues normally after. Like if n = 6, and begin = 0, how could I get the output [0 1 1 2 3 5]
What I have so far is
if begin == 0
seq(1)=1;
seq(2)=1;
k=3;
while k <= n
seq(k)=seq(k-1)+seq(k-2);
k=k+1;
end
end

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by