Kezdőoldal » Számítástechnika » Programozás » Miért nem működik rendesen a...

Miért nem működik rendesen a for ciklus a C# nyelven írt programomban? Mi okozhatja? (részletek lent)

Figyelt kérdés

Van egy N*M*10 méretű több dimenziós tömböm, amivel egy műveletet akartam végezni az alábbi módon:

"for (int i=0; i<N; i++)

for (int j=0; j<M; j++)

for (int k=0; k<10; k++)

tömb[i,j,k]..."

Ám hibát jelzett, azzal az üzenettel, hogy "Az index a tömb határain kívülre mutatott." Átírtam a kódot, hogy nyomon tudjam követni az alábbi módon:

"for (int i=0; i<N; i++)

for (int j=0; j<M; j++)

for (int k=0; k<10; k++)

Console.WriteLine(tömb[i,j,k]);"

Erre sorban kiírta az alábbi elemeket:

tömb[0,0,0]; tömb[1,0,0]; ... ; tömb[N-1;0,0], majd, mivel nem létezik tömb[N,0,0], ezért hibát dobott.

Na, de miért az első indexet növeli, és ha már azt növeli, miért ment túl az N-1-en?



2015. aug. 23. 21:31
 1/2 anonim ***** válasza:

Ez a kód:


for (int i=0; i<N; i++)

for (int j=0; j<M; j++)

for (int k=0; k<10; k++)


Nem az i-t növeli először, hanem sorban a k-t, j-t, i-t, és nem is szalad túl az indexeken.

A tömböd van rosszul deklarálva, vagy nem ezt a kódot futtatod.

2015. aug. 23. 21:41
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:
Jobb lenne ha a {} jelek is benne lenne a beszámolódban, mert teljesen mást jelent ha belül van egyik ciklus a másikban vagy esetleg kívül!!
2015. aug. 28. 18:48
Hasznos számodra ez a válasz?

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!