Cody

# Problem 71. Read a column of numbers and interpolate missing data

Solution 1911990

Submitted on 26 Aug 2019 by Tetsuji Tsuda
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
s = { ... 'Day Temp' ' 1 1.3' ' 2 1.12' ' 3 17' ' 4 -32' ' 5 13' ' 6 4.4' ' 7 19'}; t_correct = [1.3 1.12 17 -32 13 4.4 19]; assert(isequal(read_and_interp(s),t_correct));

n = [] sp = 1×3 cell array {0×0 char} {'1'} {'1.3'} nr3 = 1.3000 n = 1.3000 sp = 1×3 cell array {0×0 char} {'2'} {'1.12'} nr3 = 1.1200 n = 1.3000 1.1200 sp = 1×3 cell array {0×0 char} {'3'} {'17'} nr3 = 17 n = 1.3000 1.1200 17.0000 sp = 1×3 cell array {0×0 char} {'4'} {'-32'} nr3 = -32 n = 1.3000 1.1200 17.0000 -32.0000 sp = 1×3 cell array {0×0 char} {'5'} {'13'} nr3 = 13 n = 1.3000 1.1200 17.0000 -32.0000 13.0000 sp = 1×3 cell array {0×0 char} {'6'} {'4.4'} nr3 = 4.4000 n = 1.3000 1.1200 17.0000 -32.0000 13.0000 4.4000 sp = 1×3 cell array {0×0 char} {'7'} {'19'} nr3 = 19 n = 1.3000 1.1200 17.0000 -32.0000 13.0000 4.4000 19.0000 nf = 1.3000 1.1200 17.0000 -32.0000 13.0000 4.4000 19.0000 t = 1.3000 1.1200 17.0000 -32.0000 13.0000 4.4000 19.0000

2   Pass
s = { ... 'Day Temp' ' 1 1.3' ' 2 1.12' ' 3 17' ' 4 16' ' 5 9999' ' 6 9999' ' 7 19'}; t_correct = [1.3 1.12 17 16 17 18 19]; assert(isequal(read_and_interp(s),t_correct));

n = [] sp = 1×3 cell array {0×0 char} {'1'} {'1.3'} nr3 = 1.3000 n = 1.3000 sp = 1×3 cell array {0×0 char} {'2'} {'1.12'} nr3 = 1.1200 n = 1.3000 1.1200 sp = 1×3 cell array {0×0 char} {'3'} {'17'} nr3 = 17 n = 1.3000 1.1200 17.0000 sp = 1×3 cell array {0×0 char} {'4'} {'16'} nr3 = 16 n = 1.3000 1.1200 17.0000 16.0000 sp = 1×3 cell array {0×0 char} {'5'} {'9999'} nr3 = 9999 nr3 = NaN n = 1.3000 1.1200 17.0000 16.0000 NaN sp = 1×3 cell array {0×0 char} {'6'} {'9999'} nr3 = 9999 nr3 = NaN n = 1.3000 1.1200 17.0000 16.0000 NaN NaN sp = 1×3 cell array {0×0 char} {'7'} {'19'} nr3 = 19 n = 1.3000 1.1200 17.0000 16.0000 NaN NaN 19.0000 nf = 1.3000 1.1200 17.0000 16.0000 17.0000 18.0000 19.0000 t = 1.3000 1.1200 17.0000 16.0000 17.0000 18.0000 19.0000

3   Pass
s = { ... 'Day Temp' ' 1 -5' ' 2 19' ' 3 1' ' 4 9999' ' 5 3'}; t_correct = [-5 19 1 2 3]; assert(isequal(read_and_interp(s),t_correct));

n = [] sp = 1×3 cell array {0×0 char} {'1'} {'-5'} nr3 = -5 n = -5 sp = 1×3 cell array {0×0 char} {'2'} {'19'} nr3 = 19 n = -5 19 sp = 1×3 cell array {0×0 char} {'3'} {'1'} nr3 = 1 n = -5 19 1 sp = 1×3 cell array {0×0 char} {'4'} {'9999'} nr3 = 9999 nr3 = NaN n = -5 19 1 NaN sp = 1×3 cell array {0×0 char} {'5'} {'3'} nr3 = 3 n = -5 19 1 NaN 3 nf = -5 19 1 2 3 t = -5 19 1 2 3