Κων/νου Στυλιάδη. Έτοιµες Ασκήσεις σε Pascal

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Κων/νου Στυλιάδη. Έτοιµες Ασκήσεις σε Pascal"

Transcript

1 Έτοιµες Ασκήσεις σε Pascal Φλώρινα, Οκτώβριος 2000

2 Program prostesi; { όνοµα ή επικεφαλίδα ή τίτλος του προγράµµατος } (* αυτό το πρόγραµµα προσθέτει δύο αριθµούς *) Uses Crt; { δήλωση της µονάδας Crt, που περιέχει συναρτήσεις οθόνης } { τµήµα δηλώσεων του προγράµµατος } a, b, c : Real; { δήλωση τριών αριθµητικών µεταβλητών } { αρχή του κυρίου προγράµµατος, δηλ. των εντολών } Read(a, b); { διάβασµα τιµών για δύο µεταβλητές } c := a+b; { υπολογισµός του αθροίσµατος σε µια τρίτη µεταβλητή } Write(c) { εµφάνιση της τιµής της µεταβλητής στην οθόνη } { τέλος του προγράµµατος } (* ο χαρακτήρας ; χρησιµοποιείται για να δηλώσει το τέλος µιας εντολής και έχει λίγες µόνο εξαιρέσεις και το σύµβολο := χρησιµοποιείται για να καταχωρούµε τιµές σε µεταβλητές *) Program misthos; (* αυτό το πρόγραµµα κάνει υπολογισµό µισθοδοσίας *) Uses Crt; HM, ME, MA, KP, KA : Real; { ΗΜ είναι το ηµεροµίσθιο, ΜΕ είναι οι µέρες εργασίας, ΜΑ είναι οι µικτές αποδοχές, ΚΡ είναι οι κρατήσεις και ΚΑ είναι οι καθαρές αποδοχές } Read(HM, ME); MA := ME*HM; KP := 0.20*MA; KA := MA-KP; Write(MA, KP, KA) 2

