e-ΜΑΘΗΜΑΤΑ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό περιβάλλον

Δημιουργία παιχνιδιού : Πύργοι του Ανόι


ΠΡΟΓΡΑΜΜΑ Πύργοι_του_Ανόι

! *                                                 *
! *       |       *        |       *        |       *
!7*      =+=      *        |       *        |       *
!6*     ==+==     *        |       *        |       *
!5*    ===+===    *        |       *        |       *
!4*   ====+====   *        |       *        |       *
!3*  =====+=====  *        |       *        |       *
!2* ======+====== *        |       *        |       *
!1*=======+=======*        |       *        |       *
!****************************************************
!      *  1  *          *  2  *          *  3  *

ΜΕΤΑΒΛΗΤΕΣ
  ΧΑΡΑΚΤΗΡΕΣ: απάντηση
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων
ΑΡΧΗ
  ΚΑΛΕΣΕ τιτλοι_αρχής
  πλήθος_δίσκων <- 5
  ΚΑΛΕΣΕ αρχικοποίησε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
  ΚΑΛΕΣΕ εμφάνισε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 


  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΚΑΛΕΣΕ εμφάνισε_Μενού (απάντηση) 
    ΕΠΙΛΕΞΕ απάντηση
      ΠΕΡΙΠΤΩΣΗ '1'
        ΚΑΛΕΣΕ ορισμός_πλήθους_δίσκων (πλήθος_δίσκων) 
        ΚΑΛΕΣΕ αρχικοποίησε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
        ΚΑΛΕΣΕ εμφάνισε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 

      ΠΕΡΙΠΤΩΣΗ '2'
        ΚΑΛΕΣΕ εναρξη_παιχνιδιού_παίκτη (πλήθος_δίσκων, ΠΥΡΓΟΙ) 

      ΠΕΡΙΠΤΩΣΗ '3'
        ΚΑΛΕΣΕ λύση_παιχνιδιού_ΗΥ (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
    ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ

  ΜΕΧΡΙΣ_ΟΤΟΥ απάντηση = '9'

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


!*********************************


ΔΙΑΔΙΚΑΣΙΑ αρχικοποίησε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, i
ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10
    ΠΥΡΓΟΙ[i, 2] <- 0
    ΠΥΡΓΟΙ[i, 3] <- 0
    ΑΝ i <= πλήθος_δίσκων ΤΟΤΕ
      ΠΥΡΓΟΙ[i, 1] <- πλήθος_δίσκων - i + 1
    ΑΛΛΙΩΣ
      ΠΥΡΓΟΙ[i, 1] <- 0
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


!*********************************


ΔΙΑΔΙΚΑΣΙΑ εμφάνισε_Μενού (απάντηση) 
ΜΕΤΑΒΛΗΤΕΣ
  ΧΑΡΑΚΤΗΡΕΣ: απάντηση
ΑΡΧΗ
  ΓΡΑΨΕ '******************************'
  ΓΡΑΨΕ '*      ΕΠΙΛΟΓΕΣ              *'
  ΓΡΑΨΕ '* 1 Ορισμός πλήθους δίσκων   *'
  ΓΡΑΨΕ '* 2 Έναρξη παιχνιδιού παίκτη *'
  ΓΡΑΨΕ '* 3 Λύση παιχνιδιού από Η/Υ  *'
  ΓΡΑΨΕ '*                            *'
  ΓΡΑΨΕ '* 9 Τέλος                    *'
  ΓΡΑΨΕ '******************************'
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ 'Δώστε επιλογή (1,2,3,9): '
    ΔΙΑΒΑΣΕ απάντηση
  ΜΕΧΡΙΣ_ΟΤΟΥ απάντηση = '1' Η απάντηση = '2' Η απάντηση = '3' Η απάντηση = '9'
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


!*********************************


ΔΙΑΔΙΚΑΣΙΑ εμφάνισε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, i
ΑΡΧΗ
  ΓΡΑΨΕ
  ΓΡΑΨΕ ' *                                                 *'
  ΓΡΑΨΕ ' *       |       *        |       *        |       *'

  ΓΙΑ i ΑΠΟ πλήθος_δίσκων ΜΕΧΡΙ 1 ΜΕ ΒΗΜΑ -1
    ΓΡΑΨΕ i, ' '
    ΑΝ ΠΥΡΓΟΙ[i, 1] = 7 ΤΟΤΕ
      ΓΡΑΨΕ '*=======+=======* '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 1] = 6 ΤΟΤΕ
      ΓΡΑΨΕ '* ======+====== * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 1] = 5 ΤΟΤΕ
      ΓΡΑΨΕ '*  =====+=====  * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 1] = 4 ΤΟΤΕ
      ΓΡΑΨΕ '*   ====+====   * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 1] = 3 ΤΟΤΕ
      ΓΡΑΨΕ '*    ===+===    * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 1] = 2 ΤΟΤΕ
      ΓΡΑΨΕ '*     ==+==     * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 1] = 1 ΤΟΤΕ
      ΓΡΑΨΕ '*      =+=      * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 1] = 0 ΤΟΤΕ
      ΓΡΑΨΕ '*       |       * '
    ΤΕΛΟΣ_ΑΝ

    ΑΝ ΠΥΡΓΟΙ[i, 2] = 7 ΤΟΤΕ
      ΓΡΑΨΕ ' =======+=======* '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 2] = 6 ΤΟΤΕ
      ΓΡΑΨΕ '  ======+====== * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 2] = 5 ΤΟΤΕ
      ΓΡΑΨΕ '   =====+=====  * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 2] = 4 ΤΟΤΕ
      ΓΡΑΨΕ '    ====+====   * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 2] = 3 ΤΟΤΕ
      ΓΡΑΨΕ '     ===+===    * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 2] = 2 ΤΟΤΕ
      ΓΡΑΨΕ '      ==+==     * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 2] = 1 ΤΟΤΕ
      ΓΡΑΨΕ '       =+=      * '
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 2] = 0 ΤΟΤΕ
      ΓΡΑΨΕ '        |       * '
    ΤΕΛΟΣ_ΑΝ

    ΑΝ ΠΥΡΓΟΙ[i, 3] = 7 ΤΟΤΕ
      ΓΡΑΨΕ ' =======+=======*'
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 3] = 6 ΤΟΤΕ
      ΓΡΑΨΕ '  ======+====== *'
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 3] = 5 ΤΟΤΕ
      ΓΡΑΨΕ '   =====+=====  *'
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 3] = 4 ΤΟΤΕ
      ΓΡΑΨΕ '    ====+====   *'
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 3] = 3 ΤΟΤΕ
      ΓΡΑΨΕ '     ===+===    *'
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 3] = 2 ΤΟΤΕ
      ΓΡΑΨΕ '      ==+==     *'
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 3] = 1 ΤΟΤΕ
      ΓΡΑΨΕ '       =+=      *'
    ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[i, 3] = 0 ΤΟΤΕ
      ΓΡΑΨΕ '        |       *'
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

! ΓΡΑΨΕ '1* ======+====== *        |       *        |       *'
  ΓΡΑΨΕ '****************************************************'
  ΓΡΑΨΕ '      *  1  *          *  2  *          *  3  *'
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ 


!*********************************


ΔΙΑΔΙΚΑΣΙΑ ορισμός_πλήθους_δίσκων (πλήθος_δίσκων) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: πλήθος_δίσκων
ΑΡΧΗ
  ΓΡΑΨΕ 'Δώστε αριθμό δίσκων  (1..7): '
  ΔΙΑΒΑΣΕ πλήθος_δίσκων
  ΟΣΟ πλήθος_δίσκων < 1 Η πλήθος_δίσκων > 7 ΕΠΑΝΑΛΑΒΕ
    ΓΡΑΨΕ 'Δώστε αριθμό δίσκων  (1..7): '
    ΔΙΑΒΑΣΕ πλήθος_δίσκων
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ 


!*********************************


ΔΙΑΔΙΚΑΣΙΑ εναρξη_παιχνιδιού_παίκτη (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, from, to
  ΛΟΓΙΚΕΣ: επίλυση_οκ
  ΑΚΕΡΑΙΕΣ: πλήθος
ΑΡΧΗ
  ΓΡΑΨΕ 'Μεταφορά όλων από 1 σε 3 με τη βοήθεια του 2,'
  ΓΡΑΨΕ 'χωρίς να μπει μεγαλύτερος δίσκος πάνω σε μικρότερο'

  ΚΑΛΕΣΕ αρχικοποίησε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
  ΚΑΛΕΣΕ εμφάνισε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 

  επίλυση_οκ <- ΨΕΥΔΗΣ
  πλήθος <- 0
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΚΑΛΕΣΕ διαβασε_μετακίνηση (from, to) 
    ΑΝ ΟΧΙ (from = 0 ΚΑΙ to = 0) ΤΟΤΕ
      ΑΝ αποδεκτή_κίνηση (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, to) ΤΟΤΕ
        ΚΑΛΕΣΕ μετακίνησε (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, to) 
        ΚΑΛΕΣΕ εμφάνισε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
        πλήθος <- πλήθος + 1
        ΓΡΑΨΕ πλήθος, ' κινήσεις'
        ΑΝ ολοκληρώθηκε_το_παιχνίδι (πλήθος_δίσκων, ΠΥΡΓΟΙ) ΤΟΤΕ
          επίλυση_οκ <- ΑΛΗΘΗΣ
          ΓΡΑΨΕ 'Συγχαρητήρια! Ολοκλήρωσες το παιχνίδι '
          ΓΡΑΨΕ ' σε ', πλήθος, ' κινήσεις.'
          ΓΡΑΨΕ 'Βέλτιστο Πλήθος κινήσεων : ', Α_Μ( 2^ πλήθος_δίσκων - 1) 

        ΤΕΛΟΣ_ΑΝ
      ΑΛΛΙΩΣ
        ΓΡΑΨΕ 'ΜΗ ΑΠΟΔΕΚΤΗ ΚΙΝΗΣΗ!'
      ΤΕΛΟΣ_ΑΝ
    ΑΛΛΙΩΣ
      ΓΡΑΨΕ 'Τερματισμός παιχνιδιού ...'
    ΤΕΛΟΣ_ΑΝ
  ΜΕΧΡΙΣ_ΟΤΟΥ (from = 0 ΚΑΙ to = 0) Η (επίλυση_οκ = ΑΛΗΘΗΣ) 
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


!*********************************


ΔΙΑΔΙΚΑΣΙΑ διαβασε_μετακίνηση (from, to) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: from, to
ΑΡΧΗ
  ΓΡΑΨΕ 'Δώστε από 1..3 ή 0,0 για τερματισμό'

  ΓΡΑΨΕ 'Δώστε γράμμα δίσκου ΑΠΟ : '
  ΔΙΑΒΑΣΕ from
  ΓΡΑΨΕ 'Δώστε γράμμα δίσκου ΠΡΟΣ: '
  ΔΙΑΒΑΣΕ to
  ΟΣΟ ΟΧΙ ((from = 1 Η from = 2 Η from = 3) ΚΑΙ
    & (to = 1 Η to = 2 Η to = 3) ΚΑΙ (from <> to) 
    & Η (from = 0 ΚΑΙ to = 0)) ΕΠΑΝΑΛΑΒΕ
    ΓΡΑΨΕ 'Λάθος τιμές!'
    ΓΡΑΨΕ 'Δώστε από 1..3 ή 0,0 για τερματισμό'

    ΓΡΑΨΕ 'Δώστε γράμμα δίσκου ΑΠΟ : '
    ΔΙΑΒΑΣΕ from
    ΓΡΑΨΕ 'Δώστε γράμμα δίσκου ΠΡΟΣ: '
    ΔΙΑΒΑΣΕ to
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ 


!*********************************


ΔΙΑΔΙΚΑΣΙΑ μετακίνησε (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, to) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, from, to
  ΑΚΕΡΑΙΕΣ: top_from, top_to, temp
ΑΡΧΗ
  top_from <- top (πλήθος_δίσκων, ΠΥΡΓΟΙ, from) 
  top_to <- top (πλήθος_δίσκων, ΠΥΡΓΟΙ, to) 

  temp <- ΠΥΡΓΟΙ[top_from, from] 
  ΠΥΡΓΟΙ[top_from, from] <- 0
  top_to <- top_to + 1
  ΠΥΡΓΟΙ[top_to, to] <- temp
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


!*********************************


ΣΥΝΑΡΤΗΣΗ top (πλήθος_δίσκων, ΠΥΡΓΟΙ, disk): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, disk
  ΛΟΓΙΚΕΣ: είναι_κενό
  ΑΚΕΡΑΙΕΣ: i
ΑΡΧΗ
  i <- πλήθος_δίσκων
  είναι_κενό <- ΑΛΗΘΗΣ
  ΟΣΟ i > 0 ΚΑΙ είναι_κενό = ΑΛΗΘΗΣ ΕΠΑΝΑΛΑΒΕ
    ΑΝ ΠΥΡΓΟΙ[i, disk] = 0 ΤΟΤΕ
      i <- i - 1
    ΑΛΛΙΩΣ
      είναι_κενό <- ΨΕΥΔΗΣ
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  top <- i
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ


!*********************************


ΣΥΝΑΡΤΗΣΗ αποδεκτή_κίνηση (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, to): ΛΟΓΙΚΗ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, from, to
  ΑΚΕΡΑΙΕΣ: top_from, top_to
ΑΡΧΗ
  αποδεκτή_κίνηση <- ΑΛΗΘΗΣ

  top_from <- top (πλήθος_δίσκων, ΠΥΡΓΟΙ, from) 
  top_to <- top (πλήθος_δίσκων, ΠΥΡΓΟΙ, to) 
  ΑΝ top_from = 0 ΤΟΤΕ
    αποδεκτή_κίνηση <- ΨΕΥΔΗΣ
  ΑΛΛΙΩΣ_ΑΝ top_to = πλήθος_δίσκων ΤΟΤΕ
    αποδεκτή_κίνηση <- ΨΕΥΔΗΣ
  ΑΛΛΙΩΣ_ΑΝ top_to = 0 ΤΟΤΕ
    αποδεκτή_κίνηση <- ΑΛΗΘΗΣ
  ΑΛΛΙΩΣ_ΑΝ ΠΥΡΓΟΙ[top_from, from] > ΠΥΡΓΟΙ[top_to, to] ΤΟΤΕ
    αποδεκτή_κίνηση <- ΨΕΥΔΗΣ
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ


!*********************************


ΣΥΝΑΡΤΗΣΗ ολοκληρώθηκε_το_παιχνίδι (πλήθος_δίσκων, ΠΥΡΓΟΙ): ΛΟΓΙΚΗ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, i
  ΛΟΓΙΚΕΣ: ok
ΑΡΧΗ
  ολοκληρώθηκε_το_παιχνίδι <- ΑΛΗΘΗΣ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ πλήθος_δίσκων
    ΑΝ ΠΥΡΓΟΙ[i, 1] <> 0 Η ΠΥΡΓΟΙ[i, 2] <> 0 ΤΟΤΕ
      ολοκληρώθηκε_το_παιχνίδι <- ΨΕΥΔΗΣ
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ


!*********************************


ΔΙΑΔΙΚΑΣΙΑ τιτλοι_αρχής
ΑΡΧΗ
  ΓΡΑΨΕ '****************************************************'
  ΓΡΑΨΕ '.                     ΠΥΡΓΟΙ ΤΟΥ ΑΝΟΪ              .'
  ΓΡΑΨΕ '. (c) 2024 - 2ο ΓΕΛ Γέρακα - Βασίλης Αναστόπουλος  .'
  ΓΡΑΨΕ '****************************************************'
  ΓΡΑΨΕ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ 


!*********************************


ΔΙΑΔΙΚΑΣΙΑ λύση_παιχνιδιού_ΗΥ (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, from, to, temp, disks

ΑΡΧΗ
  from <- 1
  to <- 3
  temp <- 2
  disks <- πλήθος_δίσκων

  ΚΑΛΕΣΕ εμφάνισε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
  ΚΑΛΕΣΕ λύση_με_αναδρομή (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, to, temp, disks) 
  ΓΡΑΨΕ 'Πλήθος κινήσεων : ', Α_Μ( 2^ πλήθος_δίσκων - 1) 
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


!*********************************


ΔΙΑΔΙΚΑΣΙΑ λύση_με_αναδρομή (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, to, temp, disks) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΠΥΡΓΟΙ[10, 3], πλήθος_δίσκων, from, to, temp, disks, new_disks

ΑΡΧΗ
  ΑΝ disks = 1 ΤΟΤΕ
    ΓΡΑΨΕ 'Από: ', from, ' Προς: ', to
    ΚΑΛΕΣΕ μετακίνησε (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, to) 
    ΚΑΛΕΣΕ εμφάνισε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 
  ΑΛΛΙΩΣ
    new_disks <- disks - 1
    ΚΑΛΕΣΕ λύση_με_αναδρομή (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, temp, to, new_disks) 

    ΓΡΑΨΕ 'Από: ', from, ' Προς: ', to
    ΚΑΛΕΣΕ μετακίνησε (πλήθος_δίσκων, ΠΥΡΓΟΙ, from, to) 
    ΚΑΛΕΣΕ εμφάνισε_δίσκους (πλήθος_δίσκων, ΠΥΡΓΟΙ) 

    ΚΑΛΕΣΕ λύση_με_αναδρομή (πλήθος_δίσκων, ΠΥΡΓΟΙ, temp, to, from, new_disks) 
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ 


 

© 2024 - 2ο Γενικό Λύκειο Γέρακα - Βασίλειος Αναστόπουλος