Hogy lehet így egy mátrixot (2D tömböt) rendezni C#-ban?
"de mindet string-ként tárolom"
Ó de rendes vagy.
Asszem talán egy számlálós ciklus meg némi józan ész segítene a problémádon.
#2 Ne foglalkozz vele.
"Bolond lukból bolond szél fúj" Seamus McFly
:)
Ha mindenképpen kell string is abba a mátrixba, akkor nem tettél rosszul semmit.
A megfelelő típuskonverziós függvénnyel /StrToInt?/ átalakítod a vizsgálat idejére és vissza, ha ki kell írni.
Kell egy számlálós /for/ ciklus, aminek a ciklusváltozója 0-tól n minusz egyig növekszik.
Kell még egy temp változó /int/real/, ebbe kell eltárolni átmenetileg azt a számot, amit összehasonlítasz a soron következő oszlop-elemmel. - Lényegében annyi, hogy a mátrix rendezendő oszlopának első elemét átalakítod számmá, majd a temp-be írod.
- Ha a második elemnél kisebb, akkor csere, ha nem, akkor tovább lépsz EGGYEL, és a köv. elemet írod ki a temp-be majd azt hasonlítod össze a további elemmel és így tovább, amíg végig nem érsz.
Akkor miért nem ezzel kezdted?
Ehhez nem jó a mátrix.
Struktúra kell és azokból szervezett 1D tömb, hohgy még tévedésből se lehessen az összetartozó adatokat egymástól elmozgatni.
Akkor is az a mód ,amit írtam, csak az egész rekordot kell cserélni, nem csak a szám elemét.
És a struktúra előnyösebb azért is mert nem kell tipuskonverzió sem.
A for ciklus amúgy csak 0-tól n minusz 2-ig megy, mert az utolsó elemet már nem kell hasonlítani semmivel.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, 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!