Adding fields of two different structs together

% Example structures:
part(1) = struct('name', 'x', 'number', 1);
part(2) = struct('name', 'y', 'number', 2);
part(3) = struct('name', 'z', 'number', 3);
% Example: 1st user input should be the 'name' so "x"
% 2nd user input should be another'name' so "z"
% total_number = 1 + 3

3 Kommentare

VBBV
VBBV am 13 Mai 2023
Verschoben: VBBV am 13 Mai 2023
part(1) = struct('name', 'x', 'number', 1)
part = struct with fields:
name: 'x' number: 1
part(2) = struct('name', 'y', 'number', 2);
part(3) = struct('name', 'z', 'number', 3);
part(1).number+part(3).number
ans = 4
Kono
Kono am 13 Mai 2023
Verschoben: VBBV am 13 Mai 2023
Thanks for the response but is there a way to make it depend on the user's input?
For example I would like the user to input two names, say 'y' and 'z', and then come up with the sum of numbers
" is there a way to make it depend on the user's input?"
part = struct("x",1,"y",2,"z",3);
part.("x")+part.("z")
ans = 4

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Matt J
Matt J am 13 Mai 2023
It would be a better to use a dictionary than a struct,
part=dictionary(["x","y","z"],1:3);
part("x")+part("z")
ans = 4

Weitere Antworten (0)

Kategorien

Gefragt:

am 13 Mai 2023

Kommentiert:

am 13 Mai 2023

Community Treasure Hunt

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

Start Hunting!

Translated by