ΠΡΟΓΡΑΜΜΑ δυαδική_αναζήτηση
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Α[20], Left, Right, M, k, S, i
ΛΟΓΙΚΕΣ: f
ΑΡΧΗ
Α[1] <- 4
Α[2] <- 5
Α[3] <- 10
Α[4] <- 15
Α[5] <- 19
Α[6] <- 20
Α[7] <- 21
Α[8] <- 25
Α[9] <- 100
Α[10] <- 113
Α[11] <- 116
Α[12] <- 118
Α[13] <- 190
Α[14] <- 200
Α[15] <- 202
Α[16] <- 213
Α[17] <- 218
Α[18] <- 233
Α[19] <- 236
Α[20] <- 238
ΓΡΑΨΕ 'Δωσε τιμή για αναζήτηση: '
ΔΙΑΒΑΣΕ S
Left <- 1
Right <- 20
k <- 0
f <- ΨΕΥΔΗΣ
ΟΣΟ (Left <= Right) ΚΑΙ (f = ΨΕΥΔΗΣ) ΕΠΑΝΑΛΑΒΕ
ΓΡΑΨΕ 'Το διάστημα που εξετάζουμε είναι από το ', Left, '=A[', Left, ']=', Α[Left],
& ' μέχρι το ', Right, '=A[', Right, ']=', Α[Right]
M <- (Left + Right) div 2
ΓΡΑΨΕ 'Το μέσο είναι το ', M, ' με τιμή Α[', M, ']=', Α[M]
ΓΡΑΨΕ
ΑΝ Α[M] = S ΤΟΤΕ
k <- M
f <- ΑΛΗΘΗΣ
ΑΛΛΙΩΣ
ΑΝ Α[M] < S ΤΟΤΕ
Left <- M + 1
ΑΛΛΙΩΣ
Right <- M - 1
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΑΝ f = ΑΛΗΘΗΣ ΤΟΤΕ
ΓΡΑΨΕ "Το στοιχείο,", S, " υπάρχει στη θέση:", M
ΑΛΛΙΩΣ
ΓΡΑΨΕ "Το στοιχείο,", S, " δεν υπάρχει στον πίνακα"
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ δυαδική_αναζήτηση