Multiplying elements of a vector

31 visualizzazioni (ultimi 30 giorni)
Stephen Warren
Stephen Warren il 28 Giu 2020
Modificato: madhan ravi il 28 Giu 2020
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

Risposta accettata

madhan ravi
madhan ravi il 28 Giu 2020
Modificato: madhan ravi il 28 Giu 2020
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

Più risposte (1)

per isakson
per isakson il 28 Giu 2020
Replace
case num == 1
by
case 1
  1 Commento
Stephen Warren
Stephen Warren il 28 Giu 2020
Thanks, that makes it cleaner.
How do I perform multiplication of elements from within one vector

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by