试着想这么一个程序,在一个程序中输出5的三次方,6的四次方和7的五次方。可能有人想到这样的写法:
#!/usr/bin/tclsh
puts [expr 5*5*5]
puts [expr 6*6*6*6]
puts [expr 7*7*7*7*7]
不得不承认这是一个好的办法,代码行数少,简单易懂,可是如果我告诉你要输出2的30次方和3的15次方呢?
是不是可以继续2*2*2…*2呢?当然可以,可是这样是不是已经很麻烦了?
于是有人想到了以前学习的循环,于是会用这样的程序
#!/usr/bin/tclsh
set result1 1
for {set i 0} {$i<30} {incr i} {
set result1 [expr $result1*2]
}
puts $result1
set result2 1