Problem 1689. Determine which fields have been modified in a structure
Given two input structures (s1, s2), determine which field values have been modified in s2 compared to s1. Your output should be a cell array of appropriate fieldnames and a cell array of the corresponding s2 field values. If s1 and s2 are identical (i.e. no values have been changed), return [] for both outputs.
Example
Suppose
s1.foo = 1; s1.bar = 2; s1.baz = 3;
and
s2.foo = 1; s2.bar = 0; s2.baz = 3;
then the correct output is
f = {'bar'} v = {0}
Assumptions
- Inputs are scalar structures
- Inputs have identical fieldnames
- Field values can be numeric arrays, strings, or cell arrays
- The ith cell in output f corresponds to the ith cell in output v
Solution Stats
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers21
Suggested Problems
-
Find the alphabetic word product
3325 Solvers
-
2924 Solvers
-
Back to basics 12 - Input Arguments
596 Solvers
-
Change the sign of even index entries of the reversed vector
553 Solvers
-
Fix the last element of a cell array
1341 Solvers
More from this Author44
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!