3 Program fahr_cel; (* πρόγραµµα µετατροπής θερµοκρασίας Φαρενάιτ σε Κελσίου *) (* ο τύπος µετατροπής είναι ο εξής : CEL = ((FAHR-32)*5)/9 *) Uses Crt; Const factor = 32.0; { δήλωση µιας σταθεράς } bath_fahr, bath_cel : Real; { bath_fahr είναι οι βαθµοί Φαρενάιτ και bath_cel είναι οι βαθµοί Κελσίου } Writeln('Μετατροπή θερµοκρασίας από βαθµούς Φαρενάιτ '); Writeln('σε βαθµούς Κελσίου'); Writeln; { αφήνει µια κενή γραµµή στην οθόνη } Write('Δώσε τη θερµοκρασία σε βαθµούς Φαρενάιτ : )'; Readln(bath_fahr); { διάβασµα της θερµοκρασίας σε Φαρενάιτ } { υπολογισµός της θερµοκρασίας σε βαθµούς Κελσίου } bath_cel := ((bath_fahr-factor)*5.0)/9.0; Writeln('Αντιστοιχεί σε ', bath_cel, 'βαθµούς Κελσίου'); Writeln; { αφήνει µια κενή γραµµή στην οθόνη } 3

4 Το παρακάτω πρόγραµµα παρουσιάζει µια επεξεργασία συµβολοσειρών. Program Strings; Uses Crt; Const stathera = 'Γράψτε κάτι και πατήστε Enter : '; prompt_1 : String; prompt_2 : String; input_str : String; { κλήση συνάρτησης που καθαρίζει την οθόνη } prompt_1 := stathera; prompt_2 := 'Γράψατε : '; Write(prompt_1); Readln(input_str); Write(prompt_2); Writeln(input_str); Το αποτέλεσµα από το τρέξιµο του προγράµµατος θα είναι το εξής : Γράψτε κάτι και πατήστε Enter : Turbo Pascal 6.0! Γράψατε : Turbo Pascal 6.0! Μια συµβολοσειρά µπορεί να περιέχει µέχρι 255 χαρακτήρες. Ακολουθεί ένα απλό πρόγραµµα υπολογισµού του εµβαδού ενός κύκλου. Program Circle_Area; Uses Crt; Const Pi = ; aktina, area : Real; Writeln('Δώσε την ακτίνα του κύκλου : '); Readln(aktina); area := (Pi * (aktina*aktina)); Writeln('Εµβαδόν κύκλου = ', area:8:2); Writeln; { η έκφραση area:8:2 χρησιµοποιεί συνολικά 8 θέσεις για να εµφανίσει την τι- µή της µεταβλητής area και 2 θέσεις για τα δεκαδικά } 4

5 Program Concatenation; Uses Crt; Str1, Str2, Str3 : String[20]; { ορίζει τρεις συµβολοσειρές µεγέθους 20 χαρακτήρων } Str1 := 'Αντωνιάδης'; Str2 := 'Αντώνιος'; Str3 := Str1+Str2; { ένωση δύο συµβολοσειρών } Writeln('Str1 + Str2 = ', Str3); Program Ypoloipo; { Το πρόγραµµα αυτό υπολογίζει και τυπώνει το υπόλοιπο της διαίρεσης ενός ακεραίου αριθµού µε το τρία } Uses Crt; x, y : Longint; Writeln('Δώσε έναν ακέραιο αριθµό : '); Readln(x); y := x mod 3; { υπολογισµός του ακεραίου υπολοίπου x/3 } { η παρακάτω εντολή διακλαδίζει τη ροή του προγράµµατος σε τρεις περιπτώσεις, ανάλογα µε την τιµή της µεταβλητής y } Case y of 0 : Writeln('µηδέν'); { y = 0 } 1 : Writeln('ένα'); { y = 1 } 2 : Writeln('δύο') { y = 2 } end; { case } { η παρακάτω εντολή περιµένει µέχρι να πατήσουµε ένα πλήκτρο και είναι χρήσιµο να τοποθετείται στο τέλος του προγράµµατος, ώστε να µην φεύγουµε απότοµα από το πρόγραµµα, αλλά να περιµένει µέχρι να δούµε τα α- ποτελέσµατα και όταν είµαστε έτοιµοι, πατάµε ένα πλήκτρο και το πρόγραµ- µα τελειώνει } 5

6 Program Athroisma; { Το πρόγραµµα αυτό υπολογίζει και εκτυπώνει το άθροισµα κάποιων αριθ- µών, τελειώνει δε όταν το άθροισµά τους ξεπεράσει το } Uses Crt; a, s : Real; s := 0; { απόδοση αρχικής τιµής στη µεταβλητή } Repeat { οι παρακάτω εντολές επαναλαµβάνονται µέχρις ότου } Readln(a); { η µεταβλητή s γίνει µεγαλύτερη από 1000 } s := s+a Until s>1000; Writeln(s); 6

7 Program Foros; { Το πρόγραµµα αυτό υπολογίζει τον φόρο ενός µισθωτού για ένα χρόνο, δίνοντας σαν δεδοµένα το ετήσιο εισόδηµά του και τον αριθµό των παιδιών του. Ο φόρος υπολογίζεται σαν το ένα τρίτο του εισοδήµατος αφού αφαιρέσουµε τις απαλλαγές που είναι η ατοµική έκπτωση καθώς και η έκπτωση για το κάθε παιδί } Uses Crt; Const ekptosh = 500,000; { γενική έκπτωση } ekptosh_boys = 100,000; { έκπτωση για το κάθε παιδί } boys, eisodima, forologiteo, foros : Longint; { χρησιµοποιούµε τύπο δεδοµένων Longint γιατί οι τιµές που θα επεξεργαστούµε είναι µεγαλύτερες από την τιµή που υποστηρίζει ο τύπος δεδοµένων Integer } Writeln('Δώσε το ετήσιο εισόδηµα : '); Readln(eisodima); Writeln('Δώσε τον αριθµό των παιδιών : '); Readln(boys); { υπολογισµός του φορολογητέου } forologiteo := eisodima - ekptosh - boys*ekptosh_boys; foros := forologiteo div 3; { υπολογισµός του 1/3 του φορολογητέου } { στην παρακάτω εντολή Writeln συνδυάζουµε εκτύπωση σταθερών τι- µών και µεταβλητών, όπου οι σταθερές τιµές, δηλ. τα µηνύµατα, είναι πάντα µέσα σε εισαγωγικά και χωρίζονται από τις µεταβλητές µε κόµµατα } Writeln('Για εισόδηµα : ', eisodima, ' το φορολογητέο είναι : ', forologiteo, ' και ο φόρος είναι : ', foros); 7

8 Program CharacterCount; { Το πρόγραµµα αυτό µετράει τα γράµµατα και τα ψηφία που υπάρχουν σε κάποια δεδοµένα που καταχωρούνται από το πληκτρολόγιο και τελειώνει ό- ταν συναντήσει τον χαρακτήρα # } Uses Crt; LetterCount, DigitCount : Integer; Character : Char; { όταν χρησιµοποιούµε µεταβλητές σαν µετρητές, πάντα τις µηδενίζου- µε στην αρχή του προγράµµατος } LetterCount := 0; { µετρητής γραµµάτων } DigitCount := 0; { µετρητής ψηφίων } { οι παρακάτω εντολές επαναλαµβάνονται όσο ο χαρακτήρας που δίνουµε από το πληκτρολόγιο είναι διάφορος του # και όταν δώσουµε τον χαρακτήρα #, βγαίνουµε από τον βρόχο While } While Character <> '#' do Readln(Character); { διάβασµα ενός χαρακτήρα } { αν ο χαρακτήρας είναι µεταξύ των λατινικών Α και Ζ } If ('A' <= Character) and (Character <= 'Z') then LetterCount := LetterCount + 1 { αύξηση του LetterCount } { αλλιώς, αν ο χαρακτήρας είναι ένα από τα ψηφία 0 έως 9 } Else If ('0' <= Character) and (Character <= '9') then DigitCount := DigitCount + 1 { αύξηση του DigitCount } End; { end of while } Writeln('Βρέθηκαν ', LetterCount, ' γράµµατα και ', DigitCount, ' ψηφία'); Writeln; 8

9 Program DEH; { Το πρόγραµµα αυτό υπολογίζει τον λογαριασµό της ΔΕΗ ενός καταναλωτή µε δεδοµένο ότι για τις πρώτες 100 µονάδες η 1 KWh χρεώνεται 15 δρχ., για τις επόµενες 200 µονάδες χρεώνεται 16 δρχ. και από 201 και πάνω µονάδες χρεώνεται 17 δρχ. Ο ΦΠΑ είναι 18%, το ποσό για την ΕΡΤ είναι 5% και το πάγιο είναι δρχ. } Uses Crt; katanalosi, kostos : Real; Writeln('Δώσε την κατανάλωση : '); Readln(katanalosi); If katanalosi < 100 then kostos := katanalosi * 15; If (katanalosi > 100) and (katanalosi < 200) then kostos := 100 * 15 + (katanalosi - 100) * 16; If katanalosi > 200 then kostos := 100 * * 16 + (katanalosi - 200) * 17; kostos := kostos * 1.18; { προστίθεται ο ΦΠΑ } kostos := kostos * ; { προστίθεται η ΕΡΤ και το πάγιο } Writeln('Για τη ΔΕΗ θα πληρώσετε : ', kostos:9:0, ' δρχ.'); Program MAX; { Το πρόγραµµα αυτό βρίσκει τον µεγαλύτερο από τρεις αριθµούς a, b, c. Χρειάζεται να ορίσουµε µια βοηθητική µεταβλητή max, όπου εκεί θα καταχωρούµε προσωρινά τον µεγαλύτερο αριθµό } Uses Crt; a, b, c, max : Real; Writeln('Δώσε τους τρεις αριθµούς : '); Readln(a, b, c); max := a; If b > max then max := b; If c > max then max := c; Writeln('Ο µεγαλύτερος αριθµός είναι ο : ', max); 9

10 Program Monos_Zygos; {Το πρόγραµµα αυτό βρίσκει αν ένας ακέραιος αριθµός είναι µονός ή ζυγός} Uses Crt; k, p, y : Longint; Writeln('Δώσε έναν ακέραιο αριθµό : '); Readln(k); p := k div 2; { εύρεση του πηλίκου } y := k mod 2; { εύρεση του υπολοίπου } If y = 0 then Writeln('Ο αριθµός είναι ζυγός') Else Writeln('Ο αριθµός είναι µονός'); Program Misthodosia; { Το πρόγραµµα αυτό υπολογίζει τον µισθό ενός εργάτη όταν δίνονται οι µέρες εργασίας του, οι υπερωρίες του σε ώρες και είναι γνωστό ότι οι κρατήσεις είναι το 20% των αποδοχών του, οι υπερωρίες του πληρώνονται µε το 20% του ηµεροµισθίου και ο φόρος είναι 5% } Uses Crt; hmerom, meres_erg, yperories, mikta, krathseis, foros, kathara : Real; Writlen('Δώσε το ηµεροµίσθιο : '); Readln(hmerom); Writeln('Δώσε τις µέρες εργασίας : '); Readln (meres_erg); Writeln('Δώσε τις υπερωρίες : '); Readln(yperories); { υπολογισµός µικτών αποδοχών } mikta := hmerom * meres_erg + yperories * hmerom * 0.2; krathseis := 0.2 * mikta; { υπολογισµός κρατήσεων } foros := 0.05 * (mikta - krathseis); { υπολογισµός φόρου } kathara := mikta - krathseis - foros; { υπολογισµός καθαρών } Writeln('Οι µικτές αποδοχές είναι : ', mikta, ' οι καθαρές αποδοχές είναι : ', kathara, ' και οι κρατήσεις είναι : ',krathseis); 10

11 Program Antistrofh; { Το πρόγραµµα αυτό διαβάζει έναν διψήφιο ακέραιο αριθµό και υπολογίζει και εκτυπώνει τον ακέραιο που προκύπτει από την αντιστροφή των ψηφίων του } Uses Crt; x, p, y, x1 : Byte; Writeln('Δώσε έναν διψήφιο ακέραιο αριθµό : '); Readln(x); p := x div 10; { εύρεση του πηλίκου } y := x mod 10; { εύρεση του υπολοίπου } x1 := y * 10 + p; { σχηµατισµός του αντίστροφου αριθµού } Writeln('Ο νέος αριθµός είναι : ', x1); Program Talhro; { Το πρόγραµµα αυτό στρογγυλοποιεί έναν µισθό στο τάληρο, δηλ. αν λήγει σε 0, 1 και 2 τον κάνει να λήγει σε 0, αν λήγει σε 3, 4, 5, 6 ή 7 τον κάνει να λήγει σε 5 και αν λήγει σε 8 ή 9 τον κάνει να λήγει σε 0 αλλά αυξηµένο κατά 10 } Uses Crt; m, p, y : Longint; Writeln('Δώσε τον µισθό : '); Readln(m); p := m div 10; { εύρεση του πηλίκου } y := m mod 10; { εύρεση του υπολοίπου } { το y είναι στην ουσία το τελευταίο ψηφίο του µισθού και το p είναι όλα τα υπόλοιπα ψηφία του µισθού χωρίς το y, δηλ. αν ο µισθός είναι , το y θα είναι ίσο µε 7 και το p θα είναι ίσο µε } If y <= 2 then m := p * 10; { * 10 = } If (y > 2) and (y < 8) then m := p * ; { * = } If y >= 8 then m := p * ; { * = } Writeln('O στρογγυλοποιηµένος µισθός είναι : ', m); 11

12 Program Praxis; { Το πρόγραµµα αυτό διαβάζει δύο αριθµούς και ένα από τα τέσσερα σύµβολα της αριθµητικής (+ - * /) και κάνει την αντίστοιχη πράξη στους αριθµούς } Uses Crt; a, b, r : Real; z : Char; Writeln('Δώσε τους δύο αριθµούς : '); Readln(a, b); Writeln('Δώσε το σύµβολο της πράξης : '); Readln(z); Case z of '+' : r := a + b; '-' : r := a - b; '*' : r := a * b; '/' : r := a / b; End; { case } Writeln('Το αποτέλεσµα είναι : ', r); Το παρακάτω πρόγραµµα περιέχει ένα παράδειγµα χρήσης της εντολής While : Program Twhile; metritis : Integer; metritis := 0; { µηδενισµός του µετρητή } While metritis < 6 do Writeln('Μετρητής = ', metritis); metritis := metritis + 2; { αύξηση του µετρητή κατά 2 } End; { end of while } Ο βρόχος While επαναλαµβάνεται όσο ή µεταβλητή metritis είναι µικρότερη του 6, δηλ. η επανάληψη θα συµβεί για τις τιµές της µεταβλητής 0, 2 και 4. Μόλις η µεταβλητή γίνει ίση µε 6, θα βγούµε από τον βρόχο. 12

13 Program Trepeat; metritis : Integer; metritis := 0; Repeat Writeln('Μετρητής = ', metritis); metritis := metritis + 2; Until (metritis > 4); Η εντολή Repeat εκτελεί το κύριο σώµα του βρόχου τουλάχιστον µία φορά, ακόµα και αν δεν ισχύει η συνθήκη επανάληψης του βρόχου, καθώς η συνθήκη αυτή ελέγχεται στο τέλος του βρόχου και αφού έχουν εκτελεστεί οι εντολές του σώµατος του βρόχου. Το παρακάτω πρόγραµµα περιέχει έναν απλό βρόχο FOR : Program Tfor; metritis : Integer; For metritis := 0 to 4 do Writeln('Μετρητής = ', metritis); Το πρόγραµµα µετράει από το 0 µέχρι το 4 και αυξάνεται κάθε φορά κατά ένα, µε αποτέλεσµα η µεταβλητή metritis να παίρνει διαδοχικά τις τιµές 0, 1, 2, 3 και 4. Αν αντικατασταθεί το Το µε το Downto, τότε ο βρόχος θα µετράει από το 4 µέχρι το 0, ελαττώνοντας τον µετρητή κατά ένα κάθε φορά. Program Ektyposi_Akeraion; { Το πρόγραµµα αυτό εκτυπώνει τους ακέραιους από το 1 µέχρι το 20 } Uses Crt; i : Byte; For i := 1 to 20 do Writeln(i); { ο παραπάνω βρόχος θα εκτελεστεί 20 φορές και θα τυπώσει τους αριθµούς από το 1 µέχρι και το 20 } 13

14 Program Sum_Product; { Το πρόγραµµα αυτό υπολογίζει το άθροισµα και το γινόµενο Ν αριθµών } Uses Crt; i, N : Byte; x, sum, product : Real; sum := 0; { µηδενίζουµε τον αθροιστή } product := 1; { δίνουµε την τιµή 1 στο γινόµενο } Writeln('Δώσε το πλήθος των αριθµών : '); Readln(N); For i := 1 to N do Readln(x); { διαβάζουµε έναν αριθµό } sum := sum + x; { τον προσθέτουµε στον αθροιστή } product := product * x; { τον πολλαπλασιάζουµε µε τη µεταβλητή product } End; { end of for } Writeln('Το άθροισµα των αριθµών είναι : ', sum, ' και το γινόµενό τους είναι : ', product); Program Max; { Το πρόγραµµα αυτό βρίσκει τον µεγαλύτερο από Ν αριθµούς } Uses Crt; i, N : Byte; x, max : Real; Writeln('Δώσε το πλήθος των αριθµών : '); Readln(N); Readln(x); { διαβάζουµε ανεξάρτητα τον 1 ο αριθµό και } max := x; { τον θεωρούµε προσωρινά σαν µέγιστο } For i := 1 to N-1 do { εκτελούµε τον βρόχο Ν-1 φορές } Readln(x); { διαβάζουµε τον επόµενο αριθµό } { τον συγκρίνουµε µε τον max και αν είναι µεγαλύτερος, max γίνεται ο αριθµός αυτός } If x > max then max := x; End; { end of for } Writeln('Ο µεγαλύτερος αριθµός είναι ο : ', max); 14

15 Program Pos_Zero_Neg; { Το πρόγραµµα αυτό βρίσκει πόσοι από Ν αριθµούς είναι θετικοί, πόσοι αρνητικοί και πόσοι µηδέν } Uses Crt; i, N, pos, zer, neg : Byte; x : Real; Writeln('Δώσε το πλήθος των αριθµών : '); Readln(N); pos := 0; { µηδενίζουµε τον µετρητή των θετικών αριθµών } zer := 0; { µηδενίζουµε τον µετρητή των µηδενικών αριθµών } neg := 0; { µηδενίζουµε τον µετρητή των αρνητικών αριθµών } For i := 1 to N do Readln(x); { διαβάζουµε έναν αριθµό } { αν είναι θετικός, αυξάνουµε τη µεταβλητή pos κατά ένα } If x > 0 then pos := pos + 1; { αν είναι µηδενικός, αυξάνουµε τη µεταβλητή zer κατά ένα } If x = 0 then zer := zer + 1; { αν είναι αρνητικός, αυξάνουµε τη µεταβλητή neg κατά ένα } If x < 0 then neg := neg + 1; End; { end of for } Writeln('Οι θετικοί αριθµοί είναι : ', pos); Writeln('Οι µηδενικοί αριθµοί είναι : ', zer); Writeln('Οι αρνητικοί αριθµοί είναι : ', neg); 15

16 Program Mathites; { Το πρόγραµµα αυτό υπολογίζει το σύνολο των µαθητών και τον µέσο όρο βαθµολογίας για κάθε τάξη, για τρεις τάξεις A, B, C και για Ν µαθητές } Uses Crt; i, N, b, sa, sb, sc, mo_a, mo_b, mo_c : Byte; sa_b, sb_b, sc_b : Integer; onoma : String; taxi : Char; Writeln('Δώσε το πλήθος των µαθητών : '); Readln(N); sa := 0; { µετρητής µαθητών Α τάξης } sb := 0; { µετρητής µαθητών Β τάξης } sc := 0; { µετρητής µαθητών C τάξης } sa_b : = 0; { αθροιστής βαθµών µαθητών Α τάξης } sb_b := 0; { αθροιστής βαθµών µαθητών Β τάξης } sc_b := 0; { αθροιστής βαθµών µαθητών C τάξης } For i := 1 to N do Writeln('Δώσε όνοµα, βαθµό και τάξη µαθητή : '); Readln(onoma, b, taxi); If taxi = 'A' then { ο µαθητής είναι στην Α τάξη } sa := sa + 1; sa_b := sa_b +b; End; If taxi = 'B' then { ο µαθητής είναι στην Β τάξη } sb := sb + 1; sb_b := sb_b +b; End; If taxi = 'C' then { ο µαθητής είναι στην C τάξη } sc := sc + 1; sc_b := sc_b +b; End; End; { end of for } mo_a := sa_b/sa; { µέσος όρος βαθµών µαθητών Α τάξης } mo_b := sb_b/sb; { µέσος όρος βαθµών µαθητών Β τάξης } mo_c := sc_b/sc; { µέσος όρος βαθµών µαθητών C τάξης } Writeln('Το πλήθος των µαθητών και οι µέσοι όροι βαθµολογίας τους ανά τάξη είναι οι εξής : ', sa, mo_a, sb, mo_b, sc, mo_c); 16

17 Program MultiAdd; { Το πρόγραµµα αυτό µάς δείχνει πώς µπορούµε να καταχωρήσουµε Ν ονό- µατα µε τη χρήση της εντολής Readkey } Οnoma, Eponymo, Address : String; Apanthsh : Char; Βegin Repeat { καθαρίζει η οθόνη } GotoXY(01,01);Write('Όνοµα :'); GotoXY(01,02);Write('Επώνυµο :'); GotoXY(01,03);Write('Διεύθυνση:'); GotoXY(12,01);ReadLn(Onoma); GotoXY(12,02);ReadLn(Eponymo); GotoXY(12,03);ReadLn(Address); Apanthsh := Readkey; { διαβάζει έναν χαρακτήρα } { αν η απάντηση είναι [Ο]χι τότε τελειώνει το πρόγραµµα } { πρέπει να ελέγξουµε και τα αγγλικά και τα ελληνικά Ο, } { µικρά και κεφαλαία } Until (Apanthsh='O') or (Apanthsh='o') or (Apanthsh='o') or (Apanthsh='O'); Repeat Until KeyPressed; { µε την εντολή αυτή, το πρόγραµµα περιµένει µέχρι να πατήσουµε ένα οποιοδήποτε πλήκτρο για να τερµατίσει } Program ReadKey_Test; { Το πρόγραµµα αυτό χρησιµοποιεί την εντολή ReadKey και µας δίνει ένα α- ποτέλεσµα τύπου char και ειδικότερα µάς επιστρέφει το πλήκτρο που πατήσαµε και τη µορφή του σε κεφαλαίο γράµµα } Key : Char; While Key <> 'T' Do Key := ReadKey; Writeln('Πάτησες το πλήκτρο ', Key, ' ', UpCase(Key)); End { While } Repeat Until KeyPressed; 17

18 Program ReadKey_Test2; { Το πρόγραµµα αυτό χρησιµοποιεί την εντολή ReadKey και είναι παρόµοιο µε το προηγούµενο, µόνο που µας δίνει σαν αποτέλεσµα και τον ascii κωδικό του πλήκτρου και τελειώνει όταν πατηθεί το πλήκτρο Esc, που έχει ascii κωδικό 27 } Key : Char; Repeat Key := ReadKey; Writeln('Πάτησες το πλήκτρο ', Key, ' µε κωδικό : ', Ord(Key)); Until Ord(Key)=27; Repeat Until KeyPressed; Program Strs; { Το πρόγραµµα αυτό επεξεργάζεται µε διάφορες συναρτήσεις της Pascal ένα string χαρακτήρων και µας δείχνει µε ποιον τρόπο µπορούµε να βρούµε το µήκος του string, να αποµονώσουµε ένα-ένα τα γράµµατα του string και να κάνουµε και άλλες ενδιαφέρουσες εργασίες πάνω σ' αυτό } Symbola : String; ClrScr; Write('Δώσε Μερικά Σύµβολα : ');Read(Symbola); WriteLn; { αφήνει µια κενή γραµµή } WriteLn('Εντολή Επεξήγηση Αποτέλεσµα'); WriteLn( '=============================='); WriteLn('Symbola - Τα σύµβολα που έδωσες είναι : ', Symbola); WriteLn('Length - Το µήκος των συµβόλων είναι :', Length(Symbola); WriteLn('Symbola[1] - Το 1 ο σύµβολο είναι το : ', Symbola[1]); WriteLn('Ord - Ο κωδικός ascii του 1 ου συµβόλου : ', Ord(Symbola[1]); WriteLn('Succ - Μετά το 1 ο σύµβολο είναι : ', Symbola[succ(1)]); WriteLn('Pred - Πριν από το 4 ο σύµβολο είναι :, Symbola[pred(4)]); WriteLn; { αφήνει µια κενή γραµµή } Repeat Until KeyPressed; 18

19 Program Antistrofh; { Το πρόγραµµα αυτό διαβάζει έναν τριψήφιο ακέραιο αριθµό και υπολογίζει και εκτυπώνει τον ακέραιο που προκύπτει από την αντιστροφή των ψηφίων του } x, x1 : Integer; p1, p2, y1, y2 : Byte; Repeat Writeln('Δώσε έναν τριψήφιο ακέραιο αριθµό : '); Readln (x); Until (x>=100) and (x<=999); { θα βγούµε από τον βρόχο µόνο όταν ο αριθµός είναι τριψήφιος } p1 := x div 100; { το p1 περιέχει το πρώτο ψηφίο του αριθµού } y1 := x mod 100; { το y1 είναι τα δύο τελευταία ψηφία } p2 := y1 div 10; { το p2 είναι το µεσαίο ψηφίο του αριθµού } y2 := y1 mod 10; { το y2 είναι το τελευταίο ψηφίο του αριθµού } Εnd. { η επόµενη εντολή σχηµατίζει τον αριθµό που αποτελείται από τα } { αντίστροφα ψηφία του δοθέντος αριθµού } x1 := y2*100 + p2*10 + p1; Writeln('Ο αριθµός από την αντιστροφή είναι ο : ', x1); Repeat Until KeyPressed; Program mhden_3; { Σ αυτό το πρόγραµµα δίνεται ένας δεκαδικός αριθµός Κ και κρατάµε µόνο τα 2 πρώτα δεκαδικά του ψηφία - για να λύσουµε αυτό το πρόβληµα, πρώτα πολλαπλασιάζουµε αυτόν τον αριθµό µε το 100 και στον προκύπτοντα αριθµό προσθέτουµε το 0.5 για να στρογγυλοποιηθεί, αποκόπτουµε τα δεκαδικά του ψηφία για να τον κάνουµε ακέραιο και µετά τον διαιρούµε µε το 100 } k, n : Real; p : Longint; Writeln('Δώσε τον αριθµό : '); Readln(k); n := k*100; { πολλαπλασιάζουµε µε 100 } p := int(n+0.5); { προσθέτουµε το 0.5 και τον κάνουµε ακέραιο } n := p/100; {διαιρούµε µε 100 για να αποκτήσει 2 δεκαδικά } Writeln('Ο νέος αριθµός είναι τώρα ο : ', n); 19

20 Program Kerma; { Στο πρόγραµµα αυτό δίνεται ο µισθός ενός υπαλλήλου Μ και του κάνουµε κερµατική ανάλυση, δηλ. βρίσκουµε από πόσα χαρτονοµίσµατα των 5.000, 1.000, 500, 100, 50, 20, 10 και 5 δραχµών αποτελείται. Υποθέτουµε βέβαια ότι ο µισθός είναι στρογγυλοποιηµένος στο τάλιρο, αν δεν είναι, τότε υπάρχει το γνωστό µας πρόγραµµα που τον στρογγυλοποιεί } m : Longint; p5000, p1000, p500, 5100, p50, p20, p10, p5 : Byte; y : Integer; Writeln('Δώσε τον µισθό : '); Readln(m); p5000 := m div 5000; { πλήθος των πεντοχίλιαρων } y := m mod 5000; { το y χρησιµοποιείται στη νέα διαίρεση } p1000 := y div 1000; { πλήθος των χιλιάρικων } y := y mod 1000; p500 := y div 500; { πλήθος των πεντακοσάρικων } y := y mod 500; p100 := y div 100; { πλήθος των εκατοστάρικων } y := y mod 100; p50 := y div 50; { πλήθος των πενηντάρικων } y := y mod 50; p20 := y div 20; { πλήθος των εικοσάρικων } y := y mod 20; p10 := y div 10; { πλήθος των δεκάρικων } y := y mod 10; p5 := y div 5; { πλήθος των τάλιρων } Writeln('Ο µισθός αποτελείται από ', p5000, ' πεντοχίλιαρα ', p1000, ' χιλιάρικα ', p500, ' πεντακοσάρικα ', p100, ' εκατοστάρικα ', p50, ' πενηντάρικα ', p20,' εικοσάρικα ', p10,' δεκάρικα και ', p5, ' τάλιρα'); Εnd. 20

21 Program mhden_1; { Σ αυτό το πρόγραµµα δίνεται ένας ακέραιος αριθµός Κ και µετατρέπουµε τα 2 τελευταία ψηφία του σε µηδενικά, αφού τον στρογγυλοποιήσουµε στο πλησιέστερο µηδενικό - εδώ θα δούµε τον πρώτο τρόπο επίλυσης του προβλή- µατος αυτού µε τη χρήση του πηλίκου και του υπολοίπου της διαίρεσης του αριθµού µε το 100 } k, p, n : Longint; y : Byte; Βegin Writeln('Δώσε τον αριθµό : '); Readln(k); p := k div 100; { πηλίκο της διαίρεσης µε το 100 } y := k mod 100; { υπόλοιπο της διαίρεσης µε το 100 } If y < 50 { αν το υπόλοιπο είναι µικρότερο από 50 } Then n := p*100; If y >= 50 { αν το υπόλοιπο είναι µεγαλύτερο ή ίσο από 50 } Then n := p* ; Writeln('Ο νέος αριθµός είναι τώρα ο : ', n); Program mhden_2; { Ας δούµε τώρα και τον δεύτερο τρόπο επίλυσης του προβλήµατος αυτού, όπου διαιρούµε πρώτα τον αριθµό µε το 100, τον προκύπτοντα αριθµό τύπου real, τον στρογγυλοποιούµε µε το 0.5 κάνοντάς τον ακέραιο και µετά τον πολλαπλασιάζουµε πάλι µε το 100 } k, n : Longint; p : Real; Writeln('Δώσε τον αριθµό : '); Readln(k); p := k/100; { δεκαδική διαίρεση µε το 100 } n := int(p+0.5); { στρογγυλοποίηση του αριθµού } n := n*100; { πολλαπλασιασµός µε το 100 } Writeln('Ο νέος αριθµός είναι τώρα ο : ', n); 21

22 Program ypallhloi; { Σ αυτό το πρόγραµµα, για Ν υπαλλήλους έχουµε τα εξής στοιχεία : ονοµατεπώνυµο, γραµµατικές γνώσεις (1=Δηµοτικό, 2=Γυµνάσιο, 3=Πτυχιούχος) και ηλικία - ζητάµε να βρεθεί η µικρότερη ηλικία από κάθε κατηγορία γραµ- µατικών γνώσεων } age, min1, min2, min3, N, i : Byte; onoma : String; category : Char; Writeln('Δώσε το πλήθος των υπαλλήλων : '); Readln(N); min1 := 100; { η µικρότερη ηλικία για υπαλλήλους Δηµοτικού } min2 := 100; { η µικρότερη ηλικία για υπαλλήλους Γυµνασίου } min3 := 100; { η µικρότερη ηλικία για υπαλλήλους Πτυχιούχους } For i := 1 To N Do Writeln('Δώσε όνοµα, κατηγορία και ηλικία : '); Readln(onoma); Readln(category); Readln(age); Case category of '1' : If age < min1 then min1 := age; '2' : If age < min2 then min2 := age; '3' : If age < min3 then min3 := age; end; { Case } End; { For } Writeln('Η µικρότερη ηλικία από την 1 η κατηγορία είναι : ', min1); Writeln('Η µικρότερη ηλικία από την 2 η κατηγορία είναι : ', min2); Writeln('Η µικρότερη ηλικία από την 3 η κατηγορία είναι : ', min3); 22

23 Program fylo; { Σ αυτό το πρόγραµµα δίνονται τα παρακάτω στοιχεία για Ν ανθρώπους : όνοµα και κωδικός φύλου (1=γυναίκα, 2=άνδρας) - ζητάµε να βρεθούν πόσες είναι οι γυναίκες και πόσοι οι άνδρες } onoma : String; fylo : Char; sum_a, sum_g, N, i : Byte; Writeln('Δώσε το πλήθος των ανθρώπων : '); Readln(N); sum_a := 0; { µετρητής ανδρών } sum_g := 0; { µετρητής γυναικών } For i := 1 To N Do Writeln('Δώσε όνοµα & φύλο : ');Readln(onoma);Readln(fylo); Case fylo of '1' : sum_g := sum_g + 1; '2' : sum_a := sum_a + 1; End; { Case } End; { For } Writeln('Οι γυναίκες είναι : ', sum_g); Writeln('Οι άνδρες είναι : ', sum_a); Program N_arithmoi; { Να διαβαστούν Ν αριθµοί και να βρεθεί το άθροισµά τους, το γινόµενό τους και ο µέσος όρος τους } N, i : Byte; sum, product, m_o, number : Longint; Writeln('Δώσε το πλήθος των αριθµών : '); Readln(N); sum := 0; { αθροιστής } product := 1; { γινόµενο } For i := 1 To N Do Writeln('Δώσε έναν αριθµό : '); Readln(number); sum : = sum + number; product := product * number; End; { For } m_o := sum/n; { υπολογισµός µέσου όρου } Writeln('Το άθροισµά τους είναι : ', sum); Writeln('Το γινόµενό τους είναι : ', product); Writeln('Ο µέσος όρος τους είναι : ', m_o:10:2); 23

24 Program Eidh; { Το πρόγραµµα αυτό διαβάζει για Ν είδη µιας αποθήκης τα στοιχεία ονοµασία και τιµή µονάδας - βρίσκει και εκτυπώνει το ακριβότερο είδος, αφού πρώτα βάλει τις ονοµασίες και τις τιµές των ειδών σ έναν πίνακα } Bar i, N : Byte; max : Longint; onoma_max : String[30]; onomasia : array[1..50] of String[30]; timh : array[1..50] of Longint; Writeln('Δώσε το πλήθος των ειδών : '); Readln(N); { καταχωρούµε την ονοµασία και την τιµή του κάθε είδους } { σε δύο ξεχωριστούς πίνακες } For i:=1 to N Do Writeln('Δώσε ονοµασία είδους : '); Readln(onomasia[i]); Writeln('Δώσε τιµή είδους : '); Readln(timh[i]); End; { For } { θέτουµε την τιµή του πρώτου είδους σαν τη µεγαλύτερη και } { την συγκρίνουµε µ όλες τις υπόλοιπες } max := timh[1]; onoma_max := onomasia[1]; For i:=2 To N Do If timh[i] > max Then max := timh[i]; onoma_max := onomasia[i]; End;{ If } End;{ For } Writeln('Το είδος µε την ακριβότερη τιµή είναι το : ',onoma_max,' και κοστίζει ', max, ' δρχ.'); 24

25 Program Thleorash; { Γίνεται µια έρευνα για τις ώρες που παρακολουθεί τηλεόραση το κοινό και τα αποτελέσµατα καταχωρούνται στις εξής τρεις κατηγορίες : α. υψηλή (περισσότερες από 20 ώρες την εβδοµάδα) β. µεσαία (από 8 έως 20 ώρες) γ. χαµηλή (λιγότερες από 8 ώρες) ζητείται να διαβαστούν οι ώρες για 30 άτοµα και να τυπωθεί το πλήθος της κάθε κατηγορίας } i, hours, category_1, category_2, caterogy_3 : Byte; category_1 := 0; { µηδενίζουµε τους τρεις µετρητές } category_2 := 0; caterogy_3 := 0; For i:=1 to 30 Do Writeln('Δώσε τις ώρες : '); Readln(hours); Case hours of 0..7 : category_1 := category_1 + 1; : category_2 := category_2 + 1; : category_3 := category_3 + 1; End;{ Case } End; { For } Writeln('Οι τρεις κατηγορίες έχουν τις εξής τιµές : ', category_1, category_2, category_3); Program Athroisma_Pinaka; { Να διαβαστούν τα ακέραια στοιχεία ενός πίνακα πλήθους Ν και να βρεθεί το άθροισµά τους } i, N : Byte; sum : Longint; pinakas : Array[1..100] of Integer; Writeln('Δώσε το πλήθος των αριθµών : '); Readln(N); sum := 0; { µηδενίζουµε τον αθροιστή } For i:=1 To N Do Writeln('Δώσε αριθµό : '); Readln(pinakas[i]); End; { For } For i:=1 To N Do sum := sum + pinakas[i]; Writeln('Το άθροισµα των αριθµών είναι : ', sum); 25

26 Program Athlites; { Το πρόγραµµα αυτό καταγράφει τις προσπάθειες 10 αθλητών στο άλµα σε µήκος και για κάθε αθλητή καταχωρούµε το όνοµα και την επίδοσή του σε 6 προσπάθειες - το πρόγραµµα βρίσκει τον νικητή του αγωνίσµατος και την ε- πίδοσή του καθώς και την καλύτερη επίδοση του κάθε αθλητή - χρησιµοποιούµε έναν πίνακα δύο διαστάσεων όπου καταχωρούµε τις επιδόσεις των αθλητών } i, j : Byte; max_oliko : Real; { καλύτερη επίδοση όλων των αθλητών } max : Real; { καλύτερη επίδοση ενός αθλητή } onoma_max : String[30]; { όνοµα αθλητή µε την καλύτερη επίδοση } onoma : array[1..10] of String[30]; { πίνακας ονοµάτων αθλητών } epidoseis : Array[1..10, 1..6] of Real; { πίνακας επιδόσεων αθλητών } max_oliko := 0.0; { µηδενίζουµε την καλύτερη επίδοση όλων των αθλητών } For i:=1 to 10 Do Writeln('Δώσε το όνοµα του ', i, 'ου αθλητή : '); Readln(onoma[i]); max := 0.0; { µηδενίζουµε την καλύτερη επίδοση του αθλητή } For j:=1 to 6 Do Writeln('Δώσε την ', j, 'η προσπάθεια του αθλητή : '); Readln(epidoseis[i, j]); If epidoseis[i, j] > max Then max := epidoseis[i, j]; { καλύτερη επίδοση αθλητή } If epidoseis[i, j] > max_oliko Then { καλύτερη επίδοση όλων των αθλητών } max_oliko := epidoseis[i, j]; onoma_max := onoma[i]; End;{ If } End; { For-j } Writeln('Η καλύτερη επίδοση του αθλητή είναι : ',max); End;{ For-i } Writeln('Η καλύτερη επίδοση όλων των αθλητών είναι : ', max_oliko, ' και την έχει ο αθλητής : ', onoma_max); 26

27 Program Mathites; { Δίνονται τα εξής στοιχεία για 20 µαθητές µιας τάξης : α. όνοµα β. κωδικός φύλου (1=αγόρι, 2=κορίτσι) γ. βαθµός να βρεθεί ποιο αγόρι έχει τον µικρότερο βαθµό στην τάξη και ποιο κορίτσι τον µεγαλύτερο } i : Byte; max_bathmos, min_bathmos : Byte; onoma_max, onoma_min : String[30]; onoma : array[1..20] of String[30]; fylo, bathmos : Array[1..20] of Byte; { πρώτα διαβάζουµε όλα τα στοιχεία των µαθητών σε τρεις πίνακες } For i:=1 To 20 Do Writeln('Δώσε όνοµα µαθητή : '); Readln(onoma[i]); Writeln('Δώσε φύλο µαθητή : '); Readln(fylo[i]); Writeln('Δώσε βαθµό µαθητή : '); Readln(bathmos[i]); End; { For } max_bathmos := 0; { αρχική τιµή για τον µεγαλύτερο βαθµό } min_bathmos := 21; { αρχική τιµή για τον µικρότερο βαθµό } For i:=1 To 20 Do Case fylo[i] of 1 : If bathmos[i] < min_bathmos Then min_bathmos := bathmos[i]; onoma_min := onomasia[i]; End;{ If } 2 : If bathmos[i] > max_bathmos Then max_bathmos := bathmos[i]; onoma_max := onomasia[i]; End;{ If } End;{ Case } Writeln('Η µαθήτρια µε τον µεγαλύτερο βαθµό είναι η : ', max_onoma, ' και έχει βαθµό : ', max_bathmos); Writeln('Ο µαθητής µε τον µικρότερο βαθµό είναι ο : ', min_onoma, ' και έχει βαθµό : ', min_bathmos); 27

28 Program Max_Pinaka; { Να διαβαστούν τα ακέραια στοιχεία ενός πίνακα πλήθους Ν και να βρεθεί ποιο είναι το µεγαλύτερο στοιχείο και σε ποια θέση } i, N, thesi : Byte; sum : Longint; max : Integer; pinakas : Array[1..100] of Integer; Writeln('Δώσε το πλήθος των αριθµών : '); Readln(N); { διαβάζουµε τα στοιχεία του πίνακα } For i:=1 To N Do Writeln('Δώσε έναν αριθµό : '); Readln(pinakas[i]); End; { For } { αρχικά θέτουµε σαν µεγαλύτερο το πρώτο στοιχείο του πίνακα } { και µετά συγκρίνουµε όλα τα στοιχεία του πίνακα } max := pinakas[1]; thesi := 1; For i:=2 To N Do If pinakas[i] > max Then max := pinakas[i]; thesi := i; End;{ If } Writeln('το µεγαλύτερο στοιχείο του πίνακα είναι το : ', max,' και βρίσκεται στη θέση : ', thesi); 28

29 Program Bathmoi_Mathiton; { Να διαβαστούν τα ονόµατα και οι βαθµοί Ν µαθητών σε δύο πίνακες και να βρεθεί ο καλύτερος µαθητής και ο βαθµός του } i, N : Byte; max : Byte; max_onoma : String[30]; bathmos : Array[1..100] of Byte; onoma : Array[1..100] of String[30]; Writeln('Δώσε το πλήθος των µαθητών : '); Readln(N); { διαβάζουµε τα ονόµατα και τους βαθµούς των µαθητών σε } { δύο πίνακες } For i:=1 To N Do Writeln('Δώσε όνοµα µαθητή : '); Readln(onoma[i]); Writeln('Δώσε βαθµό µαθητή : '); Readln(bathmos[i]); End; { For } { αρχικά θέτουµε σαν µεγαλύτερο βαθµό τον βαθµό του } { πρώτου µαθητή και συγκρίνουµε όλα τα υπόλοιπα στοιχεία } max := bathmos[1]; max_onoma := onoma[1]; For i:=2 to N Do If bathmos[i] > max Then max := bathmos[i]; max_onoma := onoma[i]; End;{ If } Writeln('Ο καλύτερος µαθητής είναι ο : ', max_onoma,' και είναι τον βαθµό : ', max); 29

30 Program Men_Women; { Δίνονται τα εξής στοιχεία για Ν ανθρώπους : όνοµα, κωδικός φύλου, (1 = γυναίκα, 2 = άνδρας), ύψος, βάρος και ηλικία - ζητείται να βρεθεί ο µέσος όρος ηλικίας των γυναικών που έχουν βάρος µεγαλύτερο των 60 κιλών και πόσοι άνδρες έχουν ύψος µεγαλύτερο του 1.80, βάρος µικρότερο των 85 κιλών και ηλικία µικρότερη των 40 } i, N, g60, i180, i85, i40, mo_gyn, fylo, ypsos, baros, age : Byte; sum_age : Integer; onoma : String[30]; Writeln('Δώσε το πλήθος των ατόµων : '); Readln(Ν); sum_age:=0; g60:=0; i180:=0; i85:=0; i40:=0; { εδώ γίνεται η καταχώρηση και η επεξεργασία των στοιχείων } For i:=1 To N Do Writeln('Δώσε όνοµα : '); Readln(onoma); Repeat Writeln('Δώσε φύλο : '); Readln(fylo); Until fylo in [1..2]; Writeln('Δώσε ύψος : '); Readln(ypsos); Writeln('Δώσε βάρος : '); Readln(baros); Writeln('Δώσε ηλικία : '); Readln(age); { επιλογή ανάλογα µε το φύλο } Case fylo of 1 : If baros>60 Then sum_age := sum_age + age; g60 := g60 + 1; End; { If - Case-1 } 2 : If ypsos > 180 Then i180 := i180 +1; If baros < 85 Then i85 := i85 + 1; If age < 40 Then i40 := i40 + 1; End; { Case-2 } End; { Case } End; { For } { εδώ γίνονται οι εκτυπώσεις } Writeln('Ο µέσος όρος ηλικίας των γυναικών µε βάρος µεγαλύτερο των 60 κιλών είναι : ', Round(sum_age/g60)); Writeln(i180, ' άνδρες έχουν ύψος µεγαλύτερο του 1.80 ', i85,' έχουν βάρος κάτω από 85 κιλά και ',i40,' έχουν ηλικία µικρότερη των 40); 30

31 Program Taxeis; { Να διαβαστούν τα στοιχεία Ν µαθητών (όνοµα, βαθµός και τάξη) από τρεις τάξεις (Α, Β και C) και να εκτυπωθούν ανά τάξη ξεχωριστά } a_onoma : array[1..100] of String; { πίνακας ονοµ.µαθητών Α τάξης } b_onoma : array[1..100] of String; { πίνακας ονοµ.µαθητών Β τάξης } c_onoma : array[1..100] of String; { πίνακας ονοµ.µαθητών C τάξης } a_bathmos : array[1..100] of Byte; { πίνακας βαθµ.µαθητών Α τάξης } b_bathmos : array[1..100] of Byte; { πίνακας βαθµ.µαθητών B τάξης } c_bathmos : array[1..100] of Byte; { πίνακας βαθµ.µαθητών C τάξης } onoma : String; i, N, ia, ib, ic, bathmos : Byte; taxi : Char; Writeln('Δώσε το πλήθος Ν των µαθητών : '); Readln(N); ia := 0; { µηδενισµός των µετρητών των µαθητών } ib := 0; { για τις τρεις τάξεις } ic := 0; { εδώ γίνεται η καταχώρηση και η επεξεργασία των στοιχείων } For i:=1 To N Do Writeln('Δώσε όνοµα µαθητή : '); Readln(onoma); Writeln('Δώσε βαθµό µαθητή : '); Readln(bathmos); Repeat Writeln('Δώσε τάξη µαθητή : '); Readln(taxi) Until taxi In ['a', 'b', 'c']; { δέχεται µόνο τιµές a, b ή c } { επιλογή ανάλογα µε την τάξη } Case taxi of 'a' : ia := ia+1; { αύξηση µετρητή τάξης } a_onoma[ia] := onoma; a_bathmos[ia] := bathmos; End; { Case-a } 'b' : ib := ib+1; b_onoma[ib] := onoma; b_bathmos[ib] := bathmos; End; { Case-b } 31

32 'c' : begin ic := ic+1; c_onoma[ic] := onoma; c_bathmos[ic] := bathmos; End;{ Case-c } End; { Case } End; { For } { εκτύπωση των τριών πινάκων των τάξεων A, B και C } Writeln('Τάξη Α :'); For i:=1 To ia Do Writeln(i, '. ', a_onoma[i], ' ', a_bathmos[i]); Writeln('Τάξη B :'); For i:=1 To ib Do writeln(i, '. ', b_onoma[i], ' ', b_bathmos[i]); Writeln('Τάξη C :'); For i:=1 To ic Do Writeln(i, '. ', c_onoma[i], ' ', c_bathmos[i]); 32

33 Program Molinsi; { Μια εταιρεία µετράει τη µόλυνση της ατµόσφαιρας και καταχωρεί τις ενδείξεις της σε ακέραιες τιµές από το 0 έως το 100 µε µία µέτρηση για κάθε µέρα - να γίνει πρόγραµµα που να καταχωρεί τις τιµές της ατµοσφαιρικής µόλυνσης για 20 µέρες και να βρίσκει τις κορυφές της µόλυνσης, δηλ. αυτές που είναι µεγαλύτερες από τη µόλυνση της προηγούµενης και της επόµενης µέρας - για κάθε κορυφή το πρόγραµµα θα τυπώνει τη µέρα που έγινε και τη µόλυνση που υπήρχε εκείνη τη µέρα } molinsi : Array[1..20] of byte; i : Byte; { εδώ γίνεται η καταχώρηση των δεδοµένων της µόλυνσης } { και ελέγχουµε αν η τιµή της µόλυνσης είναι από 0 έως 100 } For i:=1 To 20 Do Repeat Writeln('Δώσε τη µόλυνση της ', i, 'ης ηµέρας : '); Readln(molinsi[i]); Until molinsi[i] in [0..100]; End; { For } { εδώ συγκρίνουµε τη µόλυνση της ηµέρας i µε τις µολύνσεις } { της επόµενης και της προηγούµενης ηµέρας απ αυτήν και ανάλογα } { εκτυπώνουµε } For i:=2 To 19 Do If (molinsi[i]>molinsi[i+1]) and (molinsi[i]>molinsi[i-1]) Then Writeln('Η ',i,'η ηµέρα έχει κορυφή µε τιµή ',molinsi[i]); { κάνουµε και µια εκτύπωση όλων των δεδοµένων της µόλυνσης } For i:=1 To 20 Do Write(molinsi[i], ' '); 33

34 Program Ptiseis; { Μια εταιρεία µεταφορών χρησιµοποιεί ένα δικό της αεροπλάνο για τις µεταφορές που κάνει στο εξωτερικό - το αεροπλάνο µπορεί κάθε φορά να µεταφέρει ένα µέγιστο συνολικό φορτίο - τα εµπορεύµατα είναι συσκευασµένα σε πακέτα και κάθε πακέτο έχει έναν αύξοντα αριθµό και ένα βάρος - να γίνει πρόγραµµα που να καταχωρεί τα βάρη των πακέτων σε τόνους µε τη σειρά που δίνονται και να υπολογίζει και να τυπώνει πόσες αεροπορικές πτήσεις θα χρειαστούν για να µεταφερθούν όλα τα πακέτα και πόσο συνολικό φορτίο θα µεταφέρει η κάθε πτήση } Const max_load = 100;{ 100 τόνοι είναι το µέγιστο φορτίο του αεροπλάνου } i, weight, ptisi, sum : Byte; sum := 0; ptisi := 0; { εδώ γίνεται η καταχώρηση και η επεξεργασία των δεδοµένων } For i:=1 To 20 Do { υποθέτουµε ότι υπάρχουν 20 πακέτα } Writeln('Δώσε το βάρος του πακέτου : '); Readln(weight); sum := sum + weight; { πρόσθεση του βάρους του πακέτου } If sum > max_load Then { τα πακέτα ξεπέρασαν το µέγιστο φορτίο } ptisi := ptisi + 1; { αυξάνουµε τις πτήσεις } sum := sum - weight; { αφαιρούµε το τελευταίο πακέτο } Writeln('Θα φύγει η ', ptisi, 'η πτήση µε βάρος ', sum); sum := weight; { το sum παίρνει νέα τιµή } End; { If } If sum = max_load Then { τα πακέτα είναι ίσα µε το µέγιστο φορτίο } ptisi := ptisi + 1; { αυξάνουµε τις πτήσεις } Writeln('Θα φύγει η ', ptisi,' η πτήση µε βάρος ', sum); sum := 0; { το sum µηδενίζεται } End;{ If } End; { For } If sum>0 Then Do { αν υπάρχουν πακέτα που έχουν αποµείνει } ptisi := ptisi + 1; { αυξάνουµε τις πτήσεις } Writeln('Θα φύγει η ', ptisi, 'η πτήση µε βάρος ', sum); End;{ If } 34

35 Program Taxinomisi_Pinaka; { Να ταξινοµηθεί κατά αύξουσα σειρά πίνακας Α µε Ν στοιχεία - θα εφαρµοσθεί η µέθοδος Bubble-Sort σύµφωνα µε την οποία σαρώνουµε συνέχεια τον πίνακα και αν κάποια στοιχεία δεν είναι στη σωστή σειρά, τότε τα κάνουµε ανταλλαγή και βάζουµε την τιµή 1 σε µια σηµαία flag - όταν σαρώσουµε τον πίνακα και η flag είναι ίση µε µηδέν, τότε αυτό θα σηµαίνει ότι ο πίνακας είναι ταξινοµηµένος } a : Array[1..100] of Integer; temp : Integer; i, N, flag : Byte; Writeln('Δώσε το πλήθος των στοιχείων : '); Readln(N); { εδώ γίνεται η καταχώρηση των δεδοµένων } For i:=1 To N Do Writeln('Δώσε το ', i, 'ο στοιχείο : '); Readln(a[i]); End; { For } { εδώ γίνεται η επεξεργασία των στοιχείων του πίνακα } Repeat flag := 0; { αρχικά µηδενίζουµε τη flag } For i:=1 To N-1 Do If a[i] > a[i+1] Then { εδώ γίνεται η ανταλλαγή των τιµών } temp := a[i]; a[i] := a[i+1]; a[i+1] := temp; flag := 1; { η flag γίνεται ίση µε 1 } End; { If } End; { For } Until flag = 0; { όταν η flag παραµείνει ίση µε 0, αυτό θα σηµαίνει ότι πίνακας } { είναι ταξινοµηµένος } { εµφανίζουµε τα στοιχεία του ταξινοµηµένου πίνακα } For i:=1 To N Do Writeln('Το ', i, 'ο στοιχείο του πίνακα είναι :, a[i]); End; { For } 35

36 Program Athroisma_Pinaka; {Να βρεθεί το άθροισµα των στοιχείων πίνακα Α µε Ν γραµµές και Μ στήλες} i, j, n, m : Byte; sum : Longint; a : Array[1..100, ] of Integer; Writeln('Δώσε το Ν : '); Readln(n); Writeln('Δώσε το M : '); Readln(m); { µηδενίζουµε τον αθροιστή } sum := 0; {εδώ γίνεται η καταχώρηση και η άθροιση των στοιχείων του πίνακα} For i:=1 To n Do { οι γραµµές του πίνακα } For j:=1 To m Do { οι στήλες του πίνακα } Writeln('Δώσε το στοιχείο : ', i, ', ', j); Readln(a[i, j]); sum := sum + a[i, j]; End; { For-j } End; { For-i } {εδώ γίνεται η εκτύπωση του αθροίσµατος των στοιχείων του πίνακα} Writeln('Το άθροισµα των στοιχείων του πίνακα είναι : ', sum); 36

37 Program Max_Pinaka; { Να βρεθεί το µεγαλύτερο στοιχείο πίνακα Α µε Ν γραµµές και Μ στήλες } i, j, n, m : Byte; max : Integer; a : Array[1..100, ] of Integer; Writeln('Δώσε το πλήθος των γραµµών : '); Readln(n); Writeln('Δώσε το πλήθος των στηλών : '); Readln(m); { εδώ γίνεται η καταχώρηση των στοιχείων του πίνακα } For i:=1 To n Do For j:=1 To m Do Writeln('Δώσε το στοιχείο : ', i,',', j); Readln(a[i, j]); End; { For-j } End; { For-i } { θέτουµε σαν max το στοιχείο του πίνακα που είναι στη θέση 1,1 } max := a[1,1]; { εδώ ψάχνουµε για το µεγαλύτερο στοιχείο του πίνακα } For i:=1 To n Do For j:=1 To m Do If a[i, j]) > max Then max := a[i, j]; End; { for-j } End; { for-i } { εδώ εκτυπώνουµε το µεγαλύτερο στοιχείο του πίνακα } Writeln('Το µεγαλύτερο στοιχείο του πίνακα είναι το : ', max); 37

38 Program Athroisma_Grammhs_Pinaka; { Να βρεθεί το άθροισµα κάθε γραµµής πίνακα Α (ΝΧΜ) και να καταχωρηθεί σ έναν πίνακα Β(Ν) } i, j, n, m : Byte; sum : Longint; a : Array[1..100, ] of Integer; b : Array[1..100] of Longint; Writeln('Δώσε το πλήθος των γραµµών : '); Readln(n); Writeln('Δώσε το πλήθος των στηλών : '); Readln(m); { εδώ γίνεται η καταχώρηση των στοιχείων του πίνακα } For i:=1 To n Do For j:=1 To m Do Writeln('Δώσε το στοιχείο : ', i, ',', j); Readln(a[i, j]); End;{ For-j } End; { For-i } { εδώ γίνεται το διάβασµα ανά γραµµή του πίνακα και η πρόσθεση } { των στοιχείων της κάθε γραµµής } For i:=1 To n Do sum := 0; { µηδενίζουµε το άθροισµα πριν από την } { επεξεργασία της γραµµής } For j:=1 To m Do sum := sum + a[i, j]; End; { For-j } b[i] := sum; { το άθροισµα της i γραµµής καταχωρείται στη i θέση του } { πίνακα Β } End; { For-i } 38

39 Program Thetikoi_Arnitikoi; { Να βρεθεί και να εκτυπωθεί το πλήθος των θετικών και των αρνητικών στοιχείων κάθε γραµµής ενός πίνακα Α(ΝΧΜ) } i, j, n, m, pos, neg : Byte; a : Array[1..100, ] of Integer; Writeln('Δώσε το πλήθος των γραµµών : '); Readln(n); Writeln('Δώσε το πλήθος των στηλών : '); Readln(m); { εδώ γίνεται η καταχώρηση των στοιχείων του πίνακα } For i:=1 To n Do For j:=1 To m Do Writeln('Δώσε το στοιχείο : ', i, ',', j);readln(a[i, j]); End; { For-j } End; { For-i } { εδώ γίνεται η επεξεργασία των στοιχείων του πίνακα } For i:=1 To n Do pos := 0; neg := 0; { µηδενίζουµε τα αθροίσµατα πριν από την } { επεξεργασία των στοιχείων της γραµµής } For j:=1 To m Do If a[i, j] > 0 Then pos := pos + 1; If a[i, j] < 0 Then neg := neg +1 ; End; { For-j } { τυπώνουµε τα δύο αθροίσµατα } Writeln('Η γραµµή ', i, ' έχει ', pos, ' θετικούς και ', neg, 'αρνητικούς αριθµούς ); End; { For-i } 39

40 Program Eteria; { Μια εταιρία έχει έξι υποκαταστήµατα - για κάθε υποκατάστηµα στο τέλος κάθε µήνα δίνονται οι πωλήσεις κάθε εβδοµάδας - να γίνει αλγόριθµος και λογικό διάγραµµα που να διαβάζει τα στοιχεία τεσσάρων εβδοµάδων για κάθε υποκατάστηµα, να εκτυπώνει πίνακα µε τις πωλήσεις και να βρίσκει τη µεγαλύτερη πώληση, ποιο υποκατάστηµα την έκανε και σε ποια εβδοµάδα } polisis : Array[1..6, 1..4] of Longint; max : Longint; i, j, i_max, j_max : Byte; {εδώ γίνονται οι καταχωρήσεις των πωλήσεων των } { 6 υποκαταστηµάτων για 4 εβδοµάδες } For i:=1 To 6 Do For j:=1 To 4 Do Writeln('Δώσε τις πωλήσεις της ', j, 'ης εβδοµάδας του ', i, 'ου υποκαταστήµατος : '); Readln(polisis[i, j]); End; { For-j } End; { For-i } { εκτύπωση των πωλήσεων ανά υποκατάστηµα και ανά εβδοµάδα } For i:=1 To 6 Do Writeln('οι πωλήσεις του ', i, 'ου υποκαταστήµατος είναι : '); Writeln(' '); For j:=1 To 4 Do Write(j, 'η εβδοµάδα : '); Writeln(polisis[i, j]); End; { For-j } Writeln; End; { For-i } max := polisis[1,1]; i_max := 1; j_max := 1; { θέτουµε σαν αρχική τιµή του max τις πωλήσεις του 1 ου } { υποκατ. την 1 η εβδοµάδα και συγκρίνουµε µε τις υπόλ. πωλήσεις } For i:=1 To 6 Do For j:=1 To 4 Do If polisis[i,j] > max Then max := polisis[i, j]; i_max := i; j_max := j; End; { If } End; { For-j } End; { For-i } { εκτυπώνουµε τα στοιχεία για τις µέγιστες πωλήσεις } Writeln('Οι µεγαλύτερες πωλήσεις είναι ', max, ' και τις έκανε το ', i_max, 'ο υποκατάστηµα, την ', j_max, 'η εβδοµάδα'); 40

41 Program Oplites; { Δίνονται τα εξής στοιχεία για 20 νέους οπλίτες που πρόκειται να καταταγούν στα διάφορα όπλα του στρατού : ονοµατεπώνυµο και όπλο κατάταξης (1=στρατός ξηράς, 2=ναυτικό, 3=αεροπορία) - να γίνει εκτύπωση για τα τρία όπλα ξεχωριστά } i, i_stratos, i_aeroporia, i_nautiko, oplo : Byte; name : String[30]; stratos, aeroporia, nautiko : Array[1..20] of String[30]; i_stratos :=0; { µηδενισµός των µετρητών } i_aeroporia := 0; i_nautiko :=0; { καταχώρηση και επεξεργασία των στοιχείων των οπλιτών } For i:=1 To 20 Do Writeln('Δώσε το όνοµα : '); Readln(name); Repeat Writeln('Δώσε το όπλο : '); Readln(oplo); Until oplo in [1..3]; Case oplo of 1 : i_stratos := i_stratos + 1; stratos[i_stratos] := name; End; { Case-1 } 2 : i_aeroporia := i_aeroporia + 1; aeroporia[i_aeroporia] := name; End; { Case-2 } 3 : i_nautiko := i_nautiko + 1; nautiko[i_nautiko] := name; End; { Case-3 } End; { Case } End; { For } { εδώ γίνεται η εκτύπωση των στοιχείων και των τριών πινάκων } Writeln('Στρατός : '); For i:=1 To i_stratos Do Writeln(stratos[i]); Writeln; Writeln('Αεροπορία : '); For i:=1 tto i_aeroporia Do writeln(aeroporia[i]); Writeln; Writeln('Ναυτικό : '); For i:=1 To i_nautiko Do Writeln(nautiko[i]); 41

42 Το παρακάτω πρόγραµµα περιέχει µια διαδικασία που κεντράρει µια γραµµή στην οθόνη. Program Center; row : Byte; title : String; Procedure center_line(message : String; line : Byte); GotoXY(40 - Length(message) div 2, line); Writeln(message); End; { Κύριο Πρόγραµµα } row := 2; title := 'Κάθε γραµµή κειµένου κεντράρεται.'; center_line(title, row); { κλήση της διαδικασίας } center_line(' ', row+1); center_line('borland Turbo Pascal!', row+2); Το αποτέλεσµα του προγράµµατος είναι το εξής : Κάθε γραµµή κειµένου κεντράρεται Borland Turbo Pascal! 42

43 Το παράδειγµα που ακολουθεί περιέχει δύο τοπικές µεταβλητές και απαιτεί από τον χρήστη να δώσει έναν αριθµό, προκειµένου να βρεθεί το παραγοντικό του. Το παραγοντικό π.χ. του 6 είναι το γινόµενο 1*2*3*4*5*6. Program local_variables; num : Byte; Procedure factor(value : Byte); factorial : Real; count : Byte; factorial := 1.0; For count := 1 To value Do factorial := factorial * count; Write('Το παραγοντικό του ', value,' είναι : ' ); Writeln(factorial); End; { Τέλος της διαδικασίας Factor } { Κύριο πρόγραµµα } Write('Δώστε έναν αριθµό µικρότερο του 34 : '); Readln(num); Factor(num); { Τέλος του προγράµµατος } Ένα παράδειγµα από τη λειτουργία του προγράµµατος είναι το εξής : Δώστε έναν αριθµό µικρότερο του 34 : 5 Το παραγοντικό του 5 είναι : Ε+02 43

44 Στο πρόγραµµα που ακολουθεί παρουσιάζεται το πέρασµα παραµέτρων µε τιµή : Program byvalue; global_var : Integer; Procedure proc(local_var : Integer); Writeln('Τοπική µεταβλητή = ', local_var); local_var := 333; Writeln('Τοπική µεταβλητή = ', local_var); End; { Κύριο πρόγραµµα } global_var := 5; proc(global_var); Writeln('Καθολική µεταβλητή = ', global_var); Το αποτέλεσµα του προγράµµατος θα είναι : Tοπική µεταβλητή = 5 Tοπική µεταβλητή = 333 Kαθολική µεταβλητή = 5 Βλέπουµε ότι η µεταβλητή global_var δεν επηρεάζεται από τη διαδικασία και ότι δίνει την τιµή της στην local_var. 44

45 Το παρακάτω πρόγραµµα παρουσιάζει τη µέθοδο αυτή (µε αναφορά): Program byref; var, var2 : Integer; Procedure swap_vars( var1 : Integer; var2 : Integer); temp : Integer; temp := var1; var1 := var2; var2 := temp; End; var1 := 55; var2 := 99; Writeln('Μεταβλητή1 = ', var1, 'Μεταβλητή2 = ', var2); swap_vars(var1, var2); Writeln('Μεταβλητή1 = ', var1, 'Μεταβλητή2 = ', var2); Το αποτέλεσµα του προγράµµατος θα είναι : Μεταβλητή1 = 55 Μεταβλητή2 = 99 Μεταβλητή1 = 99 Μεταβλητή2 = 55 Όταν περνάµε µια παράµετρο µε αναφορά, θα πρέπει να περνάµε τη µεταβλητή και όχι την τιµή της. Συνίσταται να περνούν οι µεταβλητές µε αναφορά µόνο όταν απαιτείται η διαδικασία να αλλάξει το περιεχόµενό τους. Δηλαδή, η παράµετρος θα πρέπει να είναι όνοµα µεταβλητής : και όχι όνοµα σταθεράς : swap_vars(global_1, global_2); swap_vars(55, 99); 45

46 Το παρακάτω πρόγραµµα που περιέχει µια συνάρτηση που υψώνει έναν αριθµό σε κάποια δύναµη. Program Funct; num, expo, powr : Real; Function power(base, exponent : Real) : Real; If base >0 Then Power := Exp(exponent * Ln(base)) Else Power := -1.0; End; { end of power() } Writeln('Δώστε έναν αριθµό : '); Readln(num); Writeln('Δώστε τον εκθέτη : '); Readln(expo); powr := Power(num, expo); Writeln(num, ' ', expo, ' = ', powr); Το παραπάνω πρόγραµµα Funct περιµένει την εισαγωγή δύο αριθµών, της βάσης και του εκθέτη και στη συνέχεια καλεί τη συνάρτηση power, η ο- ποία υψώνει τον αριθµό στην αντίστοιχη δύναµη. 46

47 : Το παρακάτω πρόγραµµα παρουσιάζει τον φωλιασµό των διαδικασιών Program Hideproc; globl : Integer; Procedure proc(p_parm : Integer); p_locl : Integer; Procedure hidden(hidn_parm : Integer); hidn_locl : Integer; Writeln('Η διαδικασία hidden µπορεί να δει τις : globl, p_parm, p_locl, hidn_parm, hidn_locl'); End; { τέλος της διαδικασίας hidden } Writeln('η διαδικασία proc µπορεί να δει τις : globl, p_parm, p_locl'); hidden(44); End; { τέλος της διαδικασίας proc } { κύριο πρόγραµµα } Writeln('Το κύριο πρόγραµµα µπορεί να δει την : globl'); proc(99); Το αποτέλεσµα θα είναι : το κύριο πρόγραµµα µπορεί να δει την : globl η διαδικασία proc µπορεί να δει τις : globl, p_parm, p_locl η διαδικασία hidden µπορεί να δει τις : globl, p_parm, p_locl, hidn_parm, hidn_locl Το παραπάνω πρόγραµµα περιέχει δύο διαδικασίες, την proc και την hidden. Η διαδικασία hidden είναι ορατή µόνο µέσα στην proc, στην οποία και περιέχεται. Στο βαθύτερο σηµείο του προγράµµατος, στο εσωτερικό δηλ. της hidden, όλες οι µεταβλητές του προγράµµατος γίνονται ορατές. Η διαδικασία hidden µπορεί να δει τις δικές της τοπικές µεταβλητές, αυτές της διαδικασίας proc καθώς και τις καθολικές µεταβλητές του προγράµµατος. Η διαδικασία proc µπορεί να δει µόνο τις δικές της τοπικές µεταβλητές καθώς και τις καθολικές. Το κύριο πρόγραµµα έχει την πιο περιορισµένη ορατότητα. Μπορεί να δει µόνο τις καθολικές µεταβλητές. 47

48 Στο παρακάτω πρόγραµµα χρησιµοποιείται η αναδροµική συνάρτηση factor για την εύρεση του παραγοντικού ενός αριθµού : Program Recurse; num : Byte; result : Real; Function Factor(value : Byte ) : Real; If value > 1 Then factor := value * factor(value-1) Else factor := 1.0; End; { Factor } { κύριο πρόγραµµα } Write('Δώσε έναν αριθµό : '); Readln(num); result := Factor(num); Write('Το παραγοντικό του ', num, ' είναι : '); Writeln(result); Η διαφορά µεταξύ της απλής κλήσης µιας συνάρτησης και της αναδροµικής, είναι στο ότι η τελευταία περιέχει µια δήλωση που καλεί τον εαυτό της : factor := value * factor(value-1) Η δήλωση If στην αρχή της συνάρτησης θέτει µια συνθήκη η οποία ε- µποδίζει τη συνάρτηση να καλεί συνέχεια τον εαυτό της. Κάθε αναδροµική συνάρτηση ή διαδικασία πρέπει να έχει έναν τέτοιο µηχανισµό εξόδου. 48

49 Με λίγη προσοχή ένα πρόγραµµα µπορεί να εκτελέσει τρεις διαφορετικές λειτουργίες : εκτύπωση δεδοµένων στον εκτυπωτή, στην οθόνη ή σε αρχείο. Δείτε το παρακάτω πρόγραµµα, όπου µια εντολή case εκχωρεί την κατάλληλη µεταβλητή ονόµατος αρχείου, ανάλογα µε την επιλογή του χρήστη : Program testfile; Uses Crt; datafile : Text; FileName : String; i, epil : Integer; flag : Boolean; Procedure Menu; ClrScr; epil := 0; GotoXY(30,4);Writeln('ΕΠΙΛΟΓΗ ΕΞΟΔΟΥ'); GotoXY(31,6);Writeln('1. ΣΤΟ ΔΙΣΚΟ'); GotoXY(31,7);Writeln('2. ΣΤΗΝ ΟΘΟΝΗ'); GotoXY(31,8);Writeln('3. ΣΤΟΝ ΕΚΤΥΠΩΤΗ'); GotoXY(31,9);Writeln('4. ΕΞΟΔΟΣ'); GotoXY(28,12);Writeln('ΔΩΣΤΕ ΤΗΝ ΕΠΙΛΟΓΗ ΣΑΣ : '); Readln(epil); End; { Menu } Procedure Selection; Case epil of 1 : FileName := 'RAN_DATA.DAT' 2 : Filename := 'CON'; 3 : FileName := 'PRN'; End; { Case } End; { Selection } { Κύριο Πρόγραµµα } Repeat Menu; flag := True; While (epil>0) and (epil<4) and (flag=true) do Selection; Assign(datafile, FileName); Rewrite(datafile); for i:= 1 to 10 do Writeln(datafile, Random(50)); flag := False; End; { While } Until epil = 4; 49

Το παρακάτω πρόγραµµα παρουσιάζει µια επεξεργασία συµβολοσειρών. Program Strings; Uses Crt;

Το παρακάτω πρόγραµµα παρουσιάζει µια επεξεργασία συµβολοσειρών. Program Strings; Uses Crt; Ασκήσεις σε Pascal Program prostesi; { όνοµα ή επικεφαλίδα ή τίτλος του προγράµµατος }(* αυτό το πρόγραµµα προσθέτει δύο αριθµούς *) Uses Crt; { δήλωση της µονάδας Crt, που περιέχει συναρτήσεις οθόνης

Διαβάστε περισσότερα

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

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) 133 244 355 a= b= c= 3 read(d,e) 166 277 3888 ΕΡΩΤΗΣΕΙΣ 1. Να αναφέρετε μερικά από τα ιδιαίτερα χαρακτηριστικά της Pascal. 2. Ποιο είναι το αλφάβητο της Pascal; 3. Ποια είναι τα ονόματα-ταυτότητες και σε τι χρησιμεύουν; 4. Σε τι χρησιμεύει το συντακτικό

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD) Η Γλώσσα Pascal Χαρακτηριστικά Τύποι Δεδοµένων Δοµή προγράµµατος 1. Βασικές έννοιες Χαρακτηριστικά της γλώσσας Pascal Γλώσσα προγραµµατισµού Συντακτικό Σηµασιολογία Αλφάβητο της γλώσσας Pascal (Σύνολο

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΙΑΧΕΙΡΙΣΗ Ε ΟΜΕΝΩΝ ΚΑΙ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ (Β ΕΞΑΜΗΝΟ) ιδάσκων: Επ. Καθηγητής Γρηγόρης Χονδροκούκης ΣΗΜΕΙΩΣΕΙΣ ΜΑΘΗΜΑΤΟΣ Η ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Διαβάστε περισσότερα

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

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΕΝΙΚΗ ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ Program Ονομα_προγραμματος; «πρόγραμμα» Πρόγραμμα 1 Program Lesson1_Program1; Write('Hello World!!!'); {σχόλια} Επεξήγηση Προγράμματος Program Lesson1_Program1;

Διαβάστε περισσότερα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Επιμέλεια: Χρύσα Παπαγεωργίου 1. Δίνονται δύο αριθμοί. Να υπολογισθεί το άθροισμα και το γινόμενό τους. 2. Δίνονται τρεις αριθμοί. Να υπολογισθεί ο μέσος

Διαβάστε περισσότερα

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

ιαφάνειες παρουσίασης #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Κων/νου Στυλιάδη Χρήστου Ιωάννου. Εφαρµογή Αποθήκης σε Pascal

Κων/νου Στυλιάδη Χρήστου Ιωάννου. Εφαρµογή Αποθήκης σε Pascal Κων/νου Στυλιάδη Χρήστου Ιωάννου Εφαρµογή Αποθήκης σε Pascal Φλώρινα, Φεβρουάριος 1995 Παρουσιάζεται µια ολοκληρωµένη εφαρµογή αποθήκης σε Pascal µε τη χρήση δυαδικών αρχείων και µενού. Διδάχθηκε στο ΙΕΚ

Διαβάστε περισσότερα

Επαναληπτικές δοµές. µτ α.τ. Όχι. ! απαγορεύεται µέσα σε µία ΓΙΑ να µεταβάλλουµε τον µετρητή! διότι δεν θα ξέρουµε µετά πόσες επαναλήψεις θα γίνουν

Επαναληπτικές δοµές. µτ α.τ. Όχι. ! απαγορεύεται µέσα σε µία ΓΙΑ να µεταβάλλουµε τον µετρητή! διότι δεν θα ξέρουµε µετά πόσες επαναλήψεις θα γίνουν Επαναληπτικές δοµές Η λογική των επαναληπτικών διαδικασιών εφαρµόζεται όπου µία ακολουθία εντολών εφαρµόζεται σε ένα σύνολο περιπτώσεων που έχουν κάτι κοινό. Όταν ψάχνουµε θέση για να παρκάρουµε κοντά

Διαβάστε περισσότερα

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

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE ΕΡΓΑΣΤΗΡΙΟ 7 Ο Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE Βασικές Έννοιες: Δομή Επανάληψης, Εντολές Επανάληψης (For, While do, Repeat until), Αλγόριθμος, Αθροιστής, Μετρητής, Παράσταση

Διαβάστε περισσότερα

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

ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α A1. 2-Λάθος 3-Λάθος 4-Σωστό 5-Λάθος A2. integer. real. Boolean. char. string A3. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΘΕΜΑ Α A1. ΚΥΡΙΑΚΗ 16/04/2014- ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΔΕΚΑΠΕΝΤΕ (15) ΑΠΑΝΤΗΣΕΙΣ 1-Σωστό

Διαβάστε περισσότερα

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

ΑΠΑΝΤΗΣΕΙΣ. H διαδικασία ανεύρεσης λογικών λαθών περιλαμβάνει : β- Σωστό. Διαπίστωση του είδους του λάθους γ- Σωστό δ- Λάθος ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΤΕΤΑΡΤΗ 08/04/2015 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΟΚΤΩ (8) ΘΕΜΑ Α ΑΠΑΝΤΗΣΕΙΣ Α1. Α2. α-

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 Μάθημα: ΠΛΗΡΟΦΟΡΙΚΗ Ημερομηνία και ώρα εξέτασης: Τρίτη, 6 Ιουνίου 2006 07:30 10:30

Διαβάστε περισσότερα

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

Προγραμματισμός PASCAL Προγραμματισμός PASCAL 1 PASCAL Η PASCAL σχεδιάστηκε από τον Worth το 1968 στη Ζυρίχη, αρχικά σαν εργαλείο για τη διδασκαλία προγραμματισμού. Είναι γλώσσα για σειριακό προγραμματισμό. 2 Απλή και εύκολη

Διαβάστε περισσότερα

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

Pascal. 26 Οκτωβρίου 2011 Pascal 6 Οκτωβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε

Διαβάστε περισσότερα

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

Pascal, απλοί τύποι, τελεστές και εκφράσεις Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το

Διαβάστε περισσότερα

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

ΛΥΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2007 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2007 ΛΥΣΕΙΣ Μάθημα: ΠΛΗΡΟΦΟΡΙΚΗ Ημερομηνία και ώρα εξέτασης: Παρασκευή, 8 Ιουνίου 2007

Διαβάστε περισσότερα

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

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014 ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014 ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη Σωστό, αν είναι

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΠΑΝΕΛΛHNIΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α A ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙ ΙΚΟΤΗΤΑΣ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α Β ) ΣΑΒΒΑΤΟ 28 ΜΑΪΟΥ 2011 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΟΜΗΜΕΝΟΣ

Διαβάστε περισσότερα

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

ιαφάνειες παρουσίασης #4 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης #4!Λοιπές εντολές!

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 Μάθημα: ΠΛΗΡΟΦΟΡΙΚΗ ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ 1. 2. 1. Προκαταρτική Έρευνα Μελέτη Σκοπιμότητας

Διαβάστε περισσότερα

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

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ 9.1 Εντολές Εισόδου/εξόδου Στην Pascal, 1. Tα δεδομένα των προγραμμάτων λαμβάνονται: είτε από το πληκτρολόγιο είτε από ένα αρχείο με τη χρήση των διαδικασιών read και readln,

Διαβάστε περισσότερα

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

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Μάθημα 7 - Υποπρογράμματα Εργαστήριο 11 Ο TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Βασικές Έννοιες: Υποπρόγραμμα, Ανάλυση προβλήματος, top down σχεδίαση, Συνάρτηση, Διαδικασία, Παράμετρος, Κλήση συνάρτησης, Μετάβαση

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ιαφάνειες παρουσίασης #2 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

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

Αποτελέσματα προόδου ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://courses.softlab.ntua.gr/progintro/ Διδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) Δημήτρης Φωτάκης (fotakis@cs.ntua.gr)

Διαβάστε περισσότερα

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

ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ ΟΔΗΓΙΕΣ: ΝΑ ΑΠΑΝΤΗΣΕΤΕ ΣΕ ΟΛΕΣ ΤΙΣ ΕΡΩΤΗΣΕΙΣ. Το εξεταστικό δοκίμιο αποτελείται από δύο Ενότητες Α και Β. ΕΝΟΤΗΤΑ Α - Αποτελείται από δέκα (10) ερωτήσεις. Κάθε ορθή απάντηση

Διαβάστε περισσότερα

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

Κεφάλαιο 5ο: Εντολές Επανάληψης Χρήστος Τσαγγάρης ΕΕ ΙΠ Τµήµατος Μαθηµατικών, Πανεπιστηµίου Αιγαίου Κεφάλαιο 5ο: Εντολές Επανάληψης Η διαδικασία της επανάληψης είναι ιδιαίτερη συχνή, αφού πλήθος προβληµάτων µπορούν να επιλυθούν µε κατάλληλες

Διαβάστε περισσότερα

4. Επιλογή και Επανάληψη

4. Επιλογή και Επανάληψη Σελίδα 53 4. Επιλογή και Επανάληψη 4.1 Η Εντολή Επιλογής if.. then Η εντολή If.. Then.. χρησιμοποιείται για την λήψη λογικών αποφάσεων σε ένα πρόγραμμα. Η εντολή αυτή έχει διάφορες μορφές σύνταξης οι οποίες

Διαβάστε περισσότερα

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

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης ΚΕΦΑΛΑΙΟ 1ο 3ο 1. Συμπληρώστε τα κενά με τη λέξη που λείπει. α. Ένα πρόβλημα το χωρίζουμε σε άλλα απλούστερα, όταν είναι ή όταν έχει τρόπο επίλυσης. β. Η επίλυση ενός προβλήματος προϋποθέτει την του. γ.

Διαβάστε περισσότερα

ΜΑΗΣ ΕΝΔΕΙΚΤΙΚΕΣ ΛΥΣΕΙΣ ΔΟΚΙΜΙΟΥ. Ενότητα Α - ΛΥΣΕΙΣ

ΜΑΗΣ ΕΝΔΕΙΚΤΙΚΕΣ ΛΥΣΕΙΣ ΔΟΚΙΜΙΟΥ. Ενότητα Α - ΛΥΣΕΙΣ ΜΑΗΣ 2007 - ΕΝΔΕΙΚΤΙΚΕΣ ΛΥΣΕΙΣ ΔΟΚΙΜΙΟΥ Ενότητα Α - ΛΥΣΕΙΣ Πρόβλημα 1 ΑΡΧΗ Διάβασε Α Ψευδής Α > 0 Αληθής Τύπωσε «ΛΑΘΟΣ» Ε Α 2 Τύπωσε Ε ΤΕΛΟΣ Πρόβλημα 2 (α) I) Α := ABS(sin(x)/cos(x)) + SQR(y) * y; II)

Διαβάστε περισσότερα

4. Ποιος είναι ο τύπος και ποια η τιμή της μεταβλητής που χρησιμοποιείται παρακάτω;

4. Ποιος είναι ο τύπος και ποια η τιμή της μεταβλητής που χρησιμοποιείται παρακάτω; ΑΕσΠΠ-Ακολουθιακή Δομή 1 ΑΚΟΛΟΥΘΙΑΚΗ ΔΟΜΗ 1. Ποια από τα παρακάτω ονόματα μεταβλητών είναι λάθος και γιατί; Α Ύψος Αριθμ.παιδιών ΑΑ ποσοστό Α-Α διάβασε Αξία ΦΠΑ Χ Α4 ΜΗΚΟΣ Αριθμ_παιδιών Β_ ποσοστό% Α/Α

Διαβάστε περισσότερα

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

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos Δομή Επανάληψης Κεφάλαιο 7 Mike Trimos Δομή Επανάληψης Η Διαδικασία αυτή ονομάζεται Βρόγχος ή Επανάληψη (Loop) και η εντολή ή το σύνολο των εντολών που επαναλαμβάνονται ονομάζεται Σώμα της Δομής. Η γλώσσα

Διαβάστε περισσότερα

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

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΠΑΝΕΛΛHNIΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α A ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙ ΙΚΟΤΗΤΑΣ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α Β ) ΣΑΒΒΑΤΟ 28 ΜΑΪΟΥ 2011 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΟΜΗΜΕΝΟΣ

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 Μάθημα: ΠΛΗΡΟΦΟΡΙΚΗ ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ ΜΕΡΟΣ Α 1. ΑΡΧΗ Διάβασε timi Ψευδής timi

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

