Dzień Dobry. Mam problem z tablicą rekurencyjną.
Zadanie: Napisz tablicę rekurencyjną "Silnia", która po jednokrotnym zastosowaniu, tj. wywołaniu "&Silnia(6)", początkowo pustą tablicę "tb=();" przekształca w tablicę "@tb=(1, 2, 6, 24, 120, 720).
Oczywiście, jeśli chodzi o moją wersję programu liczącego silnię jest dobra, i mi kompiluje, ale mój wykładowca się z tym nie zgadza, a ja nie widzę błędu.
Mój program porównał do pascala, i ocenił ją jako złą. Oto część programu:
#!/usr/bin/perl
sub silniar
{
my($num) = @_;
if($num == 1)
{
@tbr[$num]=1;
return @tbr[$num];
} else
{
@tbr[$num]=$num * silniar($num - 1);
return @tbr[$num];
}
}