procedure Calculate (a: real; var Β: real; m: integer; var k,n: integer; var c: integer); begin... end;

Σχετικά έγγραφα
Τμήμα Εφαρμοσμένης Πληροφορικής

procedure Calculate (a: real; var Β: real; m: integer; var k, n: integer; var c : integer);...

Στήλες:


Pascal, απλοί τύποι, τελεστές και εκφράσεις

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) a= b= c= 3 read(d,e)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ : ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΥ ΕΞΑΜΗΝΟ : Α. ΥΠΕΥΘΥΝΟΣ ΜΑΘΗΜΑΤΟΣ : Μάγια Σατρατζέµη

Αποτελέσματα προόδου

ΜΑΗΣ ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD)

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού "ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ" (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C)

Κεφάλαιο 9 : Βασικές εντολές

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ : ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΕΞΑΜΗΝΟ

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

ιαφάνειες παρουσίασης #4

Προγραμματισμός PASCAL

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ-ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΚΑΔΗΜΑΪΚΟ ΕΠΑΛ- ΚΑΝΙΓΓΟΣ 13- ΤΗΛ

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ:

Στην εντολή while η επανάληψη συνεχίζεται όσο η λογική έκφραση έχει τιμή false.

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

ιαφάνειες παρουσίασης #4

Γραπτές εξετάσεις στο μάθημα: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Θ) Εισηγητής: Γεωργίου Χρήστος ΘΕΜΑΤΑ & ΑΠΑΝΤΗΣΕΙΣ. Β. Χαρακτήρας(Αλφαριθμητικά)

ιαφάνειες παρουσίασης #6

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου

Γ ΤΑΞΗ ΗΜΕΡΗΣΙΟΥ ΕΠΑ.Λ ΜΑΘΗΜΑ ΕΙ ΙΚΟΤΗΤΑΣ ΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΚΦΩΝΗΣΕΙΣ

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Μονάδες 12 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

ιαφάνειες παρουσίασης #5

ΑΠΑΝΤΗΣΕΙΣ. H διαδικασία ανεύρεσης λογικών λαθών περιλαμβάνει : β- Σωστό. Διαπίστωση του είδους του λάθους γ- Σωστό δ- Λάθος

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ

ΑΠΑΝΤΗΣΕΙΣ. α- Σωστό β- Σωστό γ- Λάθος δ- Λάθος ε- Σωστό στ- Σωστό

ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL

Ενότητα 1: «Εισαγωγή στην Αλγοριθμική και τον Προγραμματισμό. Απλές ασκήσεις με γλώσσα Pascal»

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΟΜΑΘΕΙΑ

ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2014

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιδάσκων ηµήτριος Κατσαρός, Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΠΑΝΕΛΛΑ ΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α Β ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙ ΙΚΟΤΗΤΑΣ

Καθηγητής Ε. Χ. ΖΙΟΥΛΑΣ

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΝΕΟ ΚΑΙ ΠΑΛΑΙΟ ΣΥΣΤΗΜΑ

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΑΛΓΕΒΡΑ Α ΓΥΜΝΑΣΙΟΥ ΘΕΤΙΚΟΙ ΚΑΙ ΑΡΝΗΤΙΚΟΙ ΑΡΙΘΜΟΙ ΕΠΙΜΕΛΕΙΑ : ΧΑΛΑΤΖΙΑΝ ΠΑΥΛΟΣ

Διαδικασιακός Προγραμματισμός

11. Ποιες είναι οι άμεσες συνέπειες της διαίρεσης;

ÏÌÉÊÑÏÍ ÖÑÏÍÔÉÓÔÇÑÉÏ ÊÏÑÄÅËÉÏ

Τμήμα Διοίκησης Τεχνολογίας. Εξάμηνο Β' Φύλλο Ασκήσεων 2 ΔΟΜΕΣ ΕΠΙΛΟΓΗΣ Διδάσκοντες: Στέλιος Ξυνόγαλος, Θεόδωρος Κασκάλης

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι χρειάζεται η εντολή DO ; ΕΠΑΝΑΛΗΨΕΙΣ ΕΝΤΟΛΗ DO. Όταν απαιτείται να εκτελεστεί πολλές φορές το ίδιο τμήμα ενός προγράμματος.

ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α A1. 2-Λάθος 3-Λάθος 4-Σωστό 5-Λάθος A2. integer. real. Boolean. char. string A3.

επιστρέφει αριθµό που προκύπτει µε αντιστροφή των στοιχείων του πρώτου

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κανονική εξέταση, Φεβρουάριος 2005

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. β. Οι πληροφορίες είναι δεδομένα τα οποία δεν έχουν υποστεί επεξεργασία.

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2013 ÅÐÉËÏÃÇ

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΠΡΑΓΜΑΤΙΚΟΙ ΑΡΙΘΜΟΙ ΑΚΟΛΟΥΘΙΕΣ ΑΡΙΘΜΩΝ EΞΙΣΩΣΕΙΣ...47 ΠΡΟΛΟΓΟΣ... 9

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

Pascal - Βασικές Έννοιες

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Αριθμήσιμα σύνολα. Μαθηματικά Πληροφορικής 5ο Μάθημα. Παραδείγματα αριθμήσιμων συνόλων. Οι ρητοί αριθμοί

Αριθμητική Ανάλυση & Εφαρμογές

- program p_name(output); - uses crt;

ΘΕΜΑ : ΣΥΣΤΗΜΑΤΑ ΑΡΙΘΜΗΣΗΣ. ΔΙΑΡΚΕΙΑ: 1 περιόδους. 22/1/ :11 Όνομα: Λεκάκης Κωνσταντίνος καθ. Τεχνολογίας

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ

ΔΙΑΔΙΚΑΣΤΙΚΟΣ ΠΡΟΓΡΑ Ρ Μ Α ΜΑΤΙ Τ ΣΜΟΣ

Κεφάλαιο 12 : ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ

Υποπρογράµµατα Συναρτήσεις. Στόχοι Μαθήµατος. Οι µαθητές να µπορούν:

ιαφάνειες παρουσίασης #5

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013

A3. Μονάδες 5 Α4. Μονάδες 10 ΘΕΜΑ B. Β1. writeln Περιεχόμενα Εντολή Αποτελέσματα Παραμέτρων Μονάδες 20 ΘΕΜΑ Γ.

Μαζέρας Αχιλλέας. Οι εντολές επανάληψης στην Pascal (While) Φυσικός Αυτοματιστής M.Sc. Νοέµβριος 2009

ιαφάνειες παρουσίασης #3

2009 :, :30 10: (10) . - (3) . . (10)

ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ Α ΓΥΜΝΑΣΙΟΥΣΤΗΝ ΑΛΓΕΒΡΑ. Άρτιοι αριθμοί ονομάζονται οι αριθμοί που διαιρούνται με το 2 και περιττοί εκείνοι

Συστήματα Αρίθμησης. Συστήματα Αρίθμησης 1. PDF created with FinePrint pdffactory Pro trial version

ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2013 ΕΚΦΩΝΗΣΕΙΣ

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 7 και 8: Αναπαραστάσεις. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal

Γλώσσα Προγραμματισμού C

Κεφάλαιο 5ο: Εντολές Επανάληψης

Γράψτε ένα πρόγραμμα που θα προσομοιώνει τη ρίψη ενός νομίσματος και θα εμφανίζει στην οθόνη Κορώνα» ή «Γράμματα».

