- program p_name(output); - uses crt;

Σχετικά έγγραφα
ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

- program p_name(input) - uses crt

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

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

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

Κεφάλαιο 13 : Τύποι Δεδοµένων

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

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

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

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

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

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

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

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

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

ΕΠΑ.Λ ΧΡΥΣΟΥΠΟΛΗΣ Γ Πληροφορική Προγραµµατισµός Υπολογιστών Κεφάλαιο 9 Σηµειώσεις 03. Εντολή Εκχώρησης - Αντικατάστασης

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

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

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

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

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

ΠΕΡΙΕΧΟΜΕΝΑ ΠΡΟΛΟΓΟΣ 15 ΚΕΦΑΛΑΙΟ 1 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΟΙ ΠΡΑΓΜΑΤΙΚΟΙ ΜΕΤΑΒΛΗΤΕΣ ΛΟΓΙΚΟΥ ΤΥΠΟΥ ΑΛΦΑΡΙΘΜΗΤΙΚΑ...

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

ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ

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

Fortran και Αντικειμενοστραφής προγραμματισμός.

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

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

Pascal. 26 Οκτωβρίου 2011

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

επιµέλεια Θοδωρής Πιερράτος

A2. Να γράψετε για κάθε περίπτωση τον αριθμό της πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

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

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

ΚΕΦΑΛΑΙΟ 7 ο. Έτσι ο προγραµµατισµός µε τη ΓΛΩΣΣΑ εστιάζεται στην ανάπτυξη του αλγορίθµου και τη µετατροπή του σε σωστό πρόγραµµα.

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

2.2.3 Η εντολή Εκτύπωσε

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

Pascal. 15 Νοεμβρίου 2011

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

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

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

ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης)

Γ Τάξη ΕΠΑ.Λ. Κώστας Κωσταλίας Εκπαιδευτικός ΠΕ19

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

ΕΠΑ.Λ ΧΡΥΣΟΥΠΟΛΗΣ Γ Πληροφορική Προγραµµατισµός Υπολογιστών Κεφάλαιο 10 Εργαστηριακή ραστηριότητα 02 ΑΠΑΝΤΗΣΕΙΣ

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

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

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

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

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

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

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός

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

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

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

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

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Εισαγωγή στη Fortran. Μάθημα 1 ο. Ελευθερία Λιούκα

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

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 11 : Εντολές Επανάληψης 6 ο Φύλλο Εργασιών : Φωλιασµένες επαναλήψεις ΑΠΑΝΤΗΣΕΙΣ

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Μονοδιάστατοι Πίνακες

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

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

Τυχαίοι αριθμοί struct Αρχεία Διαμορφώσεις Συναρτήσεις Χειρισμός σφαλμάτων ΠΕΜΠΤΗ ΔΙΑΛΕΞΗ

Δομή προγράμματος στη Fortran

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

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

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

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης

Δομή προγράμματος στη Fortran

8 FORTRAN 77/90/95/2003

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

ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C

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

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

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

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

a = 10; a = k; int a,b,c; a = b = c = 10;

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

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

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

Pascal Βασικοί τύποι δεδοµένων

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

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

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1

Α.1 Τι γνωρίζετε για τον διερμηνευτή, τον μεταγλωττιστή και ποιες οι διαφορές τους. 15 ΜΟΝΑΔΕΣ

Pascal. 1 Γλώσσες προγραμματισμού. 21 Οκτωβρίου 2011

Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων

7.1 Αλφάβητο. 7.2 Τύποι δεδομένων. 7.3 Σταθερές. 7.4 Μεταβλητές. 7.5 Αριθμητικοί τελεστές. 7.6 Συναρτήσεις. 7.7 Αριθμητικές εκφράσεις. 7.

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

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

Δομές Διακλάδωσης. Κεφάλαιο 6 Trimos Mike

