C# tömb segítség kellene. Hogyan oldjam meg?
2 egymásba ágyazott for ciklussal.
ellenőrzöd, hogy a tomb[i,j] megegyezik-e azzal a karakterrel, ha igen, akkor kiírod az i-t és a j-t.
Megnéztem ezzel a módszerrel:
for (int i = 0; i <= 9; i++)
{
for (int f = 0; f <= 4; f++)
{
if (bill[i, f] == b)
{
Console.WriteLine("A megadott billentyű a következő helyen található: ({0};{1}) ", i, f);
}
else
{
Console.WriteLine("A megadott karakter nem található. Biztos hogy a-z halmazban van és nem ékezetes?");
}
}
}
Szintaktikai hibát nem ír (semmi mást sem).
Egy vektorral(egy dimenziójú tömb) elmagyarázom neked az indexelést.
Namármost, ha deklarálsz egy tömböt 10 elemmel, akkor az utolsó eleme a 9. helyen lesz, az első a 0. tehát:
0,1,2,3,4,5,6,7,8,9 (ez a 10 elemű tömb)
Ha a ciklus addig megy, amíg i <= 10, akkor ha i = 10, akkor is lefut a ciklus, és a 10. indexre szeretne hivatkozni, ami már a (magyar számolás szerint) a 11. lenne, ami nincs.
a helyes megoldás i < 10, mert ilyenkor ha i < 10 akkor lefut, tehát 9-nél lefut (annyiadik elem van), de ha már 10, akkor nem fog lefutni.
Cseréld ki a <= -t <-re és működik
A második kérdésedre nem tudok válaszolni:
A b az milyen változó? a bill az milyen tipusú tömb, kellene az egész program, ha gondolod küldd át üzenetbe, és átnézem.
Az előző válasz azthiszem mindent megmagyaráz, annyival egészítenék, hogy nálad ilyesminek kellene kinéznie az algoritmusnak:
-két egymásba ágyazott ciklus, ahol a ciklusváltozó kisebb, mint <tömbnév>.GetLenght(<dimenzió 0.-tól számolva>)
-ha van találat akkor kiírod, ha nincs, akkor azt.
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!