Hogyan oldjam meg Pascalban? (mátrixok)
A feladat az, hogy irassunk ki egy mátrixot a köv módon:
Tegyük fel a beolvasott mátrix:
123
456
789
Ez alapján a kiírt mátrix ilyen kell legyen:
124
753
689
Nekem sikerült megoldanom valahogy, de a középső sor fordítva van, itt a kód:
Ezzel tulajdonképpen csak feldarabolom a mátrixot átlós sorokkal.
Előre is köszönöm a segítséget.
Mi a logika a kiírásban?
Én nem találok benne semmit.
Nem vizsgáltam meg jobban, de jól értem, hogy egy 9 kockás mátrixot 100 kockába teszel bele, és utólag szóközökkel gondoskodol róla, hogy az üres számok helyett ne írjon semmit? Minek?
Ha a tömb elemei már eleve szét vannak választva, egyetlen változón keresztül úgy cserélgeted őket, ahogy akarod. Lehet, hogy csak nem ismerem fel az új elrendezés logikáját, és volna valami huszárvágás, amivel egy lendületből meg lehetne csinálni, de általános esetben így cserélsz meg két tömbelemet (mondjuk, éppen a négyest teszed át a hármas helyére):
cserevaltozo := a[1,3];
a[1,3] := a[2,1];
a[2,1] := cserevaltozo;
A programod nagyobbik részéről nem egészen értem, miért kell, de bizonyára van valami oka. Hamarosan hazaérek, akkor majd megnézem.
Neked ez működik? Szerintem ki van zárva. Nálam a kimenet:
1
24
753
68
9
De a „magyarázó” ábrád is sok minden egyébre inkább hasonlít, mint a kérdésben szereplő elrendezésre. Megpróbálom valahogyan mégiscsak értelmezni, de egyelőre vajmi kevés sikerrel.
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!