Transcript:

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 9 : Βασικές Εντολές 1. Εισαγωγή Εντολές Εξόδου Κάθε Η/Υ έχει µία προκαθορισµένη συσκευή ή αρχείο (η συσκευή αναπαρίσταται ως αρχείο) όπου γίνεται η έξοδος των αποτελεσµάτων µιας επεξεργασίας (ενός προγράµµατος) εκτός και αν ο χρήστης ορίσει κάτι άλλο. Μια πολύ κοινή συσκευή εξόδου είναι η οθόνη του Η/Υ ή ένας εκτυπωτής. Σε κάθε υλοποίηση της Pascal αυτή η συσκευή είναι γνωστή σαν ένα προκαθορισµένο αρχείο µε όνοµα Output (µεταβλητή τύπου αρχείου). Κάθε εντολή εξόδου σε ένα πρόγραµµα Pascal γράφει σ αυτό το αρχείο εκτός και αν ο χρήστης έχει ορίσει ένα διαφορετικό αρχείο συσκευή. Για την έξοδο αποτελεσµάτων ένα πρόγραµµα Pascal χρησιµοποιεί τις διαδικασίες write και writeln. Σε κάθε περίπτωση οι παραπάνω διαδικασίες γράφουν δεδοµένα σε ένα αρχείο. Αυτό το αρχείο µπορεί να είναι ένα κανονικό αρχείο ή µία συσκευή (οθόνη εκτυπωτής) την οποία η Pascal χειρίζεται σαν αρχείο. Για να χρησιµοποιήσουµε τις εντολές write και writeln θα πρέπει στην επικεφαλίδα του προγράµµατος να δηλώσουµε το αρχείο output καθώς επίσης και τη βιβλιοθήκη wincrt - program p_name(output); - uses crt; 2. Η εντολές write και writeln Για την έξοδο αποτελεσµάτων, δηλαδή για την εµφάνιση των τιµών µεταβλητών ή σταθερών στην οθόνη ή σε εκτυπωτή, η Pascal χρησιµοποιεί τις διαδικασίες (procedures) write και wtiteln που ονοµάζονται εντολές εξόδου. Οι ίδιες εντολές µπορούν να χρησιµοποιηθούν και για εγγραφή δεδοµένων σε αρχεία που βρίσκονται αποθηκευµένα στο σκληρό δίσκο του υπολογιστή. Ωστόσο στα πλαίσια του µαθήµατός µας δεν θα µας απασχολήσει αυτή η περίπτωση παρά µόνο η χρήση τους για εµφάνιση δεδοµένων στην οθόνη. 2.1. Η εντολή write Μορφή write(παράµετρος_1, παράµετρος_2,...,παράµετρος_ν) Λειτουργία Όταν εκτελείται η εντολή write, οι τιµές των παραµέτρων τυπώνονται µε τη σειρά που δίνονται από αριστερά προς τα δεξιά Κάθε παράµετρος της write µπορεί να είναι σταθερά (αριθµητικού, αλφαριθµητικού ή λογικού τύπου) Σ αυτή την περίπτωση τυπώνεται η τιµή της σταθεράς 1

