Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
3
Task/CUSIP/J/cusip-1.j
Normal file
3
Task/CUSIP/J/cusip-1.j
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
ccd =. 10 | 10 - 10 | [: +/ [: , 10 (#.^:_1) (8 $ 1 2) * '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ*@#' i. ]
|
||||
ccd '68389X10'
|
||||
5
|
||||
10
Task/CUSIP/J/cusip-2.j
Normal file
10
Task/CUSIP/J/cusip-2.j
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
CUSIPcheckdigit =. 3 : 0
|
||||
assert. 8 = $ y NB. Only accept an 8-element long list
|
||||
assert. */ y e. '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ*@#' NB. Only accept characters from the list of 38
|
||||
values =. (8 $ 1 2) * '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ*@#' i. ] NB. Verb to translate characters and then double every second value.
|
||||
sumdigits =. +/@,@(10 10&#:) NB. Verb to sum the base-10 digits in a numerical array
|
||||
invertedmod =. 10 | 10 - 10 | ] NB. Verb to find the mod-10 of 10 minus mod-10
|
||||
": invertedmod sumdigits values y NB. Return the check digit as a character
|
||||
)
|
||||
addCUSIPcheckdigit =: , CUSIPcheckdigit
|
||||
verifyCUSIPcheckdigit =: {: = CUSIPcheckdigit@}:
|
||||
16
Task/CUSIP/J/cusip-3.j
Normal file
16
Task/CUSIP/J/cusip-3.j
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
addCUSIPcheckdigit '68389X10'
|
||||
68389X105
|
||||
verifyCUSIPcheckdigit '68389X106'
|
||||
0
|
||||
verifyCUSIPcheckdigit '68389X105'
|
||||
1
|
||||
samples =: '037833100', '17275R102', '38259P508', '594918104', '68389X106',: '68389X105'
|
||||
samples ; verifyCUSIPcheckdigit"1 samples
|
||||
┌─────────┬─┐
|
||||
│037833100│1│
|
||||
│17275R102│1│
|
||||
│38259P508│1│
|
||||
│594918104│1│
|
||||
│68389X106│0│
|
||||
│68389X105│1│
|
||||
└─────────┴─┘
|
||||
Loading…
Add table
Add a link
Reference in a new issue