- program p_name(input) - uses crt

- program p_name(input) - uses crt ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 9 : Βασικές Εντολές 1. Εισαγωγή Εντολές Εισόδου Κάθε Η/Υ έχει µία προκαθορισµένη συσκευή ή αρχείο απ όπου γίνεται η είσοδος δεδοµένων για ένα πρόγραµµα. Μια πολύ κοινή

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 Μάθημα: ΠΛΗΡΟΦΟΡΙΚΗ ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ ΜΕΡΟΣ Α 1. ΑΡΧΗ ιάβασε vath1, vath2 syn_vath

Διαβάστε περισσότερα

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

Pascal. 15 Νοεμβρίου 2011 Pascal 15 Νοεμβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε

Διαβάστε περισσότερα

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

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ-ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΚΑΔΗΜΑΪΚΟ ΕΠΑΛ- ΚΑΝΙΓΓΟΣ 13- ΤΗΛ ΘΕΜ 1.. Χαρακτηρίστε τις προτάσεις που ακολουθούν ως Σωστό, αν οι προτάσεις είναι σωστές και ως Λάθος αν οι προτάσεις είναι λάθος. 1.Είναι πάντα δυνατή η μετατροπή της εντολής WHILE DO σε FOR DO. 2. Στην

Διαβάστε περισσότερα

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

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Εργαστήριο 6 Εντολές Επανάληψης Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL. Ρεύμα Εισόδου / Εξόδου.. Ρεύμα Εισόδου / Εξόδου. To πρόγραμμα γραφικών gnuplot. Γραφικά στη PASCAL. Σκοπός 6.1 ΕΠΙΔΙΩΞΗ

Διαβάστε περισσότερα

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

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013 ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013 ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν, γράφοντας δίπλα στο γράμμα που αντιστοιχεί σε κάθε πρόταση τη

Διαβάστε περισσότερα

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

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

Διαβάστε περισσότερα

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια: Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 ΛΥΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 Μάθηµα: ΠΛΗΡΟΦΟΡΙΚΗ Ηµεροµηνία και ώρα εξέτασης: Τρίτη, 6 Ιουνίου 2006 ΜΕΡΟΣ Α

Διαβάστε περισσότερα

Προγραµµατισµός στην Basic

Προγραµµατισµός στην Basic Προγραµµατισµός στην Basic 1. εντολή εισόδου Χρησιµοποιείται η εντολή INPUT, η οποία µπορεί να συνταχθεί : α. INPUT X, αν το δεδοµένο που ζητάει είναι αριθµητικό ή β. INPUT X$, αν το δεδοµένο που ζητάει

Διαβάστε περισσότερα

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

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Η ΓΛΩΣΣΑ PASCAL ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Απλοί ή στοιχειώδης Τ.Δ. Ακέραιος τύπος Πραγματικός τύπος Λογικός τύπος Χαρακτήρας Σύνθετοι Τ.Δ. Αλφαριθμητικός 1. Ακέραιος (integer) Εύρος: -32768 έως 32767 Δήλωση

