aboutsummaryrefslogtreecommitdiff
path: root/0005/main.tcl
blob: 0d398a7914a66d53b45d574e01b94b01630bdbe9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
proc gcd {a b} {
    if {$b > $a} {
        set t $b
        set b $a
        set a $t
    }
    while {$b != 0} {
        set t $b
        set b [expr {$a % $b}]
        set a $t
    }
    return $a
}

proc lcm {a b} {
    set g [gcd $a $b]
    return [expr {$g * ($a / $g) * ($b / $g)}]
}

set result 1
for {set i 1} {$i <= 20} {incr i} {
    set result [lcm $result $i]
}

puts $result