28-Jul-2021 18:10:00
upc_test():
MATLAB/Octave version 9.9.0.1467703 (R2020b)
Test upc().
CH_IS_DIGIT_TEST
CH_IS_DIGIT is TRUE if a character represents a digit.
C CH_IS_DIGIT(C)
"0" 1
"1" 1
"2" 1
"3" 1
"4" 1
"5" 1
"6" 1
"7" 1
"8" 1
"9" 1
"X" 0
"?" 0
" " 0
CH_TO_DIGIT_TEST
CH_TO_DIGIT: character -> decimal digit
1 "0" 0
2 "1" 1
3 "2" 2
4 "3" 3
5 "4" 4
6 "5" 5
7 "6" 6
8 "7" 7
9 "8" 8
10 "9" 9
11 "X" -1
12 "?" -1
13 " " -1
S_TO_DIGITS_TEST
S_TO_DIGITS: string -> digit vector
Test string: "34E94-70.6"
Extracted 5 digits:
1: 3
2: 4
3: 9
4: 4
5: 7
Test string: "34E94-70.6"
Extracted 7 digits:
1: 3
2: 4
3: 9
4: 4
5: 7
6: 0
7: 6
UPC_CHECK_DIGIT_CALCULATE_TEST
UPC_CHECK_DIGIT_CALCULATE calculates the 12-th digit
(the check digit) of a UPC.
Check digit of "6-39382-00039-3" is 3, expecting 3
Check digit of "0 43000 18170" is 6, expecting 6
Check digit of "30074660601" is 7, expecting 7
Check digit of "24689753124" is 5, expecting 5
Check digit of "13579864213" is 9, expecting 9
UPC_IS_VALID_TEST
UPC_IS_VALID reports whether a UPC is valid.
Validity of "6-39382-00039-3" is 1, expecting 1
Validity of "6-39352-00039-3" is 0, expecting 0
Validity of "0 43000 18170 6" is 1, expecting 1
Validity of "0 43000 18170 9" is 0, expecting 0
upc_test():
Normal end of execution.
28-Jul-2021 18:10:01