Κεφάλαιο Πέµπτο: Η Εξάσκηση

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ : ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΥ ΕΞΑΜΗΝΟ : Α' ΦΥΛΛΟ ΑΣΚΗΣΕΩΝ : 8 Συναρτήσεις (Functions), Μονάδες (Units) ΥΠΕΥΘΥΝΟΣ ΜΑΘΗΜΑΤΟΣ : Μάγια Σατρατζέµη Παρατηρήσεις: 1. Τα δεδοµένα εισόδου διαβάζονται πάντα µε ξεχωριστές εντολές Readln( ) το καθένα και µε τη σειρά που δηλώνονται στις εκφωνήσεις. 2. Αντίστοιχα για τα δεδοµένα εξόδου και όπου δεν υπάρχουν περαιτέρω διευκρινήσεις για τη µορφή τους, αυτά θα εµφανίζονται µε ξεχωριστές εντολές Writeln( ) το καθένα και µε τη σειρά που δηλώνονται στις εκφωνήσεις. 3. Το αποτέλεσµα πράξης στην οποία συµµετέχει αριθµός τύπου Real, θα είναι πάντα ακέραιος αριθµός. Σε αντίθετη περίπτωση θα γίνονται οι απαραίτητες διευκρινήσεις. 1. ίνεται o παρακάτω σκελετός ενός προγράµµατος Ρascal: program demo; const pi=3.14159; two=2; var Μonth, Day, Υear, p, q: Ιnteger; Ηours, Rate, Αmount, u, v: real; Code, Class: char; function f(x, y: real; d: integer): real; begin end; procedure Calculate (a: real; var Β: real; m: integer; var k,n: integer; var c: integer); begin end; Προσδιορίστε ποιες από τις επόµενες εντολές µπορούν να χρησιµοποιηθούν µέσα σε αυτό το πρόγραµµα (δηλαδή δεν περιέχουν συντακτικά λάθη): a) Αmount:= f(pi, Rate, month); b) Rate:= f(ηours, Day, two); c) writeln(f(0, 0, 0)); d) f(ηours, Rate, Μonth); e) Calculate(u, v, p, two, Day, code); f) Ηours:= two*f(pi, amount) / (2.71828*Rate); g) Αmount:= f(pi*ηours, (2.71828+Day) / Rate, two); h) if Μonth= two then Υear:= f(ηours, f(rate, pi, two), Day); i) if u > 0 then Αmount:= Calculate(u, v, two, p, q, Code); 8-1

