Πέμπτη 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= ΨΕΥΔΗΣ ΤΟΤΕ
    ΓΡΑΨΕ 'ΤΟ ΣΤΟΙΧΕΙΟ ΔΕΝ ΒΡΕΘΗΚΕ'
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ





Δευτέρα 4 Δεκεμβρίου 2017

Συγχώνευση των περιεχομένων δύο πινάκων (Α' τρόπος)

Να γραφεί πρόγραμμα το οποίο θα εισάγει 5 ακέραιους αριθμούς σε έναν πίνακα Π[5] και 3 ακέραιους αριθμούς σε έναν πίνακα Ρ[3]. Στην συνέχεια θα συγχωνεύει τα περιεχόμενα των 2 πινάκων Π και Ρ σε έναν τρίτο πίνακα Σ, 8 θέσεων.

ΠΡΟΓΡΑΜΜΑ ΣΥΓΧΩΝΕΥΣΗ_1
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ:Ι,Δ1,Δ2, Π[5], Ρ[3], Σ[8]
ΑΡΧΗ 
  ΓΡΑΨΕ 'ΣΤΟΙΧΕΙΑ ΠΙΝΑΚΑ Π'
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5
    ΔΙΑΒΑΣΕ Π[Ι]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ 
  ΓΡΑΨΕ 'ΣΤΟΙΧΕΙΑ ΠΙΝΑΚΑ Ρ' 
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 3
    ΔΙΑΒΑΣΕ Ρ[Ι]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  Δ1 <-- 1
  Δ2 <-- 1
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 8
    ΑΝ Δ1>5 ΤΟΤΕ      ! Ο πίνακας Π έχει αντιγράψει και τα
      Σ[Ι] <-- Ρ[Δ2]  ! 5 στοιχεία του στον πίνακα Σ
      Δ2 <-- Δ2+1
    ΑΛΛΙΩΣ_ΑΝ Δ2>3 ΤΟΤΕ  ! Ο πίνακας Ρ έχει αντιγράψει και τα
      Σ[Ι] <-- Π[Δ1]     ! 3 στοιχεία του στον πίνακα Σ
      Δ1 <-- Δ1+1
    ΑΛΛΙΩΣ  ! οι πίνακες Π και Ρ περιέχουν και οι 2 στοιχεία          
      ΑΝ Π[Δ1]<Ρ[Δ2] ΤΟΤΕ                                                              
        Σ[Ι] <-- Π[Δ1]                                            
        Δ1 <-- Δ1+1
      ΑΛΛΙΩΣ 
        Σ[Ι] <-- Ρ[Δ2]                                                                        
        Δ2 <-- Δ2+1
      ΤΕΛΟΣ_ΑΝ                                                   
    ΤΕΛΟΣ_ΑΝ                                                               
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ'------'                                  
  ΓΡΑΨΕ 'ΣΤΟΙΧΕΙΑ ΠΙΝΑΚΑ ΣΥΓΧΩΝΕΥΣΗΣ Σ' 
  ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 8                                                                                                      
    ΓΡΑΨΕ Σ[Ι]   ! ο πίνακας Σ περιέχει και τα 8 στοιχεία
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ! των 2 πινάκων Π και Ρ σε αύξουσα σειρά
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ 

Featured Post

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

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