input variable stored in matrice

1 visualizzazione (ultimi 30 giorni)
oselu
oselu il 5 Ago 2014
Commentato: oselu il 5 Ago 2014
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.

Risposta accettata

Aurele Turnes
Aurele Turnes il 5 Ago 2014
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:

Più risposte (2)

Michael Haderlein
Michael Haderlein il 5 Ago 2014
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 il 5 Ago 2014
Thank you guys I will try all these methods. really appreciate it

Categorie

Scopri di più su Earth and Planetary Science in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by