Function Calculates Fibonacci Numbers

조회 수: 15 (최근 30일)
Sophie Culhane
Sophie Culhane 2020년 11월 1일
답변: Stephen23 2020년 11월 2일
My task is to write a function that calculates the nth Fibonacci number by making a call to 'nniadd', a program I have previously written. nniadd preforms the addition of two nonnegative integers where the integers and their sum are given in row vector form (12345 = [1 2 3 4 5]). nniadd also have definitions in the program that are as follows:
x = a nonnegative integer in row vector form
y = a nonnegative integer in row vector form
x_plus_y = the sum of x and y in row vector form
I am pretty sure the goal of this assignment is to replace the addition in the fibonacci definition with the program 'nniadd' however I am not sure how to do so. Here is what I have so far, please help me with what to do next.
function Fn = ex1(n)
%
%
if n < 3
Fn = 1;
else
Fn_2 = 1;
Fn_1 = 1;
for k = 3:n
Fn = Fn_1 + Fn_2;
Fn_2 = Fn_1;
Fn_1 = Fn;
end
end
my_function(nniadd);
  댓글 수: 1
Sophie Culhane
Sophie Culhane 2020년 11월 2일
편집: Stephen23 2020년 11월 2일
I changed my program a small amount, but I am still receiving an error message.
function Fn = ex1(n) % % if n < 3 Fn = 1; else Fn_2 = 1; Fn_1 = 1; for k = 3:n Fn = nniadd(Fn_1, Fn_2); Fn_2 = Fn_1; Fn_1 = Fn; end end

댓글을 달려면 로그인하십시오.

답변 (1개)

Stephen23
Stephen23 2020년 11월 2일
n = 13;
prv = 0;
out = 1;
for k = 3:n
[out,prv] = deal(out+prv,out); % replace |+| with your function NNIADD
disp(out)
end
1 2 3 5 8 13 21 34 55 89 144

카테고리

Help CenterFile Exchange에서 Numeric Types에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by