j) if calculate(0, u, 1, p, year, class) > 0 then writeln( Οkey'); k) while f(αmount, 0, 0) < pi do Αmount:= f(αmount, pi, 1); l) repeat Αmount:= f(αmount, 0, code) until Αmount > 0; m) Calculate(f(u, v, day), rate, 7, p, q, Code); n) Αmount := f(a, b, day); 2. Να γραφεί ένα πρόγραµµα που θα διαβάζει έναν αριθµό τύπου Real (µεταβλητή number) και έναν αριθµό τύπου Byte (µεταβλητή places) και θα περιλαµβάνει µια συνάρτηση µε όνοµα Round_Dec(number, places), η οποία θα επιστρέφει την τιµή της µεταβλητής number στρογγυλοποιηµένη στον καθορισµένο αριθµό δεκαδικών ψηφίων places (π.χ. Round_Dec(12.547,0), Round_Dec(12.547,1), Round_Dec(12.547,2) θα επιστρέφουν 13, 12.5 και 12.55 αντίστοιχα). Η εµφάνιση της στρογγυλοποιηµένης τιµής της µεταβλητής number θα γίνεται από το κυρίως πρόγραµµα και θα είναι στοιχηµένη στα αριστερά χωρίς κενά. 3. Να γραφεί µια συνάρτηση µε όνοµα ΥesΝο που θα διαβάζει την απάντηση του χρήστη στο (Ν/Ο) και θα επιστρέφει τη boolean τιµή true ή false αν πατήσει το πλήκτρο Ν ή Ο αντίστοιχα. Η συνάρτηση να δουλεύει για όλες τις καταστάσεις των πλήκτρων Ν και Ο (πεζοί-κεφαλαίοι, αγγλικοί-ελληνικοί χαρακτήρες). 4. Να γραφεί πρόγραµµα που θα διαβάζει τις τιµές τριών µεταβλητών Κefalaio (τύπου Longint), Εpitokio (τύπου Real, π.χ. για επιτόκιο 12% 0.12) και Εti (τύπου Integer) και στη συνέχεια θα υπολογίζει και θα εµφανίζει το συνολικό κεφάλαιο. Η εισαγωγή των στοιχείων θα γίνεται µε τη βοήθεια διαδικασίας ενώ ο υπολογισµός του κεφαλαίου µε τη βοήθεια συνάρτησης. 5. Να γραφεί πρόγραµµα που θα αποτελείται από τις παρακάτω συναρτήσεις οι οποίες θα δέχονται ένα χαρακτήρα και θα ελέγχουν αν είναι: αραβικός αριθµός ( ARABIC ), γράµµα του ελληνικού αλφαβήτου ( GREEK ), γράµµα του αγγλικού αλφαβήτου ( ENGLISH ), ελληνικό κεφαλαίο γράµµα ( GREEK CAPITAL ), αγγλικό κεφαλαίο γράµµα ( ENGLISH CAPITAL ), ελληνικό πεζό (µικρό) γράµµα ( GREEK SMALL ), αγγλικό πεζό (µικρό) γράµµα ( ENGLISH SMALL ), ελληνικό φωνήεν (πεζό ή κεφαλαίο) ( GREEK αγγλικό φωνήεν (πεζό ή κεφαλαίο) ( ENGLISH VOWEL ), VOWEL ), Θα επιστρέφουν µια τιµή Boolean ανάλογα µε το χαρακτήρα που δέχονται. Το πρόγραµµα θα καλεί διαδοχικά όλες τις παραπάνω συναρτήσεις και θα εµφανίζει ανάλογα µηνύµατα για τις συναρτήσεις που αληθεύουν. (π.χ. για το χαρ. α θα εµφανιστούν σε διαφορετικές γραµµές τα µηνύµατα GREEK, GREEK SMALL, GREEK VOWEL ) 6. Να γραφεί πρόγραµµα που θα περιέχει τις παρακάτω συναρτήσειs: - Μια συνάρτηση µε όνοµα Maxdate που θα δέχεται δύο ηµεροµηνίες και θα βρίσκει ποια από τις δύο είναι χρονικά µεγαλύτερη. Θα επιστρέφεται ο αύξων αριθµός της µεγαλύτερης ηµεροµηνίας. Ο αύξων αριθµός προκύπτει από τη σειρά µε την οποία έγινε η εισαγωγή των ηµεροµηνιών. - Μια συνάρτηση µε όνοµα Difference που θα δέχεται δύο ηµεροµηνίες και θα επιστρέφει τη διαφορά των ηµερών που χωρίζουν τις δύο αυτές ηµεροµηνίες (βλέπε βιβ. Κ. Κ. Τσούρου σελ. 95). Κάθε ηµεροµηνία θα αποτελείται από τρεις ακέραιους αριθµούς που θα δηλώνουν αντίστοιχα ηµέρα, µήνα και έτος. Το έτος θα δίνεται ολόκληρο, δηλαδή 1999 και όχι 99. Στη συνέχεια, οι ηµεροµηνία που δίνονται θα ελέγχονται αν είναι ηµερολογιακά σωστές µε τη χρήση της διαδικασίας Valid_Date και αν δεν είναι τότε θα εµφανίζεται το µήνυµα λάθους ERROR και το πρόγραµµα θα τερµατίζει. Αν και οι δύο ηµεροµηνίες είναι έγκυρες τότε θα εµφανίζονται οι τιµές των συναρτήσεων Maxdate και Difference. 7. Να γραφεί µια συνάρτηση µε όνοµα AbsDate που θα δέχεται µια ηµεροµηνία και θα επιστρέφει τον απόλυτο αριθµό της (1-365 ή 366) µέσα στο έτος. Η ηµεροµηνία θα διαβάζεται από το κυρίως πρόγραµµα και θα αποτελείται από τρεις ακέραιους αριθµούς που θα δηλώνουν αντίστοιχα ηµέρα, µήνα και έτος. Το έτος θα δίνεται ολόκληρο, δηλαδή 1999 και όχι 99. Να χρησιµοποιηθεί η διαδικασία Valid_Date για τον έλεγχο της 8-2

ηµεροµηνίας. Αν η ηµεροµηνία δεν είναι έγκυρη τότε το κυρίως πρόγραµµα θα εµφανίζει το µήνυµα λάθους ERROR, αλλιώς θα εµφανίζει την τιµή της συνάρτησης. 8. Να γραφεί ένα πρόγραµµα που θα διαβάζει έναν ακέραιο αριθµό τύπου Longint και θα περιλαµβάνει µια συνάρτηση µε όνοµα Reverse, η οποία θα δέχεται τον ακέραιο αυτό και θα επιστρέφει τον αριθµό που προκύπτει από την αντιστροφή των ψηφίων του (π.χ. 271 172, 256400 4652). Η τιµή της συνάρτησης θα εµφανίζεται από το κυρίως πρόγραµµα. 9. Οι αριθµοί για τους οποίους το άθροισµα των κύβων των ψηφίων τους είναι ίσο µε τον ίδιο τον αριθµό λέγονται αριθµοί Αrmstrong. (π.χ. 153 = 1 3 +5 3 +3 3 ) Να γραφεί πρόγραµµα που θα περιλαµβάνει τα παρακάτω : την συνάρτηση Cube που θα επιστρέφει την τρίτη δύναµη ενός µονοψήφιου ακέραιου αριθµού, την διαδικασία Separate που θα δέχεται έναν ακέραιο αριθµό και θα επιστρέφει τα ψηφία από τα οποία αποτελείται και την συνάρτηση Sum_Cube που θα δέχεται έναν ακέραιο αριθµό και θα επιστρέφει το άθροισµα των κύβων των ψηφίων του. Το κυρίως πρόγραµµα θα βρίσκει και θα εµφανίζει ποιοι είναι αριθµοί Αrmstrong στο διάστηµα (1-999). 10. Να γραφεί πρόγραµµα που θα περιλαµβάνει τα παρακάτω : µια συνάρτηση µε όνοµα Parag που θα δέχεται έναν ακέραιο αριθµό µικρότερο του 12 και θα επιστρέφει το παραγοντικό του (longint) και µια συνάρτηση µε όνοµα Force που θα βρίσκει τη n-οστή δύναµη (n=ακέραιος) ενός πραγµατικού αριθµού x. Θα επιστρέφει real τύπου αριθµό. Τo πρόγραµµα θα βρίσκει την τιµή του sinx από τον τύπο : sinx = x - x 3 /3! + x 5 /5! - x 7 /7! +.... Ο υπολογισµός θα σταµατά όταν υπολογιστεί ο όρος x 11 /11! ή όταν η ακρίβεια του αποτελέσµατος γίνει µικρότερη του 0.0001. Στη συνέχεια το κυρίως πρόγραµµα θα εµφανίζει το αποτέλεσµα σε δεξιά στοίχιση των 12 χαρακτήρων µε ακρίβεια 10 δεκαδικών ψηφίων, καθώς και τον εκθέτη του τελευταίου όρου που υπολογίστηκε (3, 5, 7 ή 11). Το x (real) θα δίνεται σε ακτίνια (rads) και όχι σε µοίρες. 11. Να γραφεί πρόγραµµα που θα διαβάζει δύο ακέραιους αριθµούς τύπου Integer (µεταβλητές a και m) και θα περιλαµβάνει µια συνάρτηση µε όνοµα Ιnt_to_String(a,m) που θα µετατρέπει τον θετικό ακέραιο a σε αλφαριθµητικό µήκους m τοποθετώντας µηδενικά στις τυχόν κενές θέσεις που µένουν µπροστά από τον αριθµό (π.χ. Ιnt_to_String(4437,7) θα δώσει αποτέλεσµα '0004437'). Η τιµή της συνάρτησης να εµφανίζεται από το κυρίως πρόγραµµα. 12. Να γραφούν 3 διαφορετικά προγράµµατα καθένα από τα οποία θα περιλαµβάνει και µια από τις παρακάτω συναρτήσειs: a) String_to_Integer µετατρέπει ένα αλφαριθµητικό σε αριθµό τύπου Integer, b) String_to_Longint µετατρέπει ένα αλφαριθµητικό σε αριθµό τύπου Longint και c) String_to_Real µετατρέπει ένα αλφαριθµητικό σε αριθµό τύπου Real. Θα ελέγχεται η ύπαρξη µη αριθµητικών χαρακτήρων στο αλφαριθµητικό οπότε θα επιστρέφεται τιµή 0, ενώ στην περίπτωση πραγµατικού αριθµού θα διαβάζεται και ο αριθµός των δεκαδικών ψηφίων που θα έχει µε στρογγυλοποίηση του τελευταίου ψηφίου. Το κυρίως πρόγραµµα θα εµφανίζει την τιµή που επιστρέφει η συνάρτηση. Οι δεκαδικοί αριθµοί θα εµφανίζονται στοιχηµένοι στα αριστερά χωρίς κενά. 13. Να γραφεί ένα πρόγραµµα που θα διαβάζει έναν αριθµό τύπου Integer και θα περιλαµβάνει µια συνάρτηση µε όνοµα Βinstring, η οποία θα µετατρέπει τον αριθµό αυτό σε δυαδικό αλφαριθµητικό (π.χ. 44 '101100'). Η τιµή της συνάρτησης θα εµφανίζεται από το κυρίως πρόγραµµα. 14. Να γραφεί ένα πρόγραµµα που θα διαβάζει έναν δυαδικό αριθµό υπό µορφή αλφαριθµητικού και θα περιλαµβάνει µια συνάρτηση µε όνοµα From_Βin_to_Integer, η οποία θα µετατρέπει το αλφαριθµητικό αυτό σε αριθµό τύπου Ιnteger (π.χ. '101100' 44). Η τιµή που επιστρέφει η συνάρτηση θα εµφανίζεται από το κυρίως πρόγραµµα. 8-3

