Hirdetés
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- lkristóf: Prohardver fórum userscript – hogy lásd, mikor neked válaszoltak
- Elektromos rásegítésű kerékpárok
- Meggyi001: Áram nélkül....méltóság nélkül.....
- Mr Dini: Mindent a StreamSharkról!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
Ú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
- Mikrotik routerek
- Iqos cigaretta
- Otthoni hálózat és internet megosztás
- Hobby elektronika
- Okos otthon - Home Assistant, openHAB és más nyílt rendszerek
- Saját memóriaszabvánnyal küzd a memóriahiány ellen az ASRock
- Napelem
- exHWSW - Értünk mindenhez IS
- ThinkPad (NEM IdeaPad)
- BestBuy topik
- További aktív témák...
- The Elder Scrolls Online Imperial Collector s Edition
- Game Pass Ultimate előfizetések 3 - 36 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN! AKCIÓ!
- MS SQL Server 2016, 2017, 2019
- MEGA AKCIÓ! - Jogtiszta Windows - Office & Autodesk & CorelDRAW - Azonnal - Számlával - Garanciával
- PC Game Pass előfizetés
- Eladó új állapotban levő Redmi Note 10S 6/128GB szürke / 12 hónap jótállás
- AKCIÓ! HP Elitedesk 800 G2 SFF brand - i7 6700 16GB DDR4 250GB SSD 500GB HDD GTX 1050Ti 4GB W10
- Xbox One S Minecraft Edition 1 TB + kontroller 6 hó garancia, számlával!
- BESZÁMÍTÁS! Sapphire Pulse RX 6800 16GB videokártya garanciával hibátlan működéssel
- 0perces! Samsung Galaxy Book5 360 2in1 Core Ultra 7 256V 16GB 1TB 15.6 FHD AMOLED TOUCH 1évgar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