Διαβάστε περισσότερα

Δομές ελέγχου. ομαδοποίηση εντολών εκτέλεση εντολών υπό συνθήκη επανάληψη εντολών

Δομές ελέγχου. ομαδοποίηση εντολών εκτέλεση εντολών υπό συνθήκη επανάληψη εντολών Δομές ελέγχου Τροποποιούν τη σειρά εκτέλεσης των εντολών του προγράμματος Οι εντολές φυσιολογικά εκτελούνται κατά σειρά από την αρχή μέχρι το τέλος Με τις δομές ελέγχου επιτυγχάνεται: ομαδοποίηση εντολών

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Α. ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ ΦΥΛΛΑΔΙΟ 2 ο ( Ενότητες 2.2.4-2.2.7.2 ) 1. Να δώσετε τους παρακάτω ορισμούς: α) σειριακός, β) παράλληλος, γ) επαναληπτικός και δ)

Διαβάστε περισσότερα

Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια

Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια Είσοδος:

Διαβάστε περισσότερα

Προγραμματισμός Ι. Ασκήσεις. Τζάλλας Αλέξανδρος, Καθηγητής Εφαρμογών. Τμ. Μηχανικών Πληροφορικής Τ.Ε.

Προγραμματισμός Ι. Ασκήσεις. Τζάλλας Αλέξανδρος, Καθηγητής Εφαρμογών. Τμ. Μηχανικών Πληροφορικής Τ.Ε. Τζάλλας Αλέξανδρος, Καθηγητής Εφαρμογών Τμ. Μηχανικών Πληροφορικής Τ.Ε. Άρτα, Μάιος 2015 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

