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

 Réponse acceptée

madhan ravi
madhan ravi le 28 Juin 2020
Modifié(e) : madhan ravi le 28 Juin 2020

0 votes

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

Plus de réponses (1)

per isakson
per isakson le 28 Juin 2020

0 votes

Replace
case num == 1
by
case 1

1 commentaire

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

Connectez-vous pour commenter.

Catégories

En savoir plus sur Mathematics and Optimization dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by