Hi there I wrote a program that could calculate the distance an object falls due to gravity. I prompted the user to enter a g amount and the program would calculate the the distance. Now i would like to store the specific g of the different planets in a matrice. The user would enter the name of the planet and matlab will then from there calculate the distance fallen. could anybody assist me or guide me to the right path. Much appreciated.

 Akzeptierte Antwort

Aurele Turnes
Aurele Turnes am 5 Aug. 2014

0 Stimmen

You could also use a structure named g to store the value of g for each planet instead of a matrix. For example, you create your structure as follows:
g.Earth =
g.Mars =
g.Uranus =
Then, when the user inputs a planet, you can use dynamic field naming to access the appropriate g as follows:
user_planet = 'Earth';
user_g = g.(user_planet);
The following article gives a short introduction on dynamic field naming in structures:

Weitere Antworten (2)

Michael Haderlein
Michael Haderlein am 5 Aug. 2014

0 Stimmen

e.g.
planets={'Earth','Moon','Mars'};
g=[9.81 1.62 3.71];
user_planet=inputdlg('Planet name: ');
planet_ID=strmatch(user_planet,planets);
if isempty(planet_ID)
msgbox('Planet not found');
else
user_g=g(planet_ID);
%further calculations
end
oselu
oselu am 5 Aug. 2014

0 Stimmen

Thank you guys I will try all these methods. really appreciate it

Kategorien

Mehr zu Earth and Planetary Science finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 5 Aug. 2014

Kommentiert:

am 5 Aug. 2014

Community Treasure Hunt

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

Start Hunting!

Translated by