@komni
Καλή η προσπάθεια, της μετατροπής σε javascript.
1. Εκτός από τα μονά ' ' για εισαγωγικά αλφαριθμητικών θα πρέπει να βάλεις και τα διπλά " "
2. Η εξαγωγή σε αρχείο γίνεται σε UTF-8. πράγμα που σημαίνει ότι για να τρέξει στον διερμηνευτή του Άλκη πρέπει να ανοιχτεί με το πρόχειρο, και από εκεί να γίνει αντιγραφή και επικόλληση.
3. To "ανθρωπάκι" που τρέχει εμφανίζει αργά το κώδικα στην οθόνη, και συνεχίζει και όταν οι γραμμές κώδικα περάσουν τις προβαλλόμενες γραμμές. Δεν έχει νόημα να γίνεται κάτι τέτοιο
Δοκίμασα αυτόν τον κώδικα (έβγαλα τις σταθερές, και άλλαξα τα εισαγωγικά σε μονά)
ΠΡΟΓΡΑΜΜΑ Κυκλική_Ουρά
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Πίσω, Μπροστά, Ουρα[10], ι, Τιμή
ΑΡΧΗ
Τιμή <- 0
Πίσω <- 1
Μπροστά <- 0
ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
Ουρα[ι] <- 0
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 10 στοιχεία 1 έως 10
ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι, Πίσω, Μπροστά, Ουρα)
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 5 στοιχείων
ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 5
ΑΝ Μπροστά <> 0 ΤΟΤΕ
ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 5 στοιχεία 11 έως 15
ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 5
ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι + 10, Πίσω, Μπροστά, Ουρα)
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 10 στοιχείων
ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
ΑΝ Μπροστά <> 0 ΤΟΤΕ
ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 2 στοιχεία 16 έως 17
ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 2
ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι + 15, Πίσω, Μπροστά, Ουρα)
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 3 στοιχείων
ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 3
ΑΝ Μπροστά <> 0 ΤΟΤΕ
ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ Εισαγωγή_Στοιχείου(Α, Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Α, Πίσω, Μπροστά, Ουρα[10]
ΑΡΧΗ
ΑΝ Πίσω = Μπροστά ΤΟΤΕ
ΓΡΑΨΕ 'Η ουρά γέμισε, δεν θα βάλω το ', Α
ΑΛΛΙΩΣ
ΑΝ Μπροστά = 0 ΤΟΤΕ
Μπροστά <- Πίσω
ΤΕΛΟΣ_ΑΝ
Ουρα[Πίσω] <- Α
Πίσω <- Πίσω mod 10 + 1
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
ΔΙΑΔΙΚΑΣΙΑ Εξαγωγή_Στοιχείου(Α, Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Α, Πίσω, Μπροστά, Ουρα[10]
ΑΡΧΗ
ΑΝ Μπροστά > 0 ΤΟΤΕ
Α <- Ουρα[Μπροστά]
Μπροστά <- Μπροστά mod 10 + 1
ΑΝ Μπροστά = Πίσω ΤΟΤΕ
Μπροστά <- 0
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
ΔΙΑΔΙΚΑΣΙΑ Δείξε(Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Πίσω, Μπροστά, Ουρα[10], ι
ΑΡΧΗ
ΑΝ Μπροστά = 0 ΤΟΤΕ
ΓΡΑΨΕ 'Η ουρά είναι άδεια'
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Αρχή Ουράς ', Μπροστά
ΑΝ Μπροστά = Πίσω ΤΟΤΕ
ΓΡΑΨΕ Ουρα[Μπροστά]
ι <- Μπροστά mod 10 + 1
ΑΛΛΙΩΣ
ι <- Μπροστά
ΤΕΛΟΣ_ΑΝ
ΟΣΟ ι <> Πίσω ΕΠΑΝΑΛΑΒΕ
ΓΡΑΨΕ Ουρα[ι]
ι <- ι mod 10 + 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Τέλος ουράς ', Πίσω
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