Új hozzászólás Aktív témák
-
loszerafin
senior tag
válasz
loszerafin #169 üzenetére
Vagy:
Mindent kitörölni, ami nem sakkbábú-betű, betűnként újsorba tenni (=>minden sorban egyetlen betű lesz, azaz annyi sor, ahány bábú), sort-olni, uniq -c -vel megszámolhatod egyszerre, miből hány van.
Ezzel csak azt akarom mondani, hogy mindenre 1000+1 megoldás van. -
loszerafin
senior tag
-
loszerafin
senior tag
válasz
loszerafin #144 üzenetére
Még annyit, hogy mire be kell adni, a google már indexeli ezt a fórumot, a tanár meg könnyedén rá fog találni a linkedre.
-
loszerafin
senior tag
válasz
loszerafin #143 üzenetére
Indítás:
awk -f sakk.awk myinput
Írj köré bash programot, ami
1. Ellenőrzi az inputot
2. Átalakítja úgy, hogy jó legyen ennek az awk scriptnek -
loszerafin
senior tag
válasz
peterszky #142 üzenetére
Írtam egy kis awk scriptet:
BEGIN {
for (r=1; r<=8; r++){
for (c=1; c<=8; c++) {
if ((r+c) % 2 == 0) TABLA[r,c]='' ''; else TABLA[r,c]=''*''
}
}
}
TABLA[$3,$2]=$1;
END {
for (r=1; r<=8; r++){
printf ''|'';
for (c=1; c<=8; c++) {
printf TABLA[r,c]
}
print ''|'';
}
}
Ennek egy ilyen input fájl kell:
B 1 1
H 2 1
F 3 1
B 8 1
F 4 3
f 4 4
g 3 5
g 7 5
g 4 7
Az első karakter a sakkbábu, nagybetűvel a fekete, kicsivel a fehér. Gyalogot is jelölni kell!
A második oszlop az oszlop sorszáma, harmadik a sor.
És ez az eredménye:
|BHF* * B|
|* * * * |
| * F * *|
|* *f* * |
| *g* *g*|
|* * * * |
| * g * *|
|* * * * | -
loszerafin
senior tag
válasz
loszerafin #140 üzenetére
Még egy kis info:
Van egy módszer, felülről-lefelé-nek hívják:
0.
Az inputnak megfelelően kiírom a bábukat tartalmazó sakktáblát.
1.
a,Beolvasom az inputot
b,Kiszámolom az eredményt
c,Kiírom az eredményt
2.
a1,Beolvasom a sorokat
a2,Szétbontom a sorokat
a3,Ellenőrzöm a részeket
b1,Szétbontom a részeket bábú-oszlop-sor részekre
b2,Ráteszem az elképzelt sakktáblámra a bábukat
c, Kiírom a sakktáblámat
De lehetne alulról-felfelé is építkezni:
Ahhoz, hogy kiírjam egy sakktábla képét, előszőr tárolnom kell.
Legyen , pl. egy mátrixom: TABLA[s,o] értéke legyenn a s. sor és o.adik oszlopban levő figura neve.
Kell nekem egy Táblára parancs, ami betesz egy figurát a táblára, meg egy Kiír parancs, ami kiírja a táblát. Meg kellene egy Beolv parancs, ami beolvas egyetlen bábuállást.
Persze kellene egy Sorbeolv, ami beolvas egy sornyi bábuállást. Ez nem állna másból, mint pár Beolv-ból.
Akkor jó lenne egy KétsorBeolv, ami két Sorbeolv lenne.
stb....
És még van sok egyéb.
Hogy melyiket választod, édesmindegy, csak az eredmény legyen jó.
A JÓ nem csak azt jelenti, hogy működik. Fontos szempontok
(KISS)
a, egyszerűség
b, részekre legyen bontva, a részek egyetlen egy dolgot csináljanak, de azt jól
c, legyen dokumentált
d, hibás inputra se szálljon el
e, Kerüld el a kerék felfedezését, használj már meglévő parancsokat
Sajnos, azt kell mondjam, a shell programozás abban némiképp eltér a hagyományos programozástól, hogy az ember itt próbálkozik. Pár meglévő parancs összekapcsolásával írják a scripteket, majd egyre bonyolítják, egy szint után pedig önálló részekre szedik.
De ehhez bizony ismerni kell a parancsokat és a gyakori kapcsolóikat. -
loszerafin
senior tag
válasz
loszerafin #139 üzenetére
Jajj, bocsi, elsőéves vagy, azaz most kezdted.
Én vmiért azt gondoltam, hogy már egy évet lehúztál.
Ebben az esetben teljesen kezdő vagy?
Akkor viszont ez túl mély víz. Még algoritmust se tudsz írni? Akkor minek ilyen feladat?
De hát volt felvételi, nem? Vagy az nem programozásból volt?
Na, szóval:
Próbáld meg leírni magadnak, hogy oldanád meg a feladatot, ha Te volnál a számítógép.
Több lépésben:
1. fogalmazd meg a feladatot, saját magadnak érthetően.
2. Próbáld megoldani a feladatot papíron, azaz tervezz magadnak különböző inputokat, és
rajzold meg hozzá a kimenetet.
3. Próbáld egyre ''gépiesebben'' megoldani, azaz egyre kevésbé használd az eszed a megoldáskor. Az intuíciódat teljesen kapcsold ki. Kb. egy 1,5-3 éves gyerek szintjére ''süllyedj'' le, aki mindent szó szerint vesz és csak a szájába rágott dolgokat tudja megcsinálni, azokból is max. 1-2 lépést tud egyszerre megjegyezni.
4. Egyre jobban támaszkodj ismétlődő, egyszerű lépésekre. Ezeket az egszerű lépéseket nevezd el találóan (=rövid, de velős név)
5. A látásodat szűkítsd le egyetlen sakk-mezőre és a szemed vezéreld a táblán parancsokkal.
6. Játszd el, hogy sakk-robot vagy, akinek egyetlen feladata a táblára tenni a figurákat, a betáplált állásnak megfelelően.
7. A memóriád szűkítsd le néhány rekeszre, ezekbe egyszerű dolgokat tehetsz, de ezután csak a betett dolgokra emlékezhetsz.
Írd ide a végső megoldási lépéseidet. -
loszerafin
senior tag
válasz
peterszky #138 üzenetére
Azt hiszem, az elvárások tényleg egy kicsit magasak.
Figyu, te bölcsész vagy az eltén? De akkor minek a unix?
a, minden algoritmus, ami nem maga kód és a feladattal foglalkozik.
b, de nyilván én egy kissé kódhoz-közelebbi-algoritmusra gondoltam
c, semmi kedvem elolvasni azt a rengeteg szöveget ami a feladathoz tartozik
d, olvasd el Te, írd meg az algoritmust, majd a részeinek bash-ba kódolásában segítek
Ha pedig kész megoldást akarsz, mondd azt és ne kertelj. -
loszerafin
senior tag
Figyu, én komolyan gondoltam, hogy írj hozzá algoritmust.
Tényleg nincs kedvem tornáztatni ezzel az agyamat, van elég elgondolkodtató saját feladatom... -
loszerafin
senior tag
Ha az elsőt meg tudod csinálni, akkor a másodikat érdemes az első kimenetéből
legyártani a convert segítségével.
Azaz a 2. feladat az eléggé egyszerű lesz, pár sorra tippelem a hosszát. -
loszerafin
senior tag
Hát, a feladat nem nehéz, azaz első ránézésre megoldható.
Viszont halál unalmas.
Esetleg írj hozzá valami algoritmust, aztán majd átültetjük bash-ra.
[link]
Különösen a tömbökkel foglalkozó részt olvasgasd.
Jut eszembe, van valami megszorítás a használható parancsokra vonatkozóan?
Bash shell jó lesz?
Új hozzászólás Aktív témák
- Samsung Galaxy A54 - türelemjáték
- Kedden érkezik a Galaxy S25 Edge
- Luck Dragon: Asszociációs játék. :)
- Autós topik
- AI tervezheti az Apple chipeket
- Counter-Strike: Global Offensive (CS:GO) / Counter-Strike 2 (CS2)
- sziku69: Fűzzük össze a szavakat :)
- OLED TV topic
- Mielőbb díjat rakatnának a görögök az olcsó csomagokra az EU-ban
- Építő/felújító topik
- További aktív témák...
- Sea of Thieves Premium Edition és Egyéb Játékkulcsok.
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most kedvező áron!
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - NYÁRI AKCIÓ!
- Eladó steam/ubisoft/EA/stb. kulcsok Bank/Revolut/Wise (EUR, USD, crypto OK)
- Xiaomi Redmi Note 13 Pro+ 512GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Honor 9X Lite 128GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! ASUS ROG STRIX Z390-E GAMING alaplap garanciával hibátlan működéssel
- QNAP TS-870U-RP 8 lemezes Rack NAS
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest