CUSIP: Difference between revisions

Content added Content deleted
(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 - 64; // lower case letters apparently invalid
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 64)
(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() - 64,
'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) - 64
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 - 64 // lower case letters apparently invalid
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 - 64; // lower case letters apparently invalid
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() - 64 // lower case letters apparently invalid
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) - 64
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 - 64; # lower case letters apparently invalid
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 - 64
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 - 64 // lower case letters apparently invalid
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) - 64 ' Lower case letters are apparently invalid
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 - 64
v = c - 55
} else if (s[i] == "*") {
} else if (s[i] == "*") {
v = 36
v = 36