My code is not adding up in the way that it should

1 Ansicht (letzte 30 Tage)
Michael Eugene Carter
Michael Eugene Carter am 27 Jan. 2022
Beantwortet: Reshma Nerella am 2 Feb. 2022
When I try to run this code, for whatever reason it just returns a bunch of zeros, even though I set the initial value to 2, I don't understand what I am doing wrong here. The code is supposed multiply each number of the array by the result of the previous array number, the function is 3x+1
% initialize the array as zeros
x = zeros(1,1000);
% fill in the first entry (doesn't follow the pattern)
x(1)=2;
% use a for loop to fill in the rest of the entries (that follow the pattern)
for i = 2:1000;
x(i) = 3*(x(i-1))+1
end
  1 Kommentar
Torsten
Torsten am 27 Jan. 2022
For me, it works fine after removing the ; after the line "for i=2:1000;"

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Reshma Nerella
Reshma Nerella am 2 Feb. 2022
Hi,
The values are not zeros, it has a muliplying factor of 1.0e+308, which can be seen when the variable is displayed in command window. Open the variable in the variable editor, to get the exact values at indices.
The semicolon after 'for' statement doesn't effect the result, but it is unnecessary.

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by