CUSIP: Difference between revisions
Content added Content deleted
Alextretyak (talk | contribs) (Added 11l) |
m (Cusip function was incorrect in several Languages. '0' -> 0, '9' -> 9, 'A' => 10, 'Z' -> 35, '*' -> 36 etc. The integer value for A-Z was off by 10.) |
||
Line 893: | Line 893: | ||
} |
} |
||
else if (c >= 'A' && c <= 'Z') { |
else if (c >= 'A' && c <= 'Z') { |
||
v = c - |
v = c - 55; // lower case letters apparently invalid |
||
} |
} |
||
else if (c == '*') { |
else if (c == '*') { |
||
Line 1,032: | Line 1,032: | ||
(cond |
(cond |
||
(and (>= int-char (int \0)) (<= int-char (int \9))) (- int-char 48) |
(and (>= int-char (int \0)) (<= int-char (int \9))) (- int-char 48) |
||
(and (>= int-char (int \A)) (<= int-char (int \Z))) (- int-char |
(and (>= int-char (int \A)) (<= int-char (int \Z))) (- int-char 55) |
||
(= c \*) 36 |
(= c \*) 36 |
||
(= c \@) 37 |
(= c \@) 37 |
||
Line 1,245: | Line 1,245: | ||
match c { |
match c { |
||
'0'..'9' => c.order() - 48, |
'0'..'9' => c.order() - 48, |
||
'A'..'Z' => c.order() - |
'A'..'Z' => c.order() - 55, |
||
'*' => 36, |
'*' => 36, |
||
'@' => 37, |
'@' => 37, |
||
Line 1,588: | Line 1,588: | ||
v = int(c) - 48 |
v = int(c) - 48 |
||
case c >= 'A' && c <= 'Z': |
case c >= 'A' && c <= 'Z': |
||
v = int(c) - |
v = int(c) - 55 |
||
case c == '*': |
case c == '*': |
||
v = 36 |
v = 36 |
||
Line 1,649: | Line 1,649: | ||
v = c - 48 |
v = c - 48 |
||
} else if (c >= ('A' as char) && c <= ('Z' as char)) { |
} else if (c >= ('A' as char) && c <= ('Z' as char)) { |
||
v = c - |
v = c - 55 // lower case letters apparently invalid |
||
} else if (c == '*' as char) { |
} else if (c == '*' as char) { |
||
v = 36 |
v = 36 |
||
Line 1,878: | Line 1,878: | ||
v = c - 48; |
v = c - 48; |
||
} else if (c >= 'A' && c <= 'Z') { |
} else if (c >= 'A' && c <= 'Z') { |
||
v = c - |
v = c - 55; // lower case letters apparently invalid |
||
} else if (c == '*') { |
} else if (c == '*') { |
||
v = 36; |
v = 36; |
||
Line 2,410: | Line 2,410: | ||
var v = when (c) { |
var v = when (c) { |
||
in '0'..'9' -> c.toInt() - 48 |
in '0'..'9' -> c.toInt() - 48 |
||
in 'A'..'Z' -> c.toInt() - |
in 'A'..'Z' -> c.toInt() - 55 // lower case letters apparently invalid |
||
'*' -> 36 |
'*' -> 36 |
||
'@' -> 37 |
'@' -> 37 |
||
Line 2,534: | Line 2,534: | ||
v = tonumber(c) |
v = tonumber(c) |
||
elseif c:match("%a") then |
elseif c:match("%a") then |
||
p = string.byte(c) - |
p = string.byte(c) - 55 |
||
v = p + 9 |
v = p + 9 |
||
elseif c == "*" then |
elseif c == "*" then |
||
Line 2,806: | Line 2,806: | ||
v := c - 48; |
v := c - 48; |
||
} else if (c >= 'A' & c <= 'Z') { |
} else if (c >= 'A' & c <= 'Z') { |
||
v := c - |
v := c - 55; # lower case letters apparently invalid |
||
} else if (c = '*') { |
} else if (c = '*') { |
||
v := 36; |
v := 36; |
||
Line 3,535: | Line 3,535: | ||
ok |
ok |
||
if x >= ascii("A") and x <= ascii("Z") |
if x >= ascii("A") and x <= ascii("Z") |
||
v = x - |
v = x - 55 |
||
flag = 1 |
flag = 1 |
||
ok |
ok |
||
Line 3,715: | Line 3,715: | ||
var v = 0 |
var v = 0 |
||
if (c >= '0' && c <= '9') v = c - 48 |
if (c >= '0' && c <= '9') v = c - 48 |
||
else if (c >= 'A' && c <= 'Z') v = c - |
else if (c >= 'A' && c <= 'Z') v = c - 55 // lower case letters apparently invalid |
||
else if (c == '*') v = 36 |
else if (c == '*') v = 36 |
||
else if (c == '@') v = 37 |
else if (c == '@') v = 37 |
||
Line 4,007: | Line 4,007: | ||
v = Asc(c) - 48 |
v = Asc(c) - 48 |
||
ElseIf "A" <= c AndAlso c <= "Z" Then |
ElseIf "A" <= c AndAlso c <= "Z" Then |
||
v = Asc(c) - |
v = Asc(c) - 55 ' Lower case letters are apparently invalid |
||
ElseIf c = "*" Then |
ElseIf c = "*" Then |
||
v = 36 |
v = 36 |
||
Line 4,059: | Line 4,059: | ||
v = c - 48 |
v = c - 48 |
||
} else if (c >= 65 && c <= 90) { // 'A' to 'Z' |
} else if (c >= 65 && c <= 90) { // 'A' to 'Z' |
||
v = c - |
v = c - 55 |
||
} else if (s[i] == "*") { |
} else if (s[i] == "*") { |
||
v = 36 |
v = 36 |