I'm creating a function to find areas of shapes. It takes two inputs, the first is a vector and the second is a variable number.
function area = area_calculator(A, num)
switch num
case 1 % Circle
r = norm(A);
A = pi*r^2 % Area
case 2 % Rectangle
A = b*h % Area; I want to multiply vector element 1 by vector element 2
end
So if I give it
>> area_calculator([2,4], 2)
I'm wanting b*h to be 2*4
I'm unsure how to instruct matlab to perform multiplication within the vector
Thank you very much

 Akzeptierte Antwort

madhan ravi
madhan ravi am 28 Jun. 2020
Bearbeitet: madhan ravi am 28 Jun. 2020

0 Stimmen

Use prod() to perform multiplication within a vector.
function area = area_calculator(vector, num)
switch num
case 1 % Circle
r = norm(vector);
area = pi*r^2 % Area
case 2 % Rectangle
area = prod(vector);% or you can use vector(1)*vector(2) % Area; I want to multiply vector element 1 by vector element 2
end

Weitere Antworten (1)

per isakson
per isakson am 28 Jun. 2020

0 Stimmen

Replace
case num == 1
by
case 1

1 Kommentar

Stephen Warren
Stephen Warren am 28 Jun. 2020
Thanks, that makes it cleaner.
How do I perform multiplication of elements from within one vector

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Mathematics and Optimization 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