Διαβάστε περισσότερα

ΒΑΣΙΚΕΣ ΜΕΘΟΔΟΛΟΓΙΕΣ

ΒΑΣΙΚΕΣ ΜΕΘΟΔΟΛΟΓΙΕΣ ΒΑΣΙΚΕΣ ΜΕΘΟΔΟΛΟΓΙΕΣ Άρτιοι - Περιττοί ΔΙΑΒΑΣΕ Χ ΑΝ Χ MOD 2 = 0 ΤΟΤΕ ΓΡΑΨΕ 'ο Χ είναι άρτιος' ΑΛΛΙΩΣ ΓΡΑΨΕ 'ο Χ είναι περιττός' Πολλαπλάσια του Ν ΔΙΑΒΑΣΕ Χ ΑΝ Χ MOD Ν = 0 ΤΟΤΕ ΓΡΑΨΕ 'ο Χ είναι πολλαπλάσιο

Διαβάστε περισσότερα

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

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. β. Οι πληροφορίες είναι δεδομένα τα οποία δεν έχουν υποστεί επεξεργασία. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΘΕΜΑ Α ΚΥΡΙΑΚΗ 16/04/2014- ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΝΝΕΑ (9) ΕΚΦΩΝΗΣΕΙΣ Α1. Να χαρακτηρίσετε

