Wednesday 6 May 2009

用Perl寫台灣樂透的演算法

這是我為了統計課所寫的台灣樂透的遊戲. 雖然不是很完整, 不過足夠讓學生玩得樂不開支.以下是台灣樂透的演算法(Algorithm), 希望大家可以幫我改進, 謝謝.

#!/usr/bin/perl

$length = 47;
$round = 6;

for($i = 0; $i < $length; $i++)
{
$a[$i] = $i + 1;
}

print "\n";

for($j = 0; $j < $round; $j++)
{
$k = int(rand(($length) - $j));
$num= $a[$k];
$num_1 = $j + 1;
print "Round $num_1 draws: $num\n";

for($t = $k; $t < $length + 1; $t++)
{
$a[$t] = $a[$t + 1];
$a[$length] = 0;
}
}
$d = int(rand($length - ($round + 1)));
$spec = $a[$d];
print "\n";
print "The special number is: $spec\n";
print "\n";

基于作者乃Free Software FoundationGNU的支持者, 所以你可以自由的使用我的程式碼, 修改我的程式碼.

No comments: