Avatar billede doj Nybegynder
18. maj 2002 - 18:42 Der er 1 løsning

Store PROLOG problemer

HJÆLP!!

Jeg sidder og knokler forgæves med et problem i SWI prolog.

Jeg har to lister på to forskellige facts, eks.:
grøntsager([agurk,kartoffel,tomater]). og
opskrift(tomatsuppe,[løg,tomater,gulerødder]).

Der er mange 'opskrift' facts. Jeg skal have defineret et prædikat som tager ingredienserne fra 'grøntsag' ét for ét, tjekker hvilke lister fra 'opskrift' de indgår i og skriver navnet på de fundne opskrifter.
Mit problem er, at jeg kun kan få mit prædikat til at tjekke Hovedet på grøntsagslisten, og det virker også fint, men derefter går det galt. Jeg har prøvet alt muligt, men enten kan den kun tjekke hele Tail'en samtidig eller også sker der ingenting eller out of local stack. Jeg har prøvet at bruge append/3 men ved ikke rigtig hvordan, det skal bruges til dette.
Her er et af mine forsøg, men når Grønt er tjekket igennem, sker der ikke mere. resten af elementerne på grøntsager listen skulle også gerne tjekkes for medlemskab i opskriftlisterne.

find_opskrift(_) :-
    grøntsager([Grønt|Rest]),
    opskrift(Opskrift,Liste),
    member(Grønt,Liste),
    write(Opskrift),nl,nl,
    fail.
    find_opskrift([Rest|_]).

Håber der er nogen, der kan hjælpe.

På forhånd tak
Avatar billede doj Nybegynder
20. maj 2002 - 13:43 #1
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester