Pascal-ban hogyan lehetne karakteres felületű sudoku-t csinálni? Hogy kell definiálni?
Tehát, a tologatást stb miként kell megvalósítani, hogy működjön is?
program sudoku;
var
jatek : array [1..3,1..3] of byte;
i, j, k : byte;
begin
k := 1;
for i := 1 to 3 do
for j := 1 to 3 do
begin
jatek[i,j] := k;
inc(k);
Write(jatek[i,j]:5);
end;
end.
@tabaki : "0 után vizsgálandó értékeket akkor is gondosan ellenőrzöd, ha nem kettős kódot kaptál,"
Szerintem ezzel nincs gond (jó igazad van valószinűleg a kérdező nem direkt csinálta igy, tehát végül is ez is egy hiba), de ha igy marad akkor müködik a H,P,K, és M betükkel is (vagy SHIFT és a h,p,k és m betű vagy CAPS LOCK és ugyanúgy a h,p,k és m betű)
Üdv.
@#13:
Azt egyelőre nem nézem meg, maradjon nekem is egy kis szórakozás ;)
@#13:
Végre egy kérdező, aki a jelek szerint örömét leli a gondolkodásban, szerintem egyszerre nem kell nagyon előreszaladni, hadd legyen ideje eljutni a következő megoldandó részproblémáig.
A mozgatást pedig pont fordítva kéne intézni: Igaz, hogy valójában a lyukat mozgatod, de azt játsszuk, hogy a mellette levőt húzzuk a lyuk irányába. Tehát, amikor a jobb iránygombot nyomod le, akkor megy a lyuk balra, stb.
Én egyelőre itt tartok:
Nagyon szépen köszönöm Mindenkinek a válaszokat és a megoldásokat.
Meglepett, hogy mekkora ellenszenvet váltott ki, hogy kettős karakterként próbáltam kezelni a funkcióbillentyűket.
Régi Pascal-könyvben ajánlották e megoldást, mondván, hogy kettős kódokat generálhatnak a funkcióbillentyűk és ez ilyen módon küszöbölhető ki.
Lehet az is, hogy "én vagyok a szokásosnál is érzékenyebb".
@#16: „Lehet az is, hogy "én vagyok a szokásosnál is érzékenyebb".”
Az bizony meglehet, mert szerintem semmiféle ellenszenvet nem váltott ki a funkcióbillentyű-kezelésed, nagyjából ez a módja. De a második kód beolvasását érdemes arra az esetre korlátozni (egy begin..end között), ha előzőleg #0-t kaptál. De, mint coopper említé, így sem okoz gondot, csak éppen a nem túl indokolt, H,P,K, és M billentyűket is bevonja az irányításba.
Ez esett kicsit rosszul:
"Nagyon vagány, hogy a 0 után vizsgálandó értékeket akkor is gondosan ellenőrzöd, ha nem kettős kódot kaptál, meg az, hogy minden esetben útmutatást adsz
arra is, mit tegyen a program olyan helyzetben, amely nem következhet be."
Nekem úgy tűnt, hogy a mozgatásnál figyeltem a túlcsordulásra, a kettős karakter-problémát már értem.
A pimasz megjegyzéseimet ne vedd a lelkedre, aszerint ítélj a jószándékom felől, hogy foglalkozom-e a kérdéseddel. Nincs abban semmi rossz, vagy pláne szokatlan, hogy az ember furcsa dolgokat produkál, ha nem talál rá a megoldásra, de mégis gyötri az agyát, hogy csináljon már valamit... Ne félj, én is csak addig vagyok nagy legény, míg kezdő szintű feladatokkal kell összemérnem a tehetségemet, lehet, hogy egy év múlva éppen te fogod majd fejcsóválva javítgatni a félresikerült kódjaimat. Arra próbáltam felhívni a figyelmedet, hogy a bombabiztos program érdekében mulatságosan túlbiztosítottad azt a lehetőséget (igen, a túlcsordulást), amelyet előzőleg egy iffel kizártál. Általában valami ilyesmiről van szó:
if x > 1 then
x csökkentése, könyvelés
else
a fentiek nincsenek, van viszont sípszó, és x határértékre állítása
Tehát: Nemcsak, hogy hangjelzéssel figyelmeztetsz arra, hogy semmi sem történik, hanem még be is állítod a változót ugyanarra az értékre, ahol amúgy is van. Mindezt négyszer... Ne mondd már, hogy nincs rajta egy kis somolyogni való :)
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!