Πέμπτη 7 Δεκεμβρίου 2017

Δυαδική αναζήτηση ενός στοιχείου σε πίνακα ταξινομημένο σε αύξουσα σειρά

Να γραφεί πρόγραμμα το οποίο θα εισάγει 5 ακέραιους αριθμούς σε έναν πίνακα σε αύξουσα σειρά και στην συνέχεια αφού δώσουμε μια τιμή προς αναζήτηση να ελέγχει αν υπάρχει αυτή η τιμή μέσα στον πίνακα και σε ποια θέση.

ΠΡΟΓΡΑΜΜΑ ΔΥΑΔΙΚΗ_ΑΝΑΖΗΤΗΣΗ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Ι,Π[5],Χ,LEFT,RIGHT,ΜΕΣΗ 
  ΛΟΓΙΚΕΣ: FOUND
ΑΡΧΗ
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5
    ΔΙΑΒΑΣΕ Π[Ι]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ 'ΔΩΣΤΕ ΣΤΟΙΧΕΙΟ ΠΡΟΣ ΑΝΑΖΗΤΗΣΗ'
  ΔΙΑΒΑΣΕ Χ
  FOUND <-- ΨΕΥΔΗΣ
  LEFT <-- 1
  RIGHT <-- 5
  ΟΣΟ LEFT<=RIGHT  ΚΑΙ FOUND=ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ
    ΜΕΣΗ <-- (LEFT+RIGHT)DIV 2
    ΑΝ Π[ΜΕΣΗ]=Χ ΤΟΤΕ
      FOUND <-- ΑΛΗΘΗΣ
      ΓΡΑΨΕ 'ΤΟ ΣΤΟΙΧΕΙΟ ΒΡΕΘΗΚΕ ΣΤΗΝ ΘΕΣΗ', ΜΕΣΗ
    ΑΛΛΙΩΣ_ΑΝ Π[ΜΕΣΗ]<Χ ΤΟΤΕ
      LEFT <-- ΜΕΣΗ+1 
    ΑΛΛΙΩΣ
      RIGHT <-- ΜΕΣΗ-1
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΑΝ FOUND= ΨΕΥΔΗΣ ΤΟΤΕ
    ΓΡΑΨΕ 'ΤΟ ΣΤΟΙΧΕΙΟ ΔΕΝ ΒΡΕΘΗΚΕ'
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ





Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου

Featured Post

Εξεταστέα ύλη ΑΕΠΠ

Σχολικό Έτος 2018-2019 Γ΄ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ (ΑΕΠΠ) Ομάδας Προσανατολισμού Σπου...