Kezdőoldal » Számítástechnika » Programok » Labirintust készítés?

Labirintust készítés?

Figyelt kérdés
Egy online feladat feldolgozásához labirintust kell készítenem. A lehető legegyszerűbb módon szeretném a feladatot végrehajtani mert egyáltalán nem értek ezekhez a dolgokhoz :(

2020. okt. 6. 06:05
 1/9 anonim ***** válasza:
100%
Ez így nagyon kevés. Csak az algoritmus kell, vagy komplett grafika? Milyen gépen, milyen környezetben, milyen nyelven? Kétlem, hogy olyanoknak, akik "egyáltalán nem értenek ezekhez a dolgokhoz", ilyen komplex feladatot adnának, mert a megfogalmazásból érződik, hogy nem vagy programozó.
2020. okt. 6. 06:35
Hasznos számodra ez a válasz?
 2/9 A kérdező kommentje:
Egyáltalán nem vagyok programozó, sőt nagyon messze is állok hozzá. Egy továbbképzésben veszek részt amelyben így kell feldolgozni a feladatot. Nem vagyok már fiatal, a számítástecnikához pedig egyáltalán nem érek sajnos.
2020. okt. 6. 09:13
 3/9 anonim ***** válasza:
100%

Nem tudom, hogy ilyesmire gondolsz-e:

[link]

2020. okt. 6. 11:53
Hasznos számodra ez a válasz?
 4/9 anonim ***** válasza:
100%

Egy egyszerű algoritmus:

Veszel egy páratlan oszlop és sor számú mátrixot. A külső kerülete mind fal, kivéve a ki és bejáratot valahol.

Utána sorban először felülről, aztán jobbról, alulról, majd balról:

Véletlen szerűen választasz egy páratlan számó sort/oszlopot és elkezdesz falat húzni addig, míg bele nem ütközöl a következő falba (előtte egy üres helyet hagysz). Ezt addig ismétled, míg már nem tudsz falat húzni sehova.

Kész a labirintus.

2020. okt. 6. 12:25
Hasznos számodra ez a válasz?
 5/9 tabaki ***** válasza:

A #12:25 által vázolt módszer tényleg talán a legegyszerűbb és két fontos dolog biztosítható vele: Hogy csak egy bejárata és egy kijárata legyen (a létrehozása után két rést kell ütni a külső falon), illetve, hogy a bejárat mindenképpen összeköttetésben legyen a kijárattal. A megoldás színesíthető azzal, ha a fal „építés” közben irányt változtathat vagy megszakadhat, esetleg nemcsak a külső-, hanem a már felépített belső falakból is indulhatnak újabb falak. Ezzel persze már akkor érdemes foglalkozni, ha az alap-algoritmus meg van oldva.

A feladat szempontjából nyilván nem közömbös, hogy mit tekintesz labirintusnak. A kolléga nem mulasztotta el megjegyezni: „Ezt addig ismétled, míg már nem tudsz falat húzni sehova.” Ez biztosítja, hogy az egész terep egyetlen, falakkal felosztott folyosórendszer legyen. Erről azonban csak a feladat tényleges ismeretében jelenthető ki, hogy valóban követelmény-e. Miért ne maradhatnának nagy, üres „termek”, ahonnét több folyosó is indulhat? Ilyenkor a teljes telirajzolás helyett elég lehet valami százalékot elvárni.

De másfajta labirintus is lehetséges. Elképzelheted például bányaként, ahol egy tetszőleges tömbbe furkálsz folyosókat, nem törődve azzal, hogy a másiktól egyetlen fal, vagy száz egység választ-e el, vagy tekintheted szobák rendszerének, amelyeket a falak megnyitásával tehetsz bejárhatóvá. A kihívás mindkét esetben egyrészt a ki- és bejárat közötti átjárás biztosítása, másrészt az, hogy azért minél kevesebb átjáró maradjon. Én itt illemtudóan meghátrálok; Tippjeim esetleg lennének a megvalósításra, a bizonyítás viszont nem erős oldalam.

Éppenséggel nem ártott volna a programnyelvet meg a felhasználás elképzelt módját is közölnöd, mindenesetre itt néhány nyelven találsz néhány ötletet a labirintus általánosságban való előállítására:

[link]

2020. okt. 6. 21:16
Hasznos számodra ez a válasz?
 6/9 A kérdező kommentje:
Köszönöm szépen a válaszokat. Sajnos olyan béna vagyok, hogy nem sikerült elkészítenem :( ezért rajzoltam egyet kézzel. Hát nem a legszebb de a célnak megfelelő. Remélem
2020. okt. 7. 05:18
 7/9 tabaki ***** válasza:

A jó ég, áldjon meg, tisztázhattad volna, hogy csak ennyiről van szó – nem hálót akarsz, hanem halat... De legalább utólag bemutathatnád, miféle csudát hoztál létre, hátha nekünk jobban sikerül.

Addig is egy próbálkozás, egyazon útvesztő kétféle ábrázolásban:

[link]

[link]

2020. okt. 7. 12:00
Hasznos számodra ez a válasz?
 8/9 tabaki ***** válasza:

Ha már szóba került a kézi rajzolás:

[link]

2020. okt. 8. 01:38
Hasznos számodra ez a válasz?
 9/9 tabaki ***** válasza:

Még néhány:

[link]

2020. okt. 9. 00:32
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!