Törölt nick Creative Commons License 1999.12.17 0 0 93
Kedves mindeki!
Amit most írok, tartalmazni fog egy kis programozást, de úgy, hogy akárki megértse. Szerintem nagyon érdekes lesz.
Lejjebb írtam, hogy amőba programot kezdtem el csinálni. Ennek egy részletét fogom itt ismertetni. Méghozzá azt a részét, amely intelligensen úgy rakja a bábukat, hogy végül kijöjjön 5 darab egy sorban (vízszintesen, függőlegesen vagy ferdén).

A tábla legyen 20x20-as, alaphelyzetben véletlenszerűen tartalmaz egy jelet (akárhol). Ez mellé kell még jeleket tennem, hogy végül 5 legyen egymás mellett.

Használatos rutinjaink (csak egy kell):
1. Van már a x jel egymás mellett? (IGEN/NEM) (X-ben meg kell adni, hogy milyen hosszú sorra kérdeztünk rá!)

A program:
1. sorban végigmegyünk a tábla minden elemén, és ahol szabad a hely (tehát nincs ott semmilyen jel), próbából odarakunk egyet.
2. Most új helyzet áll fenn: van egy újabb jelünk. Jó helyen van ez a jel? Hogyan állapítjuk ezt meg? Úgy, hogy elindítjuk az 1-es rutint. De x-nek mennyit adjunk meg? Kettőt!!! Ha van már 2 jel egymás mellett, akkor jöhet a hármas pont. Ha nincs még 2 jel egymás mellett, akkor levesszük ezt a próbából letett jelet, és lépünk a tábla következő elemére (azaz vissza az egyes pontra).
3. Most már van 2 jelünk egymás mellett. Ez a próba jelet most ne vegyük le, hanem erre a tábla-állásra rakjunk le újabb próba jelet! De hova? Ez kell eldönteni! Hogyan? Hát kezdjük a tábla elejéről! Újra jön az egyes ponttó a dolog, de most a kettes pontban már nem kettő hosszúságú sort keresünk, hanem három hosszúságút.
4. 1-3-ig ismételjük a programot, amíg 5 jel nem lesz egymás mellett.

(Bocs, direkt nem írtam algoritmus szerint, hátha így érthetőbb a laikusoknak. Továbbá a program úgy van megírva, hogy később tényleg lehessen belőle igazi, működő amőba programot írni.)

Ha valakit érdekel, leírom a pascal forrást is. Úgy tisztább lesz a dolog.