µεταβλητή (αριθµητικού, αλφαριθµητικού ή λογικού τύπου) Σ αυτή την περίπτωση τυπώνεται η τιµή της µεταβλητής αριθµητική (ή λογική) έκφραση Σ αυτή την περίπτωση υπολογίζεται και τυπώνεται το αποτέλεσµα της παράστασης Παράδειγµα (αρχείο write.pas) 1 program write_1(output); 2 uses crt; 3 var 4 a,b:integer; 5 X,Y:boolean; 6 C:string; 7 begin 8 a:=1; 9 b:=2; 10 X:=true; 11 Y:=false; 12 C:='µήνυµα'; 13 write(1); {εµφάνιση αριθµητικής σταθεράς τύπου integer} 14 write(2.1); {εµφάνιση αριθµητικής σταθεράς τύπου real} 15 write('turbo pascal'); {εµφάνιση αλφαριθµητικής σταθεράς} 16 write(true); {εµφάνιση λογικής σταθεράς} 17 write(a); {εµφάνιση µεταβλητής} 18 write(c); {εµφάνιση µεταβλητής} 19 write(x); {εµφάνιση µεταβλητής} 20 write((a+1)*2/b); {εµφάνιση αριθµητικής έκφρασης} 21 write(x and Y); {εµφάνιση λογικής έκφρασης} 22 writeln(); {εµφάνιση κενής γραµµής} 23 write(1,2.1,'turbo Pascal', true,a,c,x,(a+1)*2/b,x and Y); {όλες οι παραπάνω εντολές write σε µία} 24 writeln(); {εµφάνιση κενής γραµµής} 25 write(1,' ',2.1,' ','Turbo Pascal',' ', true,' ',a,' ',C,' ',X,' ',(a+1)*2/b,' ',X and Y); {η προηγούµενη εντολή µε τις παραµέτρους να χωρίζονται µε κενά} 26 end. Η εκτέλεση του παραπάνω προγράµµατος δίνει τα ακόλουθα αποτελέσµατα 1 2.1000000000000000E+0000Turbo pascaltrue1µήνυµαtrue2false 1 2.1000000000000000E+0000Turbo PascalTRUE1µήνυµαTRUE2FALSE 1 2.1000000000000000E+0000 Turbo Pascal TRUE 1 µήνυµα TRUE 2 FALSE Παρατηρήσεις Οι τιµές των παραµέτρων τυπώνονται η µία δίπλα στην άλλη χωρίς κενά ενδιάµεσα. Αν θέλουµε να χωρίσουµε τις τιµές που τυπώνονται µε κενά θα πρέπει να συµπεριλάβουµε στις παραµέτρους και τα κενά π.χ. write(a,,b); (βλέπε και γραµµή 25 στον κώδικα παραπάνω. 2

2.2. Η εντολή writeln Μορφή writeln(παράµετρος_1, παράµετρος_2,...,παράµετρος_ν) Λειτουργία H εντολή writeln, έχει ακριβώς την ίδια λειτουργία µε την write εκτός από την παρακάτω διαφορά.: Αν έχουµε µία εντολή write η οποία ακολουθείται από µία άλλη εντολή εξόδου (write ή writeln) τότες αφού τελειώσει η πρώτη την εµφάνιση των παραµέτρων της η επόµενη θα εµφανίσει τις δικές τις παραµέτρους αµέσως µετά την τελευταία τιµή της προηγούµενης χωρίς κανέναν διαχωρισµό όπως είδαµε από το προηγούµενο παράδειγµα. Η εντολή writeln αφού εµφανίσει όλες τις παραµέτρους τις εισάγει και µια αλλαγή γραµµής (σαν να πατάµε enter στο word) οπότε η επόµενη εντολή εξόδου θα ξεκινήσει από την επόµενη γραµµή. Παράδειγµα 1 Εντολές Τιµές των µεταβλητών Write(data1,, data2); Write ( telos ); Data1=55 data2=35 Writeln(data1,, data2); Writeln ( telos ); Data1=55 data2=35 Αποτέλεσµα 55 35 telos 55 35 telos 3

Παράδειγµα 2 (αρχείο writeln.pas) 1 program writeln_1(output); 2 uses crt; 3 var 4 a,b:integer; 5 X,Y:boolean; 6 C:string; 7 begin 8 a:=1; 9 b:=2; 10 X:=true; 11 Y:=false; 12 C:='µήνυµα'; 13 writeln(1); {εµφάνιση αριθµητικής σταθεράς τύπου integer} 14 writeln(2.1); {εµφάνιση αριθµητικής σταθεράς τύπου real} 15 writeln('turbo pascal'); {εµφάνιση αλφαριθµητικής σταθεράς} 16 writeln(true); {εµφάνιση λογικής σταθεράς} 17 writeln(a); {εµφάνιση µεταβλητής} 18 writeln(c); {εµφάνιση µεταβλητής} 19 writeln(x); {εµφάνιση µεταβλητής} 20 writeln((a+1)*2/b); {εµφάνιση αριθµητικής έκφρασης} 21 writeln(x and Y); {εµφάνιση λογικής έκφρασης} 22 writeln(); {εµφάνιση κενής γραµµής} 23 writeln(1,2.1,'turbo Pascal', true,a,c,x,(a+1)*2/b,x and Y); {όλες οι παραπάνω εντολές write σε µία} 24 writeln(); {εµφάνιση κενής γραµµής} 25 writeln(1,' ',2.1,' ','Turbo Pascal',' ', true,' ',a,' ',C,' ',X,' ',(a+1)*2/b,' ',X and Y); {η προηγούµενη εντολή µε τις παραµέτρους να χωρίζονται µε κενά} 26 end. Μεταγλωττίστε και εκτελέστε το παραπάνω πρόγραµµα και συγκρίνεται τα αποτελέσµατα µε το προηγούµενο. Παρατήρηση Η εντολή writeln µπορεί να χρησιµοποιηθεί χωρίς παραµέτρους. Σ αυτή την περίπτωση το αποτέλεσµα είναι να εισάγεται µια αλλαγή γραµµής οπότε η επόµενη εντολή εξόδου να τυπώνει στην επόµενη γραµµή. Δηλαδή η εντολή Writeln(x,y) είναι ισοδύναµη µε τις εντολές Write(x,y); Writeln; 2.3. Η Μορφοποιηµένη εκτύπωση Γενικά Μπορούµε να εισάγουµε όσες κενές γραµµές θέλουµε δίνοντας την εντολή writeln() (χωρίς παραµέτρους) τόσες φορές όσες οι κενές γραµµές που θέλουµε. Για να χωρίσουµε τις παραµέτρους στην ίδια σειρά µε κενά συµπεριλαµβάνουµε όσα κενά θέλουµε (ως παραµέτρους) µέσα σε (αυτάκια). 4

Μια γραµµή της οθόνης µπορεί να θεωρηθεί ως µια ακολουθία από ισοδιάστατες θέσεις που σε κάθε µία από αυτές µπορεί να γραφτεί ένας χαρακτήρας. Το πλήθος των θέσεων εξαρτάται από την οθόνη. Οι θέσεις αυτές µπορούν να θεωρηθούν αριθµηµένες από αριστερά προς τα δεξιά. Αφού έχει εκτελεστεί µια εντολή writeln, η επόµενη εντολή writeln θα ξεκινήσει από την πρώτη θέση της επόµενης γραµµής και στη συνέχεια προχωράει προς τα δεξιά µε έναν χαρακτήρα σε κάθε θέση. Αν έχουµε οθόνη 8 χαρακτήρων η εντολή writeln( ABCD ); θα τυπώσει A B C D Ακέραιες και αλφαριθµητικού τύπου τιµές Για σταθερές ή µεταβλητές ακέραιου τύπου ή αλφαριθµητικού τύπου µπορούµε να ορίσουµε σε πόσες θέσεις (εύρος πεδίου) θα τυπωθεί η τιµή µιας παραµέτρου. Σ αυτή την περίπτωση γράφουµε writeln(x:m); όπου x είναι η µεταβλητή και m το πλήθος των θέσεων εκτύπωσης. Αν το εύρος είναι ίσο µε το µήκος της τιµής της παραµέτρου, τότε η εµφάνιση της τιµής γίνεται κανονικά. Αν το εύρος είναι µεγαλύτερο από το µήκος της τιµής της παραµέτρου, τότε εµφανίζονται κενά πριν από την τιµή της παραµέτρου προκειµένου να καλυφθεί το πλήθος των θέσεων εκτύπωσης. Αν το εύρος είναι µικρότερο από το µήκος της τιµής της παραµέτρου τότε η οδηγία µορφοποίησης αγνοείται και η εµφάνιση της τιµής γίνεται κανονικά. Παράδειγµα (αρχείο formatted_out.pas) program formatted_out(output); uses crt; var A:integer; begin A:=234; writeln(1:7); writeln(a:5); writeln('μηλο':4); writeln('πιτα':7); writeln(' AB':4); writeln('efg':2); end. Η εκτέλεση του παραπάνω κώδικα δίνει τα εξής αποτελέσµατα: 1 234 ΜΗΛΟ ΠΙΤΑ AB EFG 5

Τιµές τύπου real Για µία τιµή τύπου real εκτός από το πλήθος των θέσεων εκτύπωσης µπορούµε να προσδιορίσουµε και το πλήθος των δεκαδικών ψηφίων που θα εµφανίζονται. Αν x µια µεταβλητή τύπου real τότε µπορούµε να γράψουµε writeln(x:m:n); όπου x είναι η µεταβλητή, m το πλήθος των θέσεων εκτύπωσης και n το πλήθος των δεκαδικών ψηφίων. Παράδειγµα (αρχείο real_out.pas) program formatted_out(output); uses crt; const Pi=3.14159265; var A:real; begin A:=234.8976544; writeln(12.34567:7:2); writeln(pi:7:2); writeln(a:7:2); end. Η εκτέλεση του παραπάνω προγράµµατος δίνει : 12.35 3.14 234.90 6