C while for..for....for

Aleš Procháska ales.prochaska na divesoft.com
Pátek Leden 27 11:25:24 CET 2023


Continue je takové malé skrytě propašované goto, tady navíc směrem zpátky, to by mě asi trápilo. Podle mě odůvodněné goto ano, ale jenom dopředu, aby nemohl vzniknout cyklus.

Aleš Procháska

-----Original Message-----
From: Hw-list <hw-list-bounces na list.hw.cz> On Behalf Of Jan Waclawek
Sent: Friday, 27 January, 2023 11:20
To: HW-news <hw-list na list.hw.cz>
Subject: RE: C while for..for....for

Riesenie je mnoho a zavisi od okolnosti. Niekedy sa taketo nieco da prepisat do jedineho cyklu ("prechadzajuc vsetkymi stavmi, kontrolujem toto a hento"), napr. pre tej jednoduchy pripad "ozubenych kolies" nieco ako

i = 0; j = 0; k = 0; l = 0;
while(1) {
  if (test(i, j, k, l)) break; // hotovo
  i++; if (i < maxi) continue; i = 0;
  j++; if (j < maxj) continue; j = 0;
  k++; if (k < maxk) continue; k = 0;
  l++; if (l < maxl) continue; break;  // koniec }

(... co samozrejme priamociaro vedie k tomu, ze indexy sa daju do pola a cele sa to zovseobecni pre N ozubenych kolies... atd.)

wek


----- Original Message ---------------

>Zlo by bylo to rozdělovat do funkcí. Takhle je to pěkně pohromadě a je jasně vidět, co které vnoření dělá. 
_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz http://list.hw.cz/mailman/listinfo/hw-list


Další informace o konferenci Hw-list