Oldal: 1 / 7

Fejtörő (2014-2015)

Elküldve: 2014.12.29. 12:23
Szerző: Pgyuri
Kedves Spectrum Programozó!

Lehullott a hó és eljött az év végi fejtörő ideje. Most nem kell majd sorok közt olvasnod, rejtélyes trükkökre gondolnod, csak egyszerűen gépeld be a programot és azonnal futtathatod. Az eredményt megcsodálhatod, bár Te, mint igazi BASIC rajongó, nem lehetsz majd elégedett vele. Kaphatnád feladatként, hogy mit kell tenni ahhoz, hogy az ajándék hibátlan legyen, de talán túl nehéz lenne a feltörés. Így tehát inkább eláruljuk:

A 40. és 60. programsorok közé írj egy "egyszerű" programrészt, amely a READ utasítással beolvasott értéket megtükrözi. Igen, jól olvastad, nem elírás, tehát nem megtrükközi, hanem megTÜKRÖZI. Hogyan is értsd ?

Egy byte 8 bitből áll, amely 0 és 255 közti értéket kaphat az alábbiak szerint:

10110010 = 1*128+0*64+1*32+1*16+0*8+0*4+1*2+0 = 178

ez tükrözve

01001101 = 0*128+1*64+0*32+0*16+1*8+1*4+0*2+1 = 77

Találd ki, hogyan oldod meg és küldd be a megoldásod, de kizárólag BASIC programsorokat írj, gépi kódú program hívása nem engedélyezett. A helyes megoldások közül bemutatjuk a legszebben, áttekinthetőbben megírt programrészt, de külön díjazzuk a trükkösebb megoldásokat, a fő díj pedig a leggyorsabban lefutó és mégis hibátlan eredményt adó program íróját illeti meg. Ennek eldöntéséhez a program a futás végén kiír egy számértéket, amelynél a legkisebb érték győz.

Elő a gumigombokkal, programozásra fel!

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.29. 15:00
Szerző: Zozosoft
Nekem 522 jött ki. (A tippet mailban küldtem)

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.29. 15:06
Szerző: Pgyuri
Miután már 2 helytelen megoldás is érkezett, egy példát mutatnék be:

00000001 = 1

tükrözve

10000000 = 128

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.29. 15:15
Szerző: makranc
Pgyuri írta:Miután már 2 helytelen megoldás is érkezett, egy példát mutatnék be:

00000001 = 1
tükrözve
10000000 = 128
178-77 példa nem a volt a legjobb, mert az nem csak a fenti tükrözésre példa,
hanem arra is, ha 0-t és 1-t felcseréljük.

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.29. 15:28
Szerző: Pgyuri
Szerintem tökéletes példa volt, mert sikerült is belesétálni a kézenfekvőnek látszó, de hibás megoldásba ... :)

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.29. 15:39
Szerző: makranc
Pgyuri írta:Szerintem tökéletes példa volt, mert sikerült is belesétálni a kézenfekvőnek látszó, de hibás megoldásba ... :)
Nem zártad ki a tükrözés másik módját az eredeti leírásban, akkor miért lenne az helytelen?

Lett egy 112582-megoldás, ennél biztos lesz jobb.

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.29. 18:30
Szerző: makranc
Lett jobb, most 1725-nél járok.
:-)

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.30. 11:39
Szerző: Pgyuri
Üdv,

Eddig makanc barátunktól érkezett számos, érdekes és jó megoldás, de ha bárkinek van kedve, január 8-ig nem publikálom az eredményeket, így nyugodtan beszállhat.

Kategóriák:

- legszebb, áttekinthetőbb megoldás
- leggyorsabb megoldás
- váratlan, trükkös megoldás
- elvont megoldás

Pgyuri

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.31. 07:52
Szerző: csaba
Javaslom kategóriának a legrövidebb kiegészítést.
Persze el kell dönteni, hogy utasításszámban, karakterszámban, gombnyomásban, vagy memóriában elfoglalt méretben számolunk.

Továbbá Pgyuri "érdeme", hogy először használtam komolyabban emulátort, az eredeti vas helyett, de azért az utasítások megtalálásának könnyítésére kitettem magam mellé egy gumibillentyűset a monitor mellé.

Re: Fejtörő (2014-2015)

Elküldve: 2014.12.31. 09:52
Szerző: makranc
csaba írta:Javaslom kategóriának a legrövidebb kiegészítést.
Persze el kell dönteni, hogy utasításszámban, karakterszámban, gombnyomásban, vagy memóriában elfoglalt méretben számolunk..
Továbbá Pgyuri "érdeme", hogy először használtam komolyabban emulátort, az eredeti vas helyett, de azért az utasítások megtalálásának könnyítésére kitettem magam mellé egy gumibillentyűset a monitor mellé.
Memóriában elfoglalt hely szerintem azért nem célszerű, mert akkor tele lesz a program VAL"0"-val.
Ha Spectaculator-t használsz, Shift+F1-re megjelenik a Speccy-billentyűzet.