Download - DocumentL4

Transcript
  • 1L4_p1(deffacts BLOCURI-SI-STRUCTURA

    (pe nimic A)(pe nimic D)(pe A B)(pe B C)(pe D E)(pe E F)(pe F podea)(pe C podea)(este-bloc A)(este-bloc B)(este-bloc C)(este-bloc D)(este-bloc E)(este-bloc F)

    )

    (deffacts SCOPURI "aici rulam programul, in functie de ce scopvrem"

    ;(scop muta B pe D) ; merge!;(scop muta B pe A) ; merge!;(scop muta nimic pe F) ; merge!;(scop muta C pe podea) ; merge!(scop muta C pe D) ; vezi L4_P2.clp

    pentru ca mutarea sa fie 100% corecta ;-))

    (defrule MUTARE-DIRECTA?scop (assert (scop muta ?bloc_deasupra_sursei pe podea))

    )

    (defrule ELIBERARE-DESTINATIE(scop muta ? pe ?destinatie)(este-bloc ?destinatie)(pe ?bloc ?destinatie)(este-bloc ?bloc)=>(assert (scop muta ?bloc pe podea))

    )

    L4_p2

    (deffacts SCOPURI "aici rulam programul, in functie de ce scopvrem"

    ;(scop muta B pe D) ; merge!;(scop muta B pe A) ; merge!;(scop muta nimic pe F) ; merge!;(scop muta C pe podea) ; merge!;(scop muta C pe D) ; merge!;(scop muta B pe E) ; merge!;(scop muta nimic pe C) ; merge!;(scop muta nimic pe podea) ; nu merge, dar asa e si

    normal :);(scop muta F pe E) ; merge!;(scop muta F pe C) ; merge!(scop muta A pe D)

    )

    (defrule MUTARE-DIRECTA?scop

  • 2(printout t "-----------------------------------------------------------" crlf crlf))

    (defrule MUTARE-PE-PODEA?scop (assert (scop muta ?bloc_deasupra_sursei pe podea))

    )

    (defrule ELIBERARE-DESTINATIE(scop muta ? pe ?destinatie)(este-bloc ?destinatie)(pe ?bloc ?destinatie)(este-bloc ?bloc)=>(assert (scop muta ?bloc pe podea))

    )

    L4_p3

    (deffacts STIVA(stiva 5 -4 0.02 wow);(stiva 1 5 9)

    )

    (deffacts SCOPURI(push -8);(pop)

    )

    (defrule INTRODUCERE-VALOARE?adresa

  • 3(defrule SCOATE-DIN-COADA-CU-MAI-MULTE-ELEMENTE?a (assert (scop muta ?bds pe podea))

    )

    (defrule ELIBERARE-DESTINATIE(scop muta ? pe ?bd)(stiva $?r1 ?bdd ?bd $?r2)=>(assert (scop muta ?bdd pe podea))

    )

    L4_p7MERGE PERFECT

    (deffacts STARE-INITIALA(stiva A B C D)(stiva E F G)

    )

    (deffacts SCOPURI;(scop muta C pe G) ; merge;(scop muta G pe A) ; merge;(scop muta G pe D) ; merge;(scop muta G pe B) ; merge;(scop muta G pe C) ; merge;(scop muta F pe A) ; merge;(scop muta F pe D) ; merge;(scop muta F pe B) ; merge;(scop muta F pe C) ; merge;(scop muta E pe A) ; merge;(scop muta E pe B) ; merge;(scop muta E pe C) ; merge;(scop muta E pe D) ; merge;(scop muta D pe podea) ; merge;(scop muta A pe podea) ; merge;(scop muta B pe podea) ; merge;(scop muta C pe podea) ; merge(scop muta F pe podea)

    )

  • 4(defrule MUTARE-DIRECTA?scop

Top Related