» »

[c++] break

[c++] break

slovencl ::

Če imam več zank eno v drugi, potem z break prekinem samo izvajanje "najbolj notranje" zanke. A se da določit, da z break premakne npr. za tri zanke, a moram uporabit goto? A je še kakšna druga rešitev?

BigWhale ::

> A je še kakšna druga rešitev?

Redesign. ;) Ker tole je zabluzeno... :P

buba švabe ::

Break iz vgnezdenih zank je edina še na pol sprejemljiva uporaba za goto. Ampak, če rabiš kaj takega, še posebej, če maš več kot dva nivoja zank, je to siguren znak, da je nekaj s tvojim designom narobe...
če hočeš razumet rekurzijo, moraš najprej razumet rekurzijo

Zgodovina sprememb…

Pimoz ::

3 zanke ena v drugi 8-O definitivno tuki nisi dobr razmislu kaj hočeš:(

slovencl ::

Evo primer...kaj je narobe z dizajnom?

	float podatek[10][10][10];

	for(int i=0;i<10;i++)
	{
	for(int j=0;j<10;j++)
	{
	for(int k=0;k<10;k++)
	{
		podatek[i][j][k]=neka_vrednost;
		if(neka_vrednost==neklaj kar ne sme bit)
		{
			pejd ven iz vseh treh for zank...
		}

	}
	}
	}

BigWhale ::

Hmmm, kaj pa ce bi namesto 3D arraya naredil kar navaden array?

podatek [10*10*10]?

Potem pa do posameznega elementa prides z (i + j * 10 + k * 100). Recimo. Lahko uporabis celo vektor za shranjevanje podatkov. Ceprav priporocam QHash ali pa QList... ;)

No sicer bi pa tisto tvojo klobaso napisal precej lepse tako, da bi tisti if preverjal preden se gres sprehajat po arrayu... ;) Ampak najbrz v resnici pocnes kaj drugega. Ker tole spodaj RES nima smisla.

Mogoce si mislil kaj takega?

int to_be()
{
  float podatek[10][10][10];
  for(int i=0;i<10;i++)
    for(int j=0;j<10;j++)
      for(int k=0;k<10;k++)
      {
        if(podatek[i][j][k] == neklaj kar ne sme bit)
        {
          return 0;
        } else {
          do_stuff();
        }
      }
}

BigWhale ::

Tam nekje na koncu bi moral biti se kak return 1; ;)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[php] Razbijanje giantskih števil na prafaktorja

Oddelek: Programiranje
332503 (1847) technolog
»

Pic- zamik za 24h

Oddelek: Elektrotehnika in elektronika
51004 (916) MeGreat
»

[Java] vprašanja

Oddelek: Programiranje
71474 (1474) tx-z
»

[C/C++] Konveksna lupina - brute force

Oddelek: Programiranje
71913 (1787) WarpedGone
»

Perl vprašanje.

Oddelek: Programiranje
171294 (1032) ABX

Več podobnih tem