ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΚΑΙ ΕΞΕΤΑΣΤΕΑ ΥΛΗ ... · 2011-05-25 ·...
Transcript of ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΚΑΙ ΕΞΕΤΑΣΤΕΑ ΥΛΗ ... · 2011-05-25 ·...
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 1/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ
ΚΑΙ
ΕΞΕΤΑΣΤΕΑ ΥΛΗ
ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Με τις Γλώσσες Προγραμματισμού
Pascal, C, C++, Java
1ο & 2o ΕΠΙΠΕΔΟ
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 2/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
ΓΕΝΙΚΟΣ ΣΚΟΠΟΣ Το αναλυτικό πρόγραμμα έχει ως γενικό σκοπό να δώσει στους συμμετέχοντες τις
απαιτούμενες γνωστικές, κριτικές και αναλυτικές δεξιότητες ώστε να είναι ικανοί να
χρησιμοποιούν τους υπολογιστές για την επίλυση αλγοριθμικών διαθεματικών
προβλημάτων.
ΓΕΝΙΚΟΙ ΣΤΟΧΟΙ Οι συμμετέχοντες που θα ολοκληρώσουν το αναλυτικό πρόγραμμα θα:
• εμβαθύνουν τις γνώσεις τους στις βασικές έννοιες και αρχές της αλγοριθμικής
μεθοδολογίας,
• εμβαθύνουν τις γνώσεις τους στις βασικές έννοιες και αρχές του δομημένου
προγραμματισμού,
• θα γνωρίσουν το συντακτικό και θα κατανοήσουν τη σημασιολογία του δομημένου
προγραμματισμού, όπως η ανάθεση, η επιλογή, η επανάληψη,
• θα ασκηθούν στη σχεδίαση και υλοποίηση ευανάγνωστων, τεκμηριωμένων και
αποδοτικών προγραμμάτων,
• θα ελέγχουν την ορθότητα των προγραμμάτων και την καταλληλότητά τους σε σχέση
με το πρόβλημα και το χρήστη,
• θα αναπτύξουν κριτικές και αναλυτικές δεξιότητες για την επίλυση αλγοριθμικών
διαθεματικών προβλημάτων με τη χρήση ηλεκτρονικού υπολογιστή και
μεταγγλωττιστή της δικής τους επιλογής Συνοπτικό Αναλυτικό Πρόγραμμα Το αναλυτικό πρόγραμμα των εξετάσεων περιλαμβάνει συνοπτικά τα ακόλουθα θέματα:
• Δομή Προγράμματος
• Βασικοί Τύποι Δεδομένων
• Διαδοχική Δομή
• Δομή Διακλάδωσης
• Επαναληπτική Δομή
• Τύποι δεδομένων οριζόμενοι από το χρήστη
• Υποπρογράμματα
• Πίνακες
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 3/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
• Ταξινόμηση
• Αναζήτηση
• Αρχεία Κειμένου
• Σφάλματα στον Προγραμματισμό και Διαχείριση τους
Γλώσσες Προγραμματισμού Οι γλώσσες προγραμματισμού που υποστηρίζονται είναι Pascal, C, C++, JAVA. Οι
υποψήφιοι θα μπορούν να χρησιμοποιήσουν μεταγλωττιστή της επιλογής τους.
Επίπεδα Eξετάσεων Τα στοιχεία του αναλυτικού προγράμματος τα οποία παρουσιάζονται με πράσινο χρώμα
αφορούν στο Επίπεδο 2. Τα υπόλοιπα στοιχεία του αναλυτικού προγράμματος αφορούν στο
Επίπεδο 1. Νοείται ότι οι υποψήφιοι σε εξετάσεις Επιπέδου 2, σε οποιαδήποτε γλώσσα,
γνωρίζουν και κατέχουν επίσης όλα τα στοιχεία του αναλυτικού προγράμματος του
Επιπέδου 1.
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 4/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 1.1.1
Να γνωρίζει και να κατανοεί τις έννοιες κωδικοποίηση, πρόγραμμα, αναγνωριστικά, δεσμευμένες λέξεις.
1. Εισαγωγή
1.1 Βασικές έννοιες
1.1.2
Να χρησιμοποιεί αναγνωριστικά και δεσμευμένες λέξεις.
2.1.1
Να γνωρίζει και να κατανοεί τη γενική μορφή ενός προγράμματος: επικεφαλίδα, δηλωτικό τμήμα, εκτελέσιμο τμήμα.
2. Δομή Προγράμματος
2.1 Γενική μορφή προγράμματος
2.1.2 Να χρησιμοποιεί τα μέρη της γενικής μορφής ενός προγράμματος (επικεφαλίδα, δηλωτικό τμήμα, εκτελέσιμο τμήμα).
program identifier; Σταθερές (const); Μεταβλητές (var); begin ... end.
Βιβλιοθήκες (include)
Σταθερές (define)
Μεταβλητές
int main()
{
return 0;
}
package identifier;
Βιβλιοθήκες(import)
Σταθερές (final)
Μεταβλητές
public static void main (String[] args){
return 0;
}
3. Βασικοί Τύποι Δεδομένων
3.1 Βασικοί τύποι δεδομένων
3.1.1
Να γνωρίζει και να κατανοεί τους βασικούς τύπους δεδομένων: ακέραιος αριθμός, πραγματικός αριθμός, ένας χαρακτήρας, ακολουθία χαρακτήρων, λογικός.
Integer, Real, Char, String, Boolean
Βασικοί τύποι δεδομένων: C: Integer (Long, Short,
Integer types: int, long, short
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 5/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA
3.1.2 Να διακρίνει τις διαφορές μεταξύ των βασικών τύπων δεδομένων (ακέραιος αριθμός, πραγματικός αριθμός, ένας χαρακτήρας, ακολουθία χαρακτήρων, λογικός).
3.1.3 Να γράφει πρόγραμμα χρησιμοποιώντας βασικούς τύπους δεδομένων (ακέραιος αριθμός, πραγματικός αριθμός, ένας χαρακτήρας, ακολουθία χαρακτήρων, λογικός) για την επίλυση προβλήματος.
Signed, Unsigned),
Float, Double, Char
C++: Προηγούμενα + String, Boolean
Floating-Point types: double, float
char
boolean
String object
4.1.1
Να γνωρίζει, να κατανοεί και χρησιμοποιεί τις εντολές εισόδου δεδομένων σε ένα πρόγραμμα και τις εντολές εξόδου πληροφοριών.
4.1 Είσοδος / Έξοδος
4.1.2 Να χρησιμοποιεί τις εντολές εισόδου δεδομένων και τις εντολές εξόδου πληροφοριών (για τον έλεγχο της εκτύπωσης των δεδομένων σε συγκεκριμένη θέση σε γραμμή).
read, readln write, writeln
scanf,
printf
java.io.BufferedReader
java.util.Scanner (not available before Java 5)
System.out.println 4.2 Εντολή
εκχώρησης
4.2.1
Να χρησιμοποιεί την εντολή εκχώρησης τιμών σε μεταβλητές.
:= = =
4.3.1
Να γνωρίζει και να κατανοεί τις αριθμητικές εκφράσεις και την προτεραιότητά τους.
4.3.2 Να χρησιμοποιεί αριθμητικές εκφράσεις και προτεραιότητα.
4. Διαδοχική Δομή
4.3 Εκφράσεις και προτεραιότητα πράξεων
4.3.3 Να γνωρίζει και να κατανοεί τις λογικές εκφράσεις και την προτεραιότητά τους.
NOT * / AND DIV MOD + - OR = <> > < <=
!
* / && %
+ - ||
!
* / %
+ -
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 6/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 4.3.4 Να χρησιμοποιεί λογικές εκφράσεις και προτεραιότητα.
>=
== != > < <= >=
< <= > >=
== !=
&&
||
4.3.5 Να γνωρίζει και να κατανοεί την έννοια εκφράσεις
χαρακτήρων και την προτεραιότητα τους.
4.3.6 Να χρησιμοποιεί εκφράσεις χαρακτήρων και προτεραιότητα.
+ = <> > < <= >=
+ = <> > < <= >=
+ = <> > < <= >=
4.4.1
Να γνωρίζει και να κατανοεί την έννοια ενσωματωμένη συνάρτηση που αφορούν στα μαθηματικά.
4.4 Ενσωματωμένες μαθηματικές συναρτήσεις
4.4.2 Να χρησιμοποιεί ενσωματωμένες συναρτήσεις που αφορούν στα μαθηματικά.
ABS, ARCTAN, CHR, COS, EXP, LN, ODD, ORD, PRED, ROUND, SIN, SQR, SQRT, SUCC, TRUNC, MOD, DIV
fabs, atan2, exp, cos, log, log10, sin, tan, modf, pow, sqrt, ceil, floor, fmod, %, /
java.lang.Math
4.5.1 Να γνωρίζει και να κατανοεί την έννοια ενσωματωμένη συνάρτηση που αφορούν σε συμβολοσειρές
4.5 Ενσωματωμένες συναρτήσεις συμβολοσειρών
4.5.2 Να χρησιμοποιεί ενσωματωμένες συναρτήσεις που αφορούν
length copy concat pos
strlen, strcpy, strcat, strcmp,substr
strlen, strcpy, strcat, strcmp,substr
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 7/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA σε συμβολοσειρές
5.1 Βασικές έννοιες
5.1.1
Να χρησιμοποιεί αριθμητικούς τελεστές ή/και λογικούς τελεστές για τη δημιουργία συνθήκης.
>, >=, <, <=, =, <> NOT, AND, OR
>, >=, <, <=, ==, !=, !, &&, ||
>, >=, <, <=, ==, !=, !, &&, ||
5.2.1
Να γνωρίζει και να κατανοεί την έννοια απλή μορφή δομής διακλάδωσης.
5.2.2
Να αναγνωρίζει την απλή μορφή της δομής διακλάδωσης.
5.2.3
Να γράφει απλή μορφή δομής διακλάδωσης χρησιμοποιώντας απλή συνθήκη.
5.2 Απλή μορφή δομής διακλάδωσης
5.2.4
Να γράφει πρόγραμμα χρησιμοποιώντας την απλή μορφή της δομής διακλάδωσης για την επίλυση προβλήματος.
IF-THEN IF-THEN-ELSE με ένα ή περισσότερους αριθμητικούς τελεστές από τα >, >=, <, <=, =, <> ή ένα ή περισσότερους λογικούς τελεστές από τους NOT, AND, OR
If () {}
if () {} else {}
με ένα ή περισσότερους αριθμητικούς τελεστές από τα >, >=, <, <=, ==, != ή
ένα ή περισσότερους λογικούς τελεστές από τους !, &&, ||
If () {}
If () {} else {}
με ένα αριθμητικό τελεστή από τα >, >=, <, <=, ==, != ή
ένα ή περισσότερους λογικούς τελεστές από τους !, &&, ||
5.3.1
Να γνωρίζει και να κατανοεί την έννοια σύνθετη μορφή δομής διακλάδωσης.
5.3.2
Να αναγνωρίζει τη σύνθετη μορφή της δομής διακλάδωσης.
5. Δομή Διακλάδωσης
5.3 Σύνθετη μορφή δομής διακλάδωσης
5.3.3 Να γράφει σύνθετη μορφή δομής διακλάδωσης
IF-THEN, IF-THEN-ELSE με περισσότερους από ένα
If (), if () else () με περισσότερους από ένα αριθμητικούς τελεστές >, >=, <, <=, ==, != ή
If (), if () else () με περισσότερους από ένα αριθμητικούς τελεστές >, >=, <, <=, ==, != ή
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 8/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA χρησιμοποιώντας σύνθετη συνθήκη.
5.3.4
Να γράφει πρόγραμμα χρησιμοποιώντας τη σύνθετη μορφή της δομής διακλάδωσης για την επίλυση προβλήματος.
αριθμητικούς τελεστές >, >=, <, <=, =, <> ή/και λογικούς τελεστές NOT, AND, OR
με ένα ή περισσότερους λογικούς τελεστές από τους !, &&, ||
με ένα ή περισσότερους λογικούς τελεστές από τους !, &&, ||
5.4.1
Να γνωρίζει και να κατανοεί την έννοια ένθετη μορφή δομής διακλάδωσης.
5.4.2
Να αναγνωρίζει την ένθετη μορφή της δομής διακλάδωσης που δίνεται σε πρόγραμμα.
5.4.3
Να γράφει ένθετη μορφή δομής διακλάδωσης χρησιμοποιώντας απλή ή σύνθετη συνθήκη.
5.4 Ένθετη μορφή δομής διακλάδωσης
5.4.4
Να γράφει πρόγραμμα χρησιμοποιώντας την ένθετη μορφή της δομής διακλάδωσης για την επίλυση προβλήματος.
IF-THEN-ELSE-IF-THEN… με ένα ή περισσότερους αριθμητικούς τελεστές >, >=, <, <=, =, <> ή/και λογικούς τελεστές NOT, AND, OR
If (), if () else () με ένα ή περισσότερους αριθμητικούς τελεστές >, >=, <, <=, ==, != ή
με ένα ή περισσότερους λογικούς τελεστές από τους !, &&, ||
If (), if () else () με ένα ή περισσότερους αριθμητικούς τελεστές >, >=, <, <=, ==, != ή
με ένα ή περισσότερους λογικούς τελεστές από τους !, &&, ||
5.5.1
Να γνωρίζει και να κατανοεί την έννοια περιπτωσιακή δομή.
5.5.2
Να αναγνωρίζει την περιπτωσιακή δομή που δίνεται σε πρόγραμμα.
5.5 Περιπτωσιακή δομή
5.5.3
Να γράφει περιπτωσιακή δομή.
CASE-OF switch ()
{
switch ()
{
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 9/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 5.5.4
Να γράφει πρόγραμμα χρησιμοποιώντας περιπτωσιακή δομή για την επίλυση προβλήματος.
case:
..
..
default:
}
case:
..
..
default:
} 5.6.1
Να διακρίνει τις διαφορές των μορφών της δομής διακλάδωσης (απλή, σύνθετη, ένθετη).
5.6.2 Να διακρίνει τις διαφορές της ένθετης μορφής της δομής διακλάδωσης από την περιπτωσιακή δομή που δίνονται σε πρόγραμμα.
5.6.3 Να επιλέγει την αποτελεσματικότερη μορφή δομής διακλάδωσης (απλή, σύνθετη, ή ένθετη) για την επίλυση προβλήματος.
5.6 Γενικά για δομές διακλάδωσης και για την περιπτωσιακή δομή
5.6.4 Να επιλέγει την αποτελεσματικότερη μορφή της δομής διακλάδωσης (ένθετη ή περιπτωσιακή δομή) για την επίλυση προβλήματος.
6. Επαναληπτική Δομή
6.1 Βασικές έννοιες
6.1.1
Να γνωρίζει και να κατανοεί τις έννοιες επανάληψη, βρόγχος, σώμα της δομής, βρόγχος με γνωστό αριθμό επαναλήψεων, μεταβλητή ελέγχου (μετρητής), αρχική / τελική τιμή μεταβλητής ελέγχου, αύξηση/μείωση μεταβλητής ελέγχου,
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 10/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA βρόγχος με άγνωστο αριθμό επαναλήψεων, δείκτης τέλους δεδομένων.
6.2.1
Να αναγνωρίζει τις μορφές επαναληπτικής δομής με γνωστό αριθμό επαναλήψεων.
6.2.2 Να διακρίνει τις διαφορές των μορφών επαναληπτικής δομής με γνωστό αριθμό επαναλήψεων.
6.2.3 Να επιλέγει την αποτελεσματικότερη επαναληπτική δομή με γνωστό αριθμό επαναλήψεων για την επίλυση προβλήματος.
6.2.4 Να μετατρέπει μια μορφή επαναληπτικής δομής με γνωστό αριθμό επαναλήψεων σε άλλη (όπου είναι δυνατό).
6.2 Βρόγχος με γνωστό αριθμό επαναλήψεων
6.2.5
Να γράφει πρόγραμμα χρησιμοποιώντας μορφή επαναληπτικής δομής με γνωστό αριθμό επαναλήψεων για την επίλυση προβλήματος.
FOR/DO Επίσης: WHILE/DO και REPEAT/UNTIL με τη χρήση έμμεσου μετρητή
for(initial_value;condition;increment)
{
}
Επίσης:
while και do/while με τη χρήση έμμεσου μετρητή
for(initial_value;condition;increment)
{
}
Επίσης:
while και do/while με τη χρήση έμμεσου μετρητή
6.3.1
Να αναγνωρίζει τις μορφές επαναληπτικής δομής με άγνωστο αριθμό επαναλήψεων.
6.3 Βρόγχος με άγνωστο αριθμό επαναλήψεων
6.3.2
Να διακρίνει τις διαφορές των μορφών επαναληπτικής δομής με άγνωστο αριθμό επαναλήψεων.
WHILE/DO REPEAT/UNTIL
while()
{
while()
{
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 11/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 6.3.3
Να επιλέγει την αποτελεσματικότερη επαναληπτική δομή με άγνωστο αριθμό επαναλήψεων για την επίλυση προβλήματος.
6.3.4
Να μετατρέπει μια μορφή επαναληπτικής δομής με άγνωστο αριθμό επαναλήψεων σε άλλη (όπου είναι δυνατό).
6.3.5
Να γράφει πρόγραμμα χρησιμοποιώντας επαναληπτική δομή με άγνωστο αριθμό επαναλήψεων για την επίλυση προβλήματος.
}
do
{
}
while()
}
do
{
}
while()
6.4.1
Να διακρίνει τις διαφορές των μορφών επαναληπτικής δομής (με γνωστό ή άγνωστο αριθμό επαναλήψεων).
6.4.2 Να επιλέγει την αποτελεσματικότερη μορφή επαναληπτικής δομής (με γνωστό ή άγνωστο αριθμό επαναλήψεων) για την επίλυση προβλήματος.
6.4.3 Να μετατρέπει μια μορφή επαναληπτικής δομής με γνωστό ή άγνωστο αριθμό επαναλήψεων σε άλλη, (όπου είναι δυνατό).
6.4 Γενικά για βρόγχους με γνωστό ή άγνωστο αριθμό επαναλήψεων
6.4.4 Να γράφει πρόγραμμα χρησιμοποιώντας ένθετους βρόγχους με γνωστό ή άγνωστο αριθμό επαναλήψεων για την επίλυση προβλήματος.
7.1 Βασικές έννοιες 7.1.1
Να γνωρίζει και να κατανοεί την έννοια βαθμωτός τύπος δεδομένων.
7. Τύποι δεδομένων οριζόμενοι από το χρήστη
7.2 Δεδομένα βαθμωτού τύπου
7.2.1 Να διακρίνει τις διαφορές των βασικών τύπων δεδομένων (ακέραιος αριθμός, πραγματικός αριθμός, ένας χαρακτήρας,
Βασικοί τύποι δεδομένων: Integer, Real, Char, String, Boolean
Βασικοί τύποι δεδομένων: C: Integer (Long, Short, Signed, Unsigned),
Βασικοί τύποι δεδομένων: byte, short, int, long, float, double,
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 12/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA ακολουθία χαρακτήρων, λογικός) από τα δεδομένα βαθμωτού τύπου.
7.2.2 Να γράφει πρόγραμμα χρησιμοποιώντας δεδομένα βαθμωτού τύπου για την επίλυση προβλήματος.
Δεδομένα βαθμωτού τύπου: TYPE
Float, Double, Char
C++: Προηγούμενα + String, Boolean
boolean,char, String
Δεδομένα βαθμοτού τύπου: class
8.1.1
Να γνωρίζει και να κατανοεί τις έννοιες συνάρτηση, επικεφαλίδα συνάρτησης, δηλωτικό μέρος συνάρτησης, σώμα της συνάρτησης, τυπικές παράμετροι, πραγματικές παράμετροι, τοπικές μεταβλητές, γενικές μεταβλητές, εκχώρηση συνάρτησης.
8.1 Βασικές έννοιες
8.1.2
Να γνωρίζει και να κατανοεί τις έννοιες διαδικασία, επικεφαλίδα διαδικασίας, δηλωτικό μέρος διαδικασίας, σώμα της διαδικασίας τυπικές παράμετροι τιμών, τυπικές παράμετροι αναφοράς, τοπικές μεταβλητές, γενικές μεταβλητές.
8.2.1
Να αναγνωρίζει συνάρτηση.
8.2.2
Να διακρίνει τις διαφορές της απλής συνάρτησης από τη συνάρτηση με παραμέτρους.
8.2.3
Να επιλέγει την αποτελεσματικότερη μορφή συνάρτησης (απλή ή με παραμέτρους) για την επίλυση προβλήματος.
8. Υποπρογράμματα
8.2 Συναρτήσεις
8.2.4
Να γράφει πρόγραμμα χρησιμοποιώντας συνάρτηση (απλή ή με παραμέτρους) για την επίλυση προβλήματος.
Function
data_type function_name(arguments);
Method definition:
1. Modifiers—such as public, private
2. The return type
3. The method name
4. The parameter
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 13/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA list in parenthesis
Example: public int function_name(int input)
8.3.1
Να αναγνωρίζει διαδικασία.
8.3.2
Να διακρίνει τις διαφορές της διαδικασίας με τυπικές παραμέτρους τιμών από τη διαδικασία με τυπικές παραμέτρους αναφοράς.
8.3.3
Να επιλέγει την αποτελεσματικότερη μορφή διαδικασίας (με τυπικές παραμέτρους τιμών ή με τυπικές παραμέτρους αναφοράς) για την επίλυση προβλήματος.
8.3 Διαδικασίες
8.3.4
Να γράφει πρόγραμμα χρησιμοποιώντας διαδικασία (με τυπικές παραμέτρους τιμών ή με τυπικές παραμέτρους αναφοράς) για την επίλυση προβλήματος.
8.4.1
Να διακρίνει τις γενικές διαφορές της διαδικασίας από τη συνάρτηση.
8.4 Γενικά για συναρτήσεις και διαδικασίες
8.4.2
Να επιλέγει το αποτελεσματικότερο είδος υποπρογράμματος (συνάρτηση ή διαδικασία) για την επίλυση προβλήματος
Procedure
Void function_name(arguments);
method with void as return type
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 14/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 9.1 Βασικές έννοιες
9.1.1 Να γνωρίζει και να κατανοεί τις έννοιες μονοδιάστατος πίνακας, δεδομένα βαθμωτού τύπου, γραμμή, στήλη, κυψελίδα, δείκτης, μέγεθος πίνακα, στοιχεία πίνακα, παράλληλοι πίνακες.
ARRAY array_name [1..x] of data_type
data_type array_name[1..x]
int[] array_name = new int[100]
9.2.1
Να αναγνωρίζει μονοδιάστατο πίνακα.
9.2.2 Να διακρίνει το μέγεθος μονοδιάστατου πίνακα καθώς και τον τύπο δεδομένων.
9.2.3 Να επιλέγει το κατάλληλο μέγεθος μονοδιάστατου πίνακα καθώς και τον κατάλληλο τύπο δεδομένων για την επίλυση προβλήματος.
9.2.4
Να γράφει πρόγραμμα χρησιμοποιώντας μονοδιάστατο πίνακα για την επίλυση προβλήματος:
• Εισάγει, επεξεργάζεται (άθροισμα, μέσο όρο, μέγιστη/ ελάχιστη τιμή) και εκτυπώνει τα στοιχεία ενός μονοδιάστατου πίνακα.
• Χρησιμοποιεί παράλληλους μονοδιάστατους πίνακες.
ARRAY array_name [1..x] of data_type
data_type array_name[1..x]
int[] array_name = new int[100]
9. Πίνακες
9.2 Μονοδιάστατος πίνακας
9.2.5 Να γράφει πρόγραμμα χρησιμοποιώντας παράλληλους μονοδιάστατους πίνακες.
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 15/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 9.3.1
Να γνωρίζει και να κατανοεί την έννοια του πίνακα δύο διαστάσεων.
9.3.2 Να διακρίνει το μέγεθος πίνακα δύο διαστάσεων καθώς και τον τύπο δεδομένων.
9.3.3 Να επιλέγει το κατάλληλο μέγεθος πίνακα δύο διαστάσεων καθώς και τον κατάλληλο τύπο δεδομένων για την επίλυση προβλήματος.
9.3.4 Να γράφει πρόγραμμα χρησιμοποιώντας πίνακα δύο διαστάσεων για την επίλυση προβλήματος:
• Εισάγει, επεξεργάζεται (άθροισμα, μέσο όρο, μέγιστη/ ελάχιστη τιμή) και εκτυπώνει τα στοιχεία ενός πίνακα δύο διαστάσεων.
• Χρησιμοποιεί παράλληλους πίνακες δύο διαστάσεων.
ARRAY array_name [1..x, 1..y] of data_type
array_name[x] array_name[x][y]
int[][] array_name = new int[100][100]
9.3 Πίνακας δύο διαστάσεων
9.3.5 Να γνωρίζει και να κατανοεί τις έννοιες, τετραγωνικός πίνακας, κύρια διαγώνιος και δευτερεύουσα διαγώνιος τετραγωνικού πίνακα, παράλληλοι πίνακες.
ARRAY array_name [1..x, 1..x] of data_type
array_name[x][x] int[][] array_name = new int[100][100]
9.4.1 Να διακρίνει τις διαφορές ενός μονοδιάστατου πίνακα από ένα πίνακα δύο διαστάσεων.
9.4 Γενικά για μονοδιάστατους πίνακες και πίνακες δύο διαστάσεων
9.4.2
Να επιλέγει την αποτελεσματικότερη μορφή πίνακα (μονοδιάστατο ή πίνακα δύο διαστάσεων), μέγεθος πίνακα και τύπο δεδομένων για την επίλυση προβλήματος.
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 16/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA
9.4.3
Να γράφει πρόγραμμα χρησιμοποιώντας παράλληλους πίνακες δύο διαστάσεων για την επίλυση προβλήματος:
10.1 Βασικές Έννοιες
10.1.1
Να γνωρίζει και να κατανοεί τις έννοιες ταξινόμηση κατά αύξουσα ή φθίνουσα σειρά αριθμών ή/και χαρακτήρων.
10.2.1
Να αναγνωρίζει τις τεχνικές της ταξινόμησης με τη μέθοδο της Φυσαλίδας (ταξινόμηση των στοιχείων μονοδιάστατου πίνακα, των στοιχειών μιας γραμμής, στήλης ή διαγωνίου ενός πίνακα δύο διαστάσεων και των στοιχείων παράλληλων πινάκων σε αύξουσα, φθίνουσα ή αλφαβητική σειρά, ανταλλαγή τιμών δύο μεταβλητών) που δίνονται σε πρόγραμμα.
10. Ταξινόμηση
10.2 Μέθοδος της Φυσαλίδας
10.2.2
Να γράφει πρόγραμμα χρησιμοποιώντας τεχνικές ταξινόμησης στοιχείων μονοδιάστατου πίνακα με τη μέθοδο της Φυσαλίδας για την επίλυση προβλήματος.
11.1 Βασικές Έννοιες
11.1.1
Να γνωρίζει και να κατανοεί την έννοια σειριακή αναζήτηση στοιχείου σε πίνακα.
11. Αναζήτηση
11.2 Σειριακή Αναζήτηση
11.2.1
Να αναγνωρίζει τις τεχνικές σειριακής αναζήτησης στοιχείου σε πίνακα (εύρεση στοιχείου μια ή περισσότερες φορές σε πίνακα, εύρεση του δείκτη ενός στοιχείου σε πίνακα ή/και σε παράλληλους πίνακες, κλπ.) που δίνονται σε πρόγραμμα.
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 17/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 11.2.2
Να γράφει πρόγραμμα χρησιμοποιώντας τεχνικές σειριακής αναζήτησης στοιχείου σε πίνακα για την επίλυση προβλήματος.
Βασικές έννοιες
12.1.1
Να γνωρίζει και να κατανοεί τις έννοιες αρχείο κειμένου, όνομα αρχείου κειμένου, δημιουργία αρχείου κειμένου, άνοιγμα και κλείσιμο αρχείου κειμένου, τέλος γραμμής, κειμένου και αρχείου, εγγραφή σε αρχείο κειμένου, προσπέλαση αρχείου κειμένου.
12.2.1 Να καθορίζει το όνομα ενός αρχείου κειμένου. Assign
fopen(filename, param);
java.io.FileReader
public FileReader(String fileName)
12.2.2 Να δημιουργεί ένα αρχείο κειμένου.
Rewrite
param = “w” java.io.FileWriter
public FileWriter(String fileName)
12.2.3 Να ανοίγει ένα αρχείο κειμένου.
Reset
param = “r” reset()
Αρχεία Κειμένου
Τεχνικές αρχείων κειμένου
12.2.4 Να κλείνει ένα αρχείο κειμένου.
Close
fclose close()
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 18/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 12.2.5 Να χρησιμοποιεί αναγνωριστικά για το τέλος του αρχείου
κειμένου ή γραμμής.
πχ EOF
feof, ready()
12.2.6 Να διαβάζει από αρχείο κειμένου.
Read, readln
fscanf BufferedReader input = new BufferedReader(new FileReader(filename));
input.readLine() 12.2.7 Να γράφει σε αρχείο κειμένου.
Write, Writeln
fprintf Writer output = new BufferedWriter(new FileWriter(filename));
output.write() 12.2.8 Να παρουσιάζει τα αποτελέσματα ενός αρχείου κειμένου
στην οθόνη.
Write, Writeln
printf System.out.println
12.2.9
Να γράφει πρόγραμμα που διαβάζει δεδομένα από αρχείο κειμένου, τα επεξεργάζεται και αποθηκεύει τα αποτελέσματα σε νέο αρχείο κειμένου.
12.3 Αρχεία Κειμένου – Προχωρημένες Έννοιες
12.3.1 Να ταξινομεί ένα αρχείο κειμένου.
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 19/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA 12.3.2 Να δημιουργεί αρχείο κειμένου από υπάρχων ταξινομημένο
αρχείο με την παρεμβολή δεδομένων.
12.3.3 Να συγχωνεύει δύο αρχεία κειμένου σε τρίτο αρχείο.
12.3.4 Να διεκπεραιώνει σειριακή αναζήτηση σε αρχείο κειμένου.
13.1 Βασικές έννοιες
13.1.1
Να γνωρίζει και να κατανοεί τις έννοιες σφάλματα, αποσφαλμάτωση, είδη σφαλμάτων: συντακτικά, σημασιολογικά, σφάλματα κατά το χρόνο μεταγλώττισης, λογικά σφάλματα, σφάλματα κατά το χρόνο εκτέλεσης, προκαταρκτική εκτέλεση.
13.2.1 Να διακρίνει τα είδη σφαλμάτων: • Συντακτικά (Syntax) • Σημασιολογικά (Semantic) • Σφάλματα κατά το χρόνο μεταγλώττισης (Compile-
time errors) • Λογικά (Logical) • Σφάλματα κατά το χρόνο εκτέλεσης (Run-time errors)
13. Σφάλματα
στον
Προγραμματισμ
ό και Διαχείριση
τους.
13.2 Δοκιμαστικά δεδομένα και είδη σφαλμάτων
13.2.2 Να διορθώνει τα διάφορα είδη σφαλμάτων (αποσφαλμάτωση - Debugging) σε πρόγραμμα για την επίλυση προβλήματος:
• Συντακτικά (Syntax)
Αναλυτικό Πρόγραμμα Εξετάσεων Προγραμματισμού με τη Χρήση Ηλεκτρονικού Υπολογιστή και Μεταγλωττιστή στις Γλώσσες Προγραμματισμού PASCAL, C, C++ και JAVA
Αναλυτικό Πρόγραμμα Εξετάσεων Σελίδα: 20/20 Απρίλιος 2011 Γλωσσών Προγραμματισμού – ´Éκδοση 1.0 Copyright © Cyprus Computer Society
Ενότητα Γνωστική Περιοχή Αναφορά Γνωστικό Αντικείμενο / Στόχοι - Ο εκπαιδευόμενος: PASCAL C & C++ JAVA • Σημασιολογικά (Semantic) • Σφάλματα κατά το χρόνο μεταγλώττισης (Compile-
time errors) • Λογικά (Logical) • Σφάλματα κατά το χρόνο εκτέλεσης (Run-time errors)
13.2.3 Να δημιουργεί κατάλληλα δοκιμαστικά δεδομένα (Test Data) για την επιβεβαίωση της ορθότητας ενός προγράμματος χρησιμοποιώντας τη μέθοδο της προκαταρκτικής εκτέλεσης ή οποιαδήποτε άλλη μέθοδο ελέγχου.