Azzera filtri
Azzera filtri

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

1 visualizzazione (ultimi 30 giorni)
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 Commento
Torsten
Torsten il 27 Gen 2022
For me, it works fine after removing the ; after the line "for i=2:1000;"

Accedi per commentare.

Risposte (1)

Reshma Nerella
Reshma Nerella il 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.

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by