Writing code to call functions

3 visualizzazioni (ultimi 30 giorni)
Spaceman
Spaceman il 26 Feb 2024
Commentato: Spaceman il 26 Feb 2024
Given:
Find: Create a function that calculates the surface area of a sphere when provided with a radius as the input argument. Your code should work for both scalar radius values or an array of radii.
My Solution:
function A = AreaSphere(radius)
A=4*pi.*r^2
end
Code to call your function
r=randi(10,3,1);
Area=AreaSphere(r)
My Issue: I don't think I've learned how to properly call functions because I keep getting errors when trying to run function.

Risposta accettata

Stephen23
Stephen23 il 26 Feb 2024
"I don't think I've learned how to properly call functions because I keep getting errors when trying to run function."
The problem is how you have written the function: you defined one input argument RADIUS which you did not use anywhere. And then inside the function you refer to a variable/function named R which you did not define anywhere.
You also need to use array operations for element-wise operations:
r=randi(10,3,1);
Area = AreaSphere(r)
Area = 3×1
50.2655 201.0619 314.1593
function A = AreaSphere(radius)
A = 4*pi.*radius.^2;
end % ^^^^^^^^
  1 Commento
Spaceman
Spaceman il 26 Feb 2024
Genius. I understand the error of my ways now. I was getting confused on how to define and call what I had defined.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange

Tag

Prodotti


Release

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by