Διαβάστε περισσότερα

3. Να γραφεί πρόγραμμα που θα διαβάζει 100 ακεραίους αριθμούς από το πληκτρολόγιο και θα υπολογίζει το άθροισμά τους.

3. Να γραφεί πρόγραμμα που θα διαβάζει 100 ακεραίους αριθμούς από το πληκτρολόγιο και θα υπολογίζει το άθροισμά τους. ΑΕσΠΠ-Δομή Επανάληψης 9 ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ 1. Να γραφεί πρόγραμμα που να υπολογίζει το άθροισμα των πρώτων 100 φυσικών αριθμών. 2. Να τροποποιηθεί ο παραπάνω πρόγραμμα ώστε να υπολογίζει το άθροισμα των πρώτων

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2007 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2007 Μάθημα: ΠΛΗΡΟΦΟΡΙΚΗ Ημερομηνία και ώρα εξέτασης: Παρασκευή, 8 Ιουνίου 2007 07:30

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2 Παράδειγμα 3 Παράδειγμα 5 Παράδειγμα 6 ΔΤ3 ΔΤ4 151

ΚΕΦΑΛΑΙΟ 2 Παράδειγμα 3 Παράδειγμα 5 Παράδειγμα 6  ΔΤ3 ΔΤ4  151 ΚΕΦΑΛΑΙΟ 2 Παράδειγμα 3 Σε ένα μετεωρολογικό κέντρο χρειάζεται να βρεθεί η μέγιστη και η ελάχιστη θερμοκρασία από τις μέσες ημερήσιες θερμοκρασίες ενός μήνα. Να γραφεί ένας αλγόριθμος που θα διαβάζει τη

Διαβάστε περισσότερα

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β.1 Τύποι Δεδομένων Όλες οι γλώσσες προγραμματισμού (πρέπει να) υποστηρίζουν πέντε (5) πρωταρχικούς τύπους δεδομένων: char (character) int (integer)

Διαβάστε περισσότερα

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

Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση Σκοπός Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση. Επανάληψη των βασικών εννοιών της PASCAL και του προγραμματισμού οι έννοιες της μεταβλητής, του τύπου δεδομένων,

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΕΞΕΤΑΣΕΙΣ ΓΙΑ ΤΑ ΑΝΩΤΕΡΑ ΚΑΙ ΑΝΩΤΑΤΑ ΕΚΠΑΙΔΕΥΤΙΚΑ ΙΔΡΥΜΑΤΑ 2005 ΠΛΗΡΟΦΟΡΙΚΗ ΛΥΣΕΙΣ 1 ΜΕΡΟΣ Α 1. Αρχή Διάβασε

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ : ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΥ ΕΞΑΜΗΝΟ : Α. ΥΠΕΥΘΥΝΟΣ ΜΑΘΗΜΑΤΟΣ : Μάγια Σατρατζέµη ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ : ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΥ ΕΞΑΜΗΝΟ : Α ΦΥΛΛΟ ΑΣΚΗΣΕΩΝ : 11 Αρχεία κειµένου - Αρχεία µε τύπο ΥΠΕΥΘΥΝΟΣ ΜΑΘΗΜΑΤΟΣ : Μάγια Σατρατζέµη Παρατηρήσεις:

Διαβάστε περισσότερα

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

Στην εντολή while η επανάληψη συνεχίζεται όσο η λογική έκφραση έχει τιμή false. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΤΕΤΑΡΤΗ 08/04/2015 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6) ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις

Διαβάστε περισσότερα

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

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Δυνατότητα ανάπτυξης, μεταγλώττισης και εκτέλεσης προγραμμάτων στη PASCAL. Κατανόηση της σύνταξης των προτάσεων της PASCAL. Κατανόηση της εντολής εξόδου για

Διαβάστε περισσότερα

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

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 ΙΣΤΟΡΙΚΑ Παρουσιάστηκε το 1970 από το Niklaus Wirth Προγενέστερη γλώσσα ήταν η Algol 60 Είναι δομημένη γλώσσα προγραμματισμού υψηλού

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Γ Τάξη ΕΠΑ.Λ. Κώστας Κωσταλίας Εκπαιδευτικός ΠΕ19 Γ Τάξη ΕΠΑ.Λ. Κώστας Κωσταλίας Εκπαιδευτικός ΠΕ19 Σκοπός μας είναι να αποκτήσουμε την ευχέρεια να κατανοούμε και να αποσαφηνίζουμε ένα πρόβλημα, να εντοπίζουμε τις χρήσιμες έννοιες που περιέχονται σε αυτό

Διαβάστε περισσότερα

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

ιαφάνειες παρουσίασης #3 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

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

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ ΘΕΜΑ Α Α.1 Να χαρακτηρίσετε σωστή (Σ) ή λανθασμένη (Λ) καθεμία από τις παρακάτω προτάσεις (Μονάδες 10) 1. Ένας αλγόριθμος μπορεί να έχει άπειρα βήματα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004) 1 ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004) ιάλεξη 1 1.1 ΕΙΣΑΓΩΓΗ ΣΤΗ FORTRAN 77 Ένα πρόγραµµα σε οποιαδήποτε γλώσσα προγραµµατισµού δεν τίποτα άλλο από µια σειρά εντολών που πρέπει

Διαβάστε περισσότερα

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

Διαβάστε περισσότερα

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

επιστρέφει αριθµό που προκύπτει µε αντιστροφή των στοιχείων του πρώτου ΑΕσΠΠ-Κεφ.10 Υποπρογράµµατα 1 1. Να γραφεί µία συνάρτηση για κάθε ένα από τα παρακάτω: i. Να δέχεται την ακτίνα ενός κύκλου και να επιστρέφει το εµβαδόν του. ii. Να δέχεται την ακτίνα ενός κύκλου και να

Διαβάστε περισσότερα

ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ

ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΕΞΕΤΑΣΕΙΣ ΓΙΑ ΤΑ ΑΝΩΤΕΡΑ ΚΑΙ ΑΝΩΤΑΤΑ ΕΚΠΑΙ ΕΥΤΙΚΑ Ι ΡΥΜΑΤΑ Μάθηµα: Πληροφορική Ηµεροµηνία εξέτασης: Σάββατο,

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Triggers, Stored procedures Γιώργος Μαρκοµανώλης Περιεχόµενα Triggers-Ενηµέρωση δεδοµένων άλλων πινάκων... 1 Ασφάλεια...

Διαβάστε περισσότερα

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

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός Εργαστήριο 10 Πίνακες Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός 10.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Σ αυτή την άσκηση, εξετάζουμε μία βασική δομή του προγραμματισμού, το πίνακα. Στις μέχρι τώρα

Διαβάστε περισσότερα

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal Δοµή προγράµµατος 1. Δοµή προγράµµατος program όνοµα_προγράµµατος(αρχείο_1, αρχείο_2,...αρχείο_ν); ΕΠΙΚΕΦΑΛΙΔΑ ΒΙΒΛΙΟΘΗΚΕΣ uses όνοµα_βιβλιοθήκης,όνοµα_βιβλιοθήκης;

Διαβάστε περισσότερα

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

Pascal - Βασικές Έννοιες Pasal - Βασικές Έννοιες «Ο ΠΗΛΟΣ ΑΝ ΜΗ ΑΡΗ ΚΕΡΑΜΟΣ ΟΥ ΓΙΝΕΤΑΙ» Σηµαίνει: «Η λάσπη αν δε ζυµωθεί δε γίνετε κεραµίδι» ηλαδή: «Χωρίς τη δοκιµασία της πρακτικής εξάσκησης δεν αποκτάς ικανότητα, πείρα». (Αρχαία

Διαβάστε περισσότερα

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

Μονάδες 12 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑΔΑ A ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑΔΑ Β ) ΠΑΡΑΣΚΕΥΗ 5 ΙΟΥΝΙΟΥ 2015 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ:

Διαβάστε περισσότερα

Να γραφεί αλγόριθμος που θα υπολογίζει το ν! (ν παραγοντικό) Ν!=1 * 2 *3 *.. * Ν

Να γραφεί αλγόριθμος που θα υπολογίζει το ν! (ν παραγοντικό) Ν!=1 * 2 *3 *.. * Ν Δομή επανάληψης Να γραφεί αλγόριθμος που θα υπολογίζει το ν! (ν παραγοντικό) Ν!=1 * 2 *3 *.. * Ν Αλγόριθμος Ν_Παραγοντικό Διάβασε Ν Ρ 1 Για i από 1 μέχρι Ν Ρ Ρ* i Τέλος_επανάληψης Εμφάνισε Ρ Τέλος Ν_Παραγοντικό

Διαβάστε περισσότερα

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

ιαφάνειες παρουσίασης #5 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης #5!Παρουσίαση

Διαβάστε περισσότερα

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

ΑΠΑΝΤΗΣΕΙΣ. α- Σωστό β- Σωστό γ- Λάθος δ- Λάθος ε- Σωστό στ- Σωστό ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΑ ΕΙΔΙΚΟΤΗΤΑΣ ΣΑΒΒΑΤΟ 16/04/2016 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (ΑΠΟΦΟΙΤΟΙ) ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΠΕΝΤΕ (5) ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α Α1. α- Σωστό β-

Διαβάστε περισσότερα

Μεθοδολογία προβλημάτων με Δομή Επανάληψης

Μεθοδολογία προβλημάτων με Δομή Επανάληψης Μεθοδολογία προβλημάτων με Δομή Επανάληψης Ενότητες βιβλίου: - Ώρες διδασκαλίας: 3 Μετρητές Σε πολλές ασκήσεις ζητείται να καταμετρηθεί το πλήθος των τιμών που ικανοποιούν μια συνθήκη (π.χ. είναι θετικοί

Διαβάστε περισσότερα

- program p_name(output); - uses crt;

- program p_name(output); - uses crt; ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 9 : Βασικές Εντολές 1. Εισαγωγή Εντολές Εξόδου Κάθε Η/Υ έχει µία προκαθορισµένη συσκευή ή αρχείο (η συσκευή αναπαρίσταται ως αρχείο) όπου γίνεται η έξοδος των αποτελεσµάτων

Διαβάστε περισσότερα

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015 ΛΥΚΕΙΟ ΑΡΧ. ΜΑΚΑΡΙΟΥ Γ - ΔΑΣΟΥΠΟΛΗ ΣΧΟΛΙΚΟ ΕΤΟΣ 2014-2015 ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015 ΜΑΘΗΜΑ: ΠΛΗΡΟΦΟΡΙΚΗ ΗΜΕΡΟΜΗΝΙΑ: 10 /6 / 2015 ΒΑΘΜΟΣ:... ΤΑΞΗ: Β ΧΡΟΝΟΣ: 2 ώρες ΥΠ. ΚΑΘΗΓΗΤΗ:...

Διαβάστε περισσότερα

Άσκηση 1 (α) Να διατυπώσετε την πιο κάτω λογική έκφραση στη Visual Basic κάνοντας χρήση μεταβλητών:

Άσκηση 1 (α) Να διατυπώσετε την πιο κάτω λογική έκφραση στη Visual Basic κάνοντας χρήση μεταβλητών: Άσκηση 1 (α) Να διατυπώσετε την πιο κάτω λογική έκφραση στη Visual Basic κάνοντας χρήση μεταβλητών: (Μον.2) Η ηλικία είναι μεταξύ των 15 και 18 συμπεριλαμβανομένων (β) Αν Χ= 4, Υ=2, Κ=2 να βρείτε το αποτέλεσμα

Διαβάστε περισσότερα

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΜΟ 1 o ΔΙΑΓΩΝΙΜΑ ΘΕΜΑ 1 ο Α) Για κάθε μία από τις παρακάτω προτάσεις να επιλέξετε αν τις θεωρείτε σωστές () ή άθος () 1. Ο αλγόριθμος χρησιμοποιείται για επίλυση προβλήματος μόνο από

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ 1. Ποιες από τις παρακάτω εντολές είναι σωστές; α) if A + B

Διαβάστε περισσότερα

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

Γ ΤΑΞΗ ΗΜΕΡΗΣΙΟΥ ΕΠΑ.Λ ΜΑΘΗΜΑ ΕΙ ΙΚΟΤΗΤΑΣ ΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΚΦΩΝΗΣΕΙΣ 1 ΘΕΜΑ 1 Γ ΤΑΞΗ ΗΜΕΡΗΣΙΟΥ ΕΠΑ.Λ ΜΑΘΗΜΑ ΕΙ ΙΚΟΤΗΤΑΣ ΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΚΦΩΝΗΣΕΙΣ Α) Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις και δίπλα τη λέξη Σωστό, αν είναι σωστή,

Διαβάστε περισσότερα

Φάσμα. προπαρασκευή για Α.Ε.Ι. & Τ.Ε.Ι.

Φάσμα. προπαρασκευή για Α.Ε.Ι. & Τ.Ε.Ι. σύγχρονο Φάσμα προπαρασκευή για Α.Ε.Ι. & Τ.Ε.Ι. μαθητικό φροντιστήριο 25ης Μαρτίου 111 - ΠΕΤΡΟΥΠΟΛΗ - 210 50 20 990-210 50 27 990 25ης Μαρτίου 74 - ΠΕΤΡΟΥΠΟΛΗ - 210 50 50 658-210 50 60 845 Γραβιάς 85 -

Διαβάστε περισσότερα

Απαντήσεις στο μάθημα Δομημένος Προγραμματισμός ΕΠΑΛ

Απαντήσεις στο μάθημα Δομημένος Προγραμματισμός ΕΠΑΛ Απαντήσεις στο μάθημα Δομημένος Προγραμματισμός ΕΠΑΛ ΘΕΜΑ Α Α1. α-σωστό β-λάθος γ-λάθος δ-σωστό ε-σωστό Α2. 1. ε 2. γ 3. α 4. στ 5. β Α4. Α) Σχολικό βιβλίο σελίδα 58 Βασικές αλγοριθμικές δομές: επιλογή,

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων ΕΠΑΛ ΧΡΥΣΟΥΠΟΛΗΣ Γ Πληροφορική- 2015-2016 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων 1 Εισαγωγή Η εντολή IF Οι εντολές ενός προγράµµατος εκτελούνται διαδοχικά η µία µετά την

Διαβάστε περισσότερα

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο Τετάρτη, 30 Οκτωβρίου 2013 Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο Λύστε στο Visual Basic Express 2010 τις παρακάτω ασκήσεις: 1. Να δημιουργήσετε ένα νέο Project του είδους Console

Διαβάστε περισσότερα

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

Πατώντας το πλήκτρο Enter ή το κουμπί Enter από την γραμμή τύπων εκτελείται η μαθηματική πράξη και παρουσιάζει το αποτέλεσμα του κελιού. ΜΑΘΗΜΑ 4 ΣΤΟΧΟΙ: 1. Δημιουργία Μαθηματικών Τύπων 2. Τελεστές (Operators) 3. Τιμές (Value) 4. Τιμές Σφάλματος 5. Συναρτήσεις 6. Συνάρτηση Sum 7. Συνάρτηση Max 8. Συνάρτηση Min 9. Συνάρτηση Average 10. Συνάρτηση

Διαβάστε περισσότερα

3.2 3.3 3.4 ΠΡΑΞΕΙΣ ΜΕ ΕΚΑ ΙΚΟΥΣ

3.2 3.3 3.4 ΠΡΑΞΕΙΣ ΜΕ ΕΚΑ ΙΚΟΥΣ 1 3.2 3.3 3.4 ΠΡΑΞΕΙΣ ΜΕ ΕΚΑ ΙΚΟΥΣ ΥΠΟΛΟΓΙΣΜΟΙ ΜΕ ΚΟΜΠΙΟΥΤΕΡΑΚΙ ΤΥΠΟΠΟΙΗΜΕΝΗ ΜΟΡΦΗ ΑΡΙΘΜΩΝ ΘΕΩΡΙΑ 1. Πρόσθεση αφαίρεση δεκαδικών Γίνονται όπως και στους φυσικούς αριθµούς. Προσθέτουµε ή αφαιρούµε τα ψηφία

Διαβάστε περισσότερα

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

Καθηγητής Ε. Χ. ΖΙΟΥΛΑΣ Καθηγητής Ε. Χ. ΖΙΟΥΛΑΣ http://www.zioulas.gr 1. Να γραφεί πρόγραµµα ΓΛΩΣΣΑΣ που διαβάζει την ακτίνα R ενός κύκλου και υπολογίζει και εµφανίζει στην οθόνη το εµβαδό του Ε. Το πρόγραµµα κάνει χρήση τριών

Διαβάστε περισσότερα

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

2.2.3 Η εντολή Εκτύπωσε 2.2.3 Η εντολή Εκτύπωσε Η εντολή Εκτύπωσε χρησιµοποιείται προκειµένου να εµφανίσουµε κάτι στην οθόνη του υπολογιστή. Για τον λόγο αυτό ονοµάζεται και εντολή εξόδου. Ισοδύναµα µπορεί να χρησιµοποιηθεί και

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΕΞΕΤΑΣΕΙΣ ΓΙΑ ΤΑ ΑΝΩΤΕΡΑ ΚΑΙ ΑΝΩΤΑΤΑ ΕΚΠΑΙΔΕΥΤΙΚΑ ΙΔΡΥΜΑΤΑ Μάθημα: Πληροφορική Ημερομηνία και ώρα εξέτασης:

Διαβάστε περισσότερα