Kezdőoldal » Számítástechnika » Programozás » Hogy hogy lehet ezt az if...

Hogy hogy lehet ezt az if else szerkezetet switch case-re átírni? int db = 0; if (x == 0 && y == 0) //1 { if (regiallapot[x + 1, y] == '#') db++; if (regiallapot[x + 1, y + 1] == '#') db++; if (regiallapot[x, y + 1] == '#') db++; }

Figyelt kérdés
2015. nov. 14. 20:03
1 2
 11/15 Tengor ***** válasza:

Csak összecsapva:

for(i=-1; i<=1; i++)

__ for(j=-1; j<=1; j++)

___ if ( x+1 > 0 && x+1 < q && y+j > y+j<q && regiallapot[x+i,y+i] == '#') db++

2015. nov. 14. 20:39
Hasznos számodra ez a válasz?
 12/15 anonim ***** válasza:

"#4, nincs köztük else"

Nem is állítottam ezt.


A kérdésben szereplő kód szerint csak van egy feltétel:

(x == 0 && y == 0)

ha ez teljesül, akkor ezen belül van 3 feltétel:

(regiallapot[x + 1, y] == '#')

illetve

(regiallapot[x + 1, y + 1] == '#')

illetve

(regiallapot[x, y + 1] == '#')

ha ezek teljesülnek, akkor növeljük a db értékét.


Ezen utóbbi 3 feltétel egyesíthető egy feltételben - maximum ennyi tehető a topiknyitó kérdés tekintetében.

2015. nov. 14. 20:43
Hasznos számodra ez a válasz?
 13/15 anonim ***** válasza:
Nem egyesíthető egy feltételben a 3, mert akkor nem lesz jó a számolás.
2015. nov. 14. 20:45
Hasznos számodra ez a válasz?
 14/15 Tengor ***** válasza:
#12, de a te kódodban akkor is eggyel nő a db értéke, ha a vagylagos feltételek közül 1-nél több is teljesül.
2015. nov. 14. 20:46
Hasznos számodra ez a válasz?
 15/15 anonim ***** válasza:

Van nyelv amin meglehetne cukin oldani, így:


int db = 0;

if (x == 0 && y == 0) //1

{

db += (regiallapot[x + 1][y] == '#') + (regiallapot[x + 1][y + 1]) == '#' + (regiallapot[x][y + 1] == '#');

}

2015. nov. 14. 21:27
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!