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 Solvers22
Suggested Problems
-
How to find the position of an element in a vector without using the find function
2768 Solvers
-
Convert a numerical matrix into a cell array of strings
2182 Solvers
-
Get the length of a given vector
12082 Solvers
-
Implement simple rotation cypher
1087 Solvers
-
Create a vector whose elements depend on the previous element
733 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!