Article View: pl.comp.lang.php
Article #487Re: return TABLICA
From: leming nine
Date: Tue, 21 Aug 2001 15:28
Date: Tue, 21 Aug 2001 15:28
51 lines
2326 bytes
2326 bytes
1. function cos() {
2. $i = 0;
3. while ($i <= 10)
4. $tmp[$i][1] = $i;
5. $tmp[$i][2] = $i;
6. $tmp[$i][3] = $i;
7. $tmp[$i][4] = $i;
8. $tmp[$i][5] = $i;
9. $i += 1;
10. }
11. return $tmp;
12. }
ad. 1: funkcja o nazwie 'cos' już istnieje.
ad. 2, 3, 9: zamiast ręcznie inicjować, sprawdzać
warunek oraz inkrementować zmienną iterującą
lepiej byłoby użyć specjalnie do tego przeznaczonej
konstrukcji 'for'.
ad. 3-8: dlaczego nie ma tutaj zastosowanych parametrów,
tylko funkcja zwraca _zafiksowane_ wartości?!
Tak nie powinno się programować, ponieważ funkcje
nie będą przydatne - nie przewidują każdej dostępnej
kombinacji. To jak w matematyce -- funkcje powinny
być jak wzory, przez które jedynie coś się przetwarza.
Czyli nie:
function zwróćPoleTrójkąta() { return 5;}
...lecz:
function poleTrojkata($a, $h) {
return (($a / 2) * $h);
}
Rozumiesz? To są podstawy programowania!
ad. 9: jeśli stosować skróty, to na całego! Dlaczego
używasz operatora skróconego '+=' skoro mógłbyś
zastosować '++'?
Na koniec wskazówka, że ja bym tą funkcję napisał tak:
function foo($n, $m) {
for ($i = 0; $i <= $n; $i++) {
for ($j = 1; $j < $m + 1; $j++) {
$tmp[$i][$j] = $i;
}
}
return $tmp;
}
$result = foo(10, 5);
...co prawda nie widzę zastosowania :)
--
l9
Technical Details
Message-ID:
<9ltuo5$ne3$1@okapi.ict.pwr.wroc.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!news.man.poznan.pl!ict.pwr.wroc.pl!not-for-mailReferences:
<3b825e99@news.vogel.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!news.man.poznan.pl!ict.pwr.wroc.pl!not-for-mail From: "leming nine" <l9spam@yt.ng.pl> Newsgroups: pl.comp.lang.php Subject: Re: return TABLICA Date: Tue, 21 Aug 2001 17:28:27 +0200 Organization: yellowtree Lines: 52 Message-ID: <9ltuo5$ne3$1@okapi.ict.pwr.wroc.pl> References: <3b825e99@news.vogel.pl> Reply-To: "leming nine" <l9spam@yt.ng.pl> NNTP-Posting-Host: dial485.walbrzych.dialog.net.pl Mime-Version: 1.0 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit