Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- 4. Írj egy olyan relacio predikátumot Prologban, mely két egész számokból álló lista közötti relációt fejez ki.
- Két lista akkor van relációban egymással, ha a hosszuk megegyezik, és az első lista minden nem 0 elemének duplája szerepel
- a második lista ugyanazon pozíciójában! Pl.: relacio([2,0,3],[4,5,6]). -ra: True.
- */
- relacio([],X) :- !, X=[]. /* ha a bal oldal üres lista, akkor a másik két szabályt nem kell már kipróbáljuk, vágunk; accept, ha a jobb oldal is üres*/
- relacio([0|T1],[_|T2]) :- !, relacio(T1,T2). /*ha a bal oldalon 0 a fej, vágunk (a következő szabályt nem próbáljuk ki, ha relacio(T1,T2) false-t mond), hasonlítunk tovább*/
- relacio([H1|T1],[H2|T2]) :- H2 =:= 2*H1, relacio(T1,T2). /*ide csak akkor futunk, ha H1 nem nulla. =:=-vel hasonlítunk értéket, ha mindkét oldal biztosan konstans, aztán rekurzív hívás*/
Advertisement
Add Comment
Please, Sign In to add comment