ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ

Τυπολόγιο Pascal Θεωρία
Παγκύπριες Εξετάσεις 2011
5. Να γράψετε πρόγραμμα στη γλώσσα προγραμματισμού Pascal το οποίο να διαβάζει μέχρι πενήντα τυχαίους ακέραιους αριθμούς. Η εισαγωγή των αριθμών να τερματίζεται μόλις δοθεί αριθμός που έχει ξαναδοθεί προηγουμένως. Το πρόγραμμα να τυπώνει το άθροισμα των αριθμών που έχουν καταχωρηθεί χωρίς να λαμβάνει υπόψη τον τελευταίο αριθμό (π.χ. αν καταχωρούνται οι αριθμοί 2, 3, 6, 5, 4, 7, 6 θα εμφανίζεται άθροισμα 27).
7. 
Program askisi7; 
uses wincrt; 
 type 
 arithmoi = array [1..50] of integer; 
 var 
 num:arithmoi; 
 i, c, number, sum:integer; 
 vrethike:boolean; 
 begin 
 i:=1; 
 sum:=0; 
 vrethike:=false; 
 write('Dose arithmo: '); 
 readln(number); 
  while (i<50 and="" do="" nbsp="" span="" vrethike="false)">
 begin 
 num[i]:=number; 
 sum:=sum+number; 
 i:=i+1; 
 write('Dose arithmo: '); 
 readln(number); 
  for c:=1 to i-1 do 
 if num[c] = number then 
 vrethike:=true 
 end; 
  writeln('Sum = ', sum) 

end.

ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012
3. Δίνεται η πιο κάτω δήλωση σε γλώσσα προγραμματισμού Pascal:
type pinakas = array[1..35] of integer;
var pin: pinakas;
Να γράψετε πρόγραμμα που να χρησιμοποιεί μια συνάρτηση με το όνομα order η οποία να δέχεται σαν παράμετρο από το κυρίως πρόγραμμα τον πίνακα pin. Η συνάρτηση θα ελέγχει αν οι αριθμοί είναι ταξινομημένοι κατά αύξουσα σειρά και επιστρέφει το ανάλογο μήνυμα «ΤΑΞΙΝΟΜΗΜΕΝΟΙ» ή «ΜΗ ΤΑΞΙΝΟΜΗΜΕΝΟΙ» (Παγκύπριες Εξετάσεις 2012).
9. 
function order(pin1:pinakas):string; 
var 
i:integer; 
flag:boolean; 
 begin 
 flag:=true; 
 i:=1; 
 while flag and (i<35 b="" do="" nbsp="">
 begin 
 if pin1[i]>pin1[i+1] then 
 flag:=false; 
 i:=i+1 
 end; 
 if flag then 
 order:='TAΞINOMHMENA' 
 else 
 order:='MH TAΞINOMΗMENA' 
end; 


ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 
Μάθημα: ΠΛΗΡΟΦΟΡΙΚΗ – ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ
Δραστηριότητες για το Σπίτι

   α)  function search (num:pin1; a,b :integer): integer; 
 var j, c:integer; 

 begin 
 c:=0; 
 for j:=1 to 99 do 
 if (num[j]=a) and (num[j+1]=b) then 
 c:=c+1; 
 search:=c; 
 end; 


 β) apotelesma:=search (numbers,num1,num2); 


ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006
ΜΕΡΟΣ Α - Αποτελείται από δέκα (10) ερωτήσεις. Κάθε ορθή απάντηση βαθμολογείται με έξι μονάδες.

1. Ένας μαθητής θεωρείται ότι πέτυχε στο μάθημα κατεύθυνσης της Πληροφορικής αν ο τελικός βαθμός του για το μάθημα είναι μεγαλύτερος ή ίσος με 10 και αν ο αριθμός των απουσιών του στο μάθημα είναι μικρότερος από 29. Να σχεδιάσετε λογικό διάγραμμα που να διαβάζει τον τελικό βαθμό και τον αριθμό απουσιών ενός μαθητή και να τυπώνει ανάλογα το μήνυμα «επιτυχία» ή «αποτυχία».

2. (α) Τι περιλαμβάνει η φάση συντήρησης του πληροφοριακού συστήματος;
(β) Να εξηγήσετε τη διαφορά ανάμεσα στο χρήστη και στον πελάτη ενός πληροφοριακού συστήματος. Μπορεί το ίδιο άτομο να είναι ταυτόχρονα χρήστης και πελάτης σε ένα πληροφοριακό σύστημα; (Οι λύση στις σημειώσεις Εισαγωγή στην Ανάλυση και ΣχεδίασηΠληροφοριακών Συστημάτων εδώ)


7. Να γράψετε συνάρτηση με το όνομα multiple στη γλώσσα προγραμματισμού Pascal η οποία να δέχεται δύο ακέραιους αριθμούς Α και Β (να θεωρήσετε ότι ο Α είναι μεγαλύτερος του Β και δε χρειάζεται έλεγχος) και να επιστρέφει τη λογική τιμή TRUE αν ο αριθμός Α είναι πολλαπλάσιος του Β, διαφορετικά να επιστρέφει τη λογική τιμή FALSE.

6. Δίνεται το πιο κάτω πρόγραμμα στη γλώσσα προγραμματισμού Pascal. Με τη χρήση προκαταρκτικής εκτέλεσης να παρουσιάσετε τα αποτελέσματα του προγράμματος. Στη θέση του διαστήματος να χρησιμοποιήσετε το σύμβολο «».

program askisi6;
uses wincrt;
var a,b,x,n:integer;
begin
a :=1;
b :=1;
n :=0;
repeat
x :=a+b;
if (x mod 2 =0) then
n:=n+1
else
n :=n-1;
a :=b;
b :=x;
writeln(n:3,b:3)
until (b>=5)
end.

ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2007
7. Να γράψετε μια διαδικασία στη γλώσσα προγραμματισμού Pascal με το όνομα
arithmoi, η οποία να δέχεται από το κυρίως πρόγραμμα δύο ακέραιους αριθμούς.
Στη συνέχεια η διαδικασία να προσθέτει τους δύο αριθμούς και να επιστρέφει στο
κυρίως πρόγραμμα το άθροισμά τους και τη λέξη ‘zygos’, αν το άθροισμα είναι ζυγός
αριθμός, ή το άθροισμά τους και τη λέξη ‘perittos’, αν το άθροισμα είναι περιττός
αριθμός. Σημείωση: για σκοπούς της άσκησης αυτής, θεωρήστε το μηδέν ως ζυγό
αριθμό.

procedure arithmoi(a,b:integer;var c:integer;var out:string); 

begin 
c:=a+b; 
if c mod 2 = 0 then 
out:='zygos' 
else 
out:='perittos' 
end; 

ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009

7. Να γράψετε µια διαδικασία στη γλώσσα προγραµµατισµού Pascal µε το όνοµα check, 

η οποία να δέχεται από το κυρίως πρόγραµµα τρεις ακέραιους αριθµούς X, Y, Z. Με 
δεδοµένο ότι το Χ είναι µικρότερο του Υ, η διαδικασία να ελέγχει κατά πόσο το Ζ είναι 
µεταξύ του Χ και του Υ, συµπεριλαµβανοµένων. Σε αυτή την περίπτωση, η διαδικασία 
να επιστρέφει σε µεταβλητή τύπου Boolean την τιµή true, διαφορετικά να επιστρέφει 
την τιµή false. 

procedure check(a,b,c:integer;var range:boolean);
begin
 if (c>=a) and (c<=b) then range:=true
 else range:=false

end;

6. ∆ίνεται το πιο κάτω πρόγραµµα γραµµένο στη γλώσσα προγραµµατισµού Pascal. Με
τη χρήση προκαταρκτικής εκτέλεσης, να παρουσιάσετε τα αποτελέσµατα του 
προγράµµατος όταν δοθεί η τιµή 5 στη µεταβλητή k. Στη θέση του διαστήµατος να 
χρησιµοποιήσετε το σύµβολο «». 
program askisi6; 
uses wincrt; 
 var 
a,k,m,x:integer; 
 Function fun(b,d: integer): integer; 
 begin 
 fun:=(b+d) * 2 
 end; 
 begin 
 write ('∆ώστε τιµή για k:'); 
readln(k); 
 a:=1; 
m:=2; 
 while a<5 do="" font="" nbsp="">
 begin 
 if k+a>6 then 
x:=fun(a,m) 
 else 
x:=a+m; 
 writeln(m:3,a:3,x:3); 
 a:=a+2; 
 m:=m+1 
 end 
end. 



ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2010
7. Να γράψετε μια συνάρτηση στη γλώσσα προγραμματισμού Pascal με το όνομα 
Triangle, η οποία να δέχεται από το κυρίως πρόγραμμα τρεις θετικούς 
πραγματικούς αριθμούς P1, P2 και P3. Οι αριθμοί αυτοί αντιπροσωπεύουν τις 
τρεις πλευρές ενός τριγώνου. Αν τουλάχιστον δύο από τις τρεις πλευρές είναι ίσες, 
η συνάρτηση να επιστρέφει στο κυρίως πρόγραμμα την τιμή «Ισοσκελές 
Τρίγωνο», διαφορετικά, να επιστρέφει την τιμή «Μη Ισοσκελές Τρίγωνο». 

function Triangle (P1,P2,P3:real):string;
begin
 If (P1 = P2) OR (P2=P3) OR (P1=P3) then
 Triangle:= ‘Ισοσκελές Τρίγωνο’
 else
 Triangle:= ‘Μη Ισοσκελές Τρίγωνο’
 end;