15. Να γραφεί ένα πρόγραµµα που θα διαβάζει έναν αριθµό τύπου Ιnteger και θα περιλαµβάνει µια συνάρτηση µε όνοµα Ηexstring, η οποία θα µετατρέπει τον αριθµό αυτό σε δεκαεξαδικό αλφαριθµητικό (π.χ. 32767 7FFF ). Η τιµή της συνάρτησης θα εµφανίζεται από το κυρίως πρόγραµµα. 16. Να γραφεί ένα πρόγραµµα που θα διαβάζει ένα δεκαεξαδικό αριθµό υπό µορφή αλφαριθµητικού και θα περιλαµβάνει µια συνάρτηση µε όνοµα From_Hex_to_Integer, η οποία θα µετατρέπει το αλφαριθµητικό αυτό σε αριθµό τύπου Ιnteger (π.χ. 7FFF 32767). Η τιµή που επιστρέφει η συνάρτηση θα εµφανίζεται από το κυρίως πρόγραµµα. 17. Να γραφεί ένα πρόγραµµα που θα διαβάζει ένα αλφαριθµητικό και θα περιλαµβάνει µια συνάρτηση µε όνοµα Capital, η οποία θα µετατρέπει τους πεζούς χαρακτήρες του αλφαριθµητικού αυτού σε κεφαλαίους. Η τιµή της συνάρτησης θα εµφανίζεται από το κυρίως πρόγραµµα. Για τους αγγλικούς χαρακτήρες να χρησιµοποιηθεί η συνάρτηση Upcase ενώ για τους ελληνικούς να βρεθεί η ακριβής αντιστοιχία (τονισµένοι, άτονοι, µε διαλυτικά) από τον κώδικα ΑSCΙΙ. 18. Να γραφεί συνάρτηση µε επικεφαλίδα: - Συνάρτηση Ρassword : Βoolean; που θα επιτρέπει την εισαγωγή ενός συνθηµατικού µήκους 7 χαρακτήρων σε συγκεκριµένη θέση της οθόνης, αόρατα, µε δυνατότητα 3 το πολύ δοκιµών. Η εισαγωγή θα γίνει µε χρήση της Readkey και οι 7 θέσεις θα δείχνουν συνεχώς το χαρακτήρα #176. Αν η εισαγωγή ολοκληρωθεί επιτυχώς θα εµφανίζεται το κατάλληλο µήνυµα ενώ σε περίπτωση αποτυχίας θα εµφανίζεται ανάλογο µήνυµα. 19. Να γραφεί ένα πρόγραµµα που θα διαβάζει τις τιµές 2 ακέραιων µεταβλητών x και y και θα περιλαµβάνει τις συναρτήσειs ΜΑΧ(x,y:integer):integer και ΜΙΝ(x,y:integer):integer, οι οποίες υπολογίζουν το µέγιστο και τον ελάχιστο όρο µεταξύ δυο ακεραίων. Οι τιµές των συναρτήσεων θα εµφανίζονται µε την παραπάνω σειρά από το κυρίως πρόγραµµα. 20. Να γραφεί ένα πρόγραµµα που θα διαβάζει τις τιµές 2 ακέραιων µεταβλητών x, y και θα περιέχει τις παρακάτω συναρτήσειs: ΑDD(x, y: integer): integer SUΒ(x, y: integer): integer ΜULΤ(x, y: integer): integer DΙVD(x, y: integer): integer oι οποίες θα υπολογίζουν αντίστοιχα το άθροισµα, τη διαφορά, το γινόµενο και το ακέραιο πηλίκο δύο ακέραιων αριθµών. Τέλος να υπολογίζονται οι τιµές των: Μult(Αdd(x,y), Sub(x, Divd(x,y)) και Divd(Sub(Μult(x, y), x), Αdd(x, y)). Το κυρίως πρόγραµµα θα εµφανίζει τις τιµές των παραπάνω συναρτήσεων µε αντίστοιχη σειρά. 21. Να γίνει πρόγραµµα που θα διαβάζει τις τιµές 2 ακέραιων µεταβλητών και θα περιλαµβάνει τις συναρτήσειs: ΜΚD (x, y: integer): integer και ΕΚΡ (x, y: integer): integer, οι οποίες θα υπολογίζουν το µέγιστο κοινό διαιρέτη (ΜΚ ) και το ελάχιστο κοινό πολλαπλάσιο (ΕΚΠ) δύο ακέραιων αριθµών. Οι συναρτήσεις να γραφούν µε τη βοήθεια των ασκήσεων 19 και 20. Για τον υπολογισµό του ΜΚ στηριχθείτε στις παρακάτω συνθήκες: ο ΜΚ των Α και 0 είναι Α αν Α>Β τότε ο ΜΚ (Α, Β) = ΜΚ (Α-Β, Β) Στη συνέχεια το κυρίως πρόγραµµα θα εµφανίζει τις τιµές των παραπάνω συναρτήσεων µε αντίστοιχη σειρά. 22. Με τη βοήθεια της άσκησης 21 να γράψετε µια συνάρτηση µε όνοµα SΙΜΡLΕ η οποία θα δέχεται ως είσοδο ένα αλφαριθµητικό (String) της µορφής Α/Β µε Α και Β ακεραίους και θα επιστρέφει το κλάσµα απλοποιηµένο, διαιρώντας τους δυο όρους του µε το ΜΚ τους (π.χ. 6/12 1/2). Το κυρίως πρόγραµµα θα διαβάζει το αλφαριθµητικό και στη συνέχεια θα εµφανίζει την τιµή της συνάρτησης SIMPLE. 8-4

23. Να γραφεί µια µονάδα (unit), η u23f2.pas που θα περιλαµβάνει διαδικασίες ή συναρτήσεις για να προσδιορίσει τις παρακάτω πληροφορίες αν ως παράµετρος εισόδου θεωρηθεί ένας ακέραιος αριθµός τύπου Integer. Είναι ο ακέραιος αριθµός πολλαπλάσιο του 7, 11 ή του 13; Είναι το πλήθος των ψηφίων του περιττό ή άρτιο; Είναι ο αριθµός πρώτος; Στη συνέχεια να γραφεί πρόγραµµα που θα ελέγχει τα υποπρογράµµατα της µονάδας που υλοποιήσατε. Ο ακέραιος αριθµός θα διαβάζεται από το πρόγραµµα και θα εµφανίζονται µε αντίστοιχη σειρά τα µηνύµατα που ισχύουν για τον αριθµό αυτό: ΠΟΛΛΑΠΛΑΣΙΟ ΤΟΥ 7 ΠΟΛΛΑΠΛΑΣΙΟ ΤΟΥ 11 ΠΟΛΛΑΠΛΑΣΙΟ ΤΟΥ 13 ΑΡΤΙΟ ΠΛΗΘΟΣ ΨΗΦΙΩΝ ΠΕΡΙΤΤΟ ΠΛΗΘΟΣ ΨΗΦΙΩΝ ΠΡΩΤΟΣ ΑΡΙΘΜΟΣ 8-5