Why are is the zeros or zero(size) function in a for-loop function?

5 Ansichten (letzte 30 Tage)
Rayell
Rayell am 28 Sep. 2023
Beantwortet: Dyuman Joshi am 28 Sep. 2023
This is what i am trying to answer:
Compute 𝑦 = cos 2 𝑥 for x-values from 0 to 𝜋 (at least 100 values of x). Do this (i) with a for-loop
There are two different ways to do the y output. Im confused on that part
% Compute y= cos2x, with 100 values of x between 0 and pi
% (i) for-loop
% Create vectors
x = linspace (0,pi,100); % 100 values of x from 0 to pi
% Initialize the output vector y
y = zeros(1,100);
% y = zeros(size(x))^2
%Compute y-values using a for-loop
for i = 1:100
y(i) = cos(x(i))^2;
end

Antworten (1)

Dyuman Joshi
Dyuman Joshi am 28 Sep. 2023
"Why are is the zeros or zero(size) function in a for-loop function?"
y = zeros(1,100);
This is called Pre-allocation. It is done to improve the code execution time.
Another method to obtain the output is to vectorize the code - Vectorization
x = linspace(0,pi,100);
%Take the cos() of values in x and square every element.
y = cos(x).^2;

Kategorien

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

Produkte


Version

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by