Το Στέκι των Πληροφορικών

Γενικό Λύκειο => Γ΄ Λυκείου => Μήνυμα ξεκίνησε από: semaphore στις 05 Μαΐου 2022, 12:06:58 ΜΜ

Τίτλος: Άσκηση με ολίσθηση
Αποστολή από: semaphore στις 05 Μαΐου 2022, 12:06:58 ΜΜ
Καλησπέρα. Παραθέτω μία άσκηση με ολίσθηση στοιχείων πίνακα κατά περίπτωση. Κάθε διόρθωση και σχόλιο είναι καλοδεχούμενα. Καλή συνέχεια.

Να γραφεί πρόγραμμα σε ΓΛΩΣΣΑ που θα διαβάζει τα στοιχεία ενός μονοδιάστατου πίνακα Α[100] σε αύξουσα διάταξη με τον ακολουθώντας την παρακάτω περιγραφή: Το στοιχείο που θα εισάγεται από το χρήστη θα πρέπει να ελέγχεται σε ποια θέση πρέπει να εισαχθεί. Αν πρέπει να εισαχθεί σε θέση που υπάρχει ήδη κάποιο στοιχείο , τότε θα πρέπει να γίνει ολίσθηση των στοιχείων από τη θέση που θα πρέπει να εισαχθεί , προς τα κάτω και στη συνέχεια θα εισαχθεί το στοιχείο στην σωστή θέση , αλλιώς εισάγεται στην τελευταία θέση του πίνακα.
Παρατήρηση: κάθε στοιχείο που θα διαβάζεται , θα πρέπει να τοποθετείται στον πίνακα και να μη διαβάζεται εκ νέου στοιχείο.


Κώδικας [Επιλογή]
ΑΡΧΗ
  ΔΙΑΒΑΣΕ Α[1] 
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΔΙΑΒΑΣΕ Α[2] 
  ΜΕΧΡΙΣ_ΟΤΟΥ Α[2] > Α[1] 
  ΓΙΑ Ι ΑΠΟ 3 ΜΕΧΡΙ 100
    ΔΙΑΒΑΣΕ Χ
    Κ <- 1
    ΦΛΑΓΚ <- ΨΕΥΔΗΣ
    ΘΕΣΗ <- 0
    ΟΣΟ Κ <= Ι - 1 ΚΑΙ ΦΛΑΓΚ = ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ
      ΑΝ Χ < Α[Κ] ΤΟΤΕ
        ΦΛΑΓΚ <- ΑΛΗΘΗΣ
        ΘΕΣΗ <- Κ
      ΤΕΛΟΣ_ΑΝ
      Κ <- Κ + 1
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΑΝ ΦΛΑΓΚ = ΑΛΗΘΗΣ ΤΟΤΕ
      ΓΡΑΨΕ ΘΕΣΗ
      ΓΙΑ Ξ ΑΠΟ Ι ΜΕΧΡΙ ΘΕΣΗ + 1 ΜΕ_ΒΗΜΑ -1
        Α[Ξ] <- Α[Ξ - 1] 
      ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
      Α[ΘΕΣΗ] <- Χ
    ΑΛΛΙΩΣ
      Α[Ι] <- Χ
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