Data update
This commit is contained in:
parent
ed705008a8
commit
0df55f9f24
2196 changed files with 32999 additions and 3075 deletions
26
Task/Damm-algorithm/Tcl/damm-algorithm.tcl
Normal file
26
Task/Damm-algorithm/Tcl/damm-algorithm.tcl
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
proc damm {number} {
|
||||
set digits [split $number ""]
|
||||
set tbl {
|
||||
{0 3 1 7 5 9 8 6 4 2}
|
||||
{7 0 9 2 1 5 4 8 6 3}
|
||||
{4 2 0 6 8 7 1 3 5 9}
|
||||
{1 7 5 0 9 8 3 4 2 6}
|
||||
{6 1 2 3 0 4 5 9 7 8}
|
||||
{3 6 7 4 2 0 9 5 8 1}
|
||||
{5 8 6 9 7 2 0 1 3 4}
|
||||
{8 9 4 5 3 6 2 0 1 7}
|
||||
{9 4 3 8 6 1 7 2 0 5}
|
||||
{2 5 8 1 4 3 6 7 9 0}
|
||||
}
|
||||
|
||||
set row 0
|
||||
foreach col $digits {
|
||||
set row [lindex $tbl $row $col]
|
||||
}
|
||||
return [expr {$row == 0 ? 1 : 0}]
|
||||
}
|
||||
|
||||
foreach number {5724 5727 112946} {
|
||||
set correct [damm $number]
|
||||
puts "$number:\tChecksum digit [expr {$correct ? "" : "in"}]correct."
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue