Kezdőoldal » Számítástechnika » Programozás » Mennyire "clean", ha a for...

Mennyire "clean", ha a for ciklus feltételénél nem a ciklusváltozót, hanem egy másik változót vizsgálok (elsősorban C#, de bármilyen nyelven érdekel)?

Figyelt kérdés

Kell nekem egy ciklus, mindegy milyen, akár do-while is jó :D. Egy változó, aminek mindenképp csökkentem az értékét (ideiglenes tömböket vizsgálok hátulról előre) és egy, aminek akkor növelem, ha az ideiglenes tömb adott indexen levő eleme érvényes érték volt és hozzáadtam a másik gyűjteményhez. Viszont ez utóbbi változó értéke kell, hogy meghatározza, meddig fut a ciklus.

Szóval előre nem tudom, hányszor fog lefutni, de:

- két változót is használok voltaképp "számlálóként",

- az egyiknek el kell érnie az adott értéket, addig fut a ciklus.


For-ciklussal oldottam meg, eléggé alternatív módon:


int k = 1;

for (int j = temp.Length - 1; k <= WhichLott; j--)

{

if (temp[j] != "")

{

lotNums.Add(int.Parse(temp[j]));

k++;

}

}



A j-nek itt csak annyi az értelme, hogy léptet, de legalább a ciklusfejben teszi ezt és nem kell külön.



2019. jún. 19. 20:16
1 2
 11/14 A kérdező kommentje:

Ha a TryParse-t használom, akkor külön kezelnem kell, ha nem számot kap, ugye?

Bár akkor nem kell vizsgálnom, hogy üres-e a tömb adott eleme (string.Empty), hanem jó oda is a TryParse.

2019. jún. 20. 07:39
 12/14 anonim ***** válasza:

"Mindenképp 5 vagy 6 számot kell megkapjon a lista, ezt az értéket tartalmazza a property."


Oké, de garantált, hogy talál is ennyi számot? mert ha nincs rá garancia, akkor le kell kezelni.

2019. jún. 20. 07:55
Hasznos számodra ez a válasz?
 13/14 A kérdező kommentje:
Elvileg garantált.
2019. jún. 20. 08:01
 14/14 A kérdező kommentje:

Talán ez:


int index = tempArray.Length - 1; // shows which item of the tempArray is currently examined


while (lotteryNums.Count < WhichLottery)

{

if (int.TryParse(tempArray[index], out int currentLotteryNum))

{

lotteryNums.Add(currentLotteryNum);

}

index--;

}

2019. jún. 20. 18:34
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!