prolog, gráf beolvasása

 ( 08amaz | 2009. május 2., szombat - 21:16 )

Üdv Mindenkinek!
Egy külső fájlban elhelyezett szomszédsági mátrixból szeretném megvalósítani az köv adatszerkezetet: graf([Csucsok,...],[elek(Csucs1,Csucs2,Ertek),...]).
A fájlban levő adatok elrendezése:
2
0 1 1 1
ahol a 2 a mátrix mérete, a második sor pedig a szomszédsági mátrix.
Az egyik gond "space" elválasztás, a másik a listába beszúrás. A fájl megnyitása, és az adatok egyenkénti beolvasása megy, de a listába nem sikerul beszúrni.
Sajnos minden ötletből kifogytam, és nem is találok hasonlót az interneten.
Köszi:Zoli

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

SZTE, Prognyelvek kötprogi? :)

Köszi, megoldódott. Egy kissé gányolás, de megy. Az eredeti input fájlban a számok után pontot "tettem".A kódrészlet így néz ki:
:-use_module(library(lists)).
beolv :- see(input),
read(Meret),
lista_epites(Meret*Meret,Lista),
beszur(Lista),
el_epites(Meret*Meret,Lszam),
seen.

lista_epites(0,L):- !,L=[].
lista_epites(M,[M|L]):-M>0, M1 is M-1,lista_epites(M1,L).

beszur(Lista):-assert(csucsok([Lista])).

el_epites(0,L):-!,L=[].
el_epites(M,L):-M>0,read(Szam),el_epites(M,Szam,L).
el_epites(M,Szam,[Szam|L]):-M1 is M-1,el_epites(M1,L).

Még alakítom. SZTE, a PROLOG még él.
Köszi mindenkinek!
Zoli

Milyen erdekes, hogy van meg Prolog. Az Alexin tavalyelott azt mondta, hogy megszuntetik. Akkor megse.

A sicstus manualjaban (halo) nezd meg. Ott van sok pelda program.
Egyebbkent ha meg van az a dolog, akkor az egyetem szereveren /pub/prolog alatt van rengeteg pelda program, amibe ez is talan benne van vagy hozza hasonlo.

Milyen erdekes, hogy van meg Prolog. Az Alexin tavalyelott azt mondta, hogy megszuntetik. Akkor megse.

Az igazi prolog oktatást (aminek köze is van a logikához), valóban megszüntették. Van viszont prognyelvek, ami Smalltalk, Haskell, Prolog és Occam, látókör bővítés céljából. Persze mindből csak egy kicsit, nehogy még értelme is legyen.

Petya

Hali!
Ha már van egy prologos topic, nem nyitok új topicot, nekem is van egy kis problémám a fájl beolvasásnál =)..
Az én gondom az hogy mikor beolvasa az első újsor karaktert, valamiért hibát dob ki rá, aztán beolvasa a többi sort hiba nélkül...valaki találkozott már hasonló problémával?

A segitséget előre is köszönöm!

Ird le a kodreszletet(!). Kitalalni nem tudjuk, hogy mit irtal.

A 4725. sor 40. karaktere hubas :-)
--

()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

közbe már megoldottam a gondot! :)

Azert megoszthatnad. Nem olyan gyakori nyelv a prolog, hogy ilyen megoldasokkal tomott legyen a net.
--

()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.