Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

καλησπερα παιδια. Εχω μια ασκηση ως εξης. εχουμε ενα δωματιο 5χ5 κ ενα ρομποτ κινηται καθε φορα μια θεση ειτε πανω κατω δεξια αριστερα. αυτα τα εχω φτιαξει κ ολα καλα.

 

Παμε στα δυσκολα. ζητηται μια συναρτηση expand του μετωπου αναζητησης που προφανως εχεις 4 παιδια οσες και οι πιθανες κατευθυνσεις. ζηταει λοιπον να γινεται expand και να δημιουργηται μια λιστα που θα περιεχει πρωτα τα παδια της καταστασης που αναλυσαμε και μετα τα παιδια απο την προηγουμενη αναζητηση. ειναι αναζητηση με βαθος προφανως.

 

εχω κανει αυτο οσο ανφορα την expand

 

(defun expand_Metopo (x)

(cond ((equal x NIL) NIL)

((equal (first x) ()) (expand_Metopo (first (rest x)))) ;;εδω πρεπει να τσεκαρει αν το πρωτο στοιχειο ειναι ιδιο με καποια προηγουμενη αναζητηση και να μη το συμπεριλαμβανει στη νεα λιστα

(t (append (find_children x) (list (expand_Metopo (first x))))))) ;;εδω ειναι ολο το ζουμι γτ σκαει η common lisp.η find_children βρισκει τα παιδια btw.

 

καμια ιδεα?

  • 2 εβδομάδες αργότερα...

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...