ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ

Σχετικά έγγραφα
ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΝΕΟ ΚΑΙ ΠΑΛΑΙΟ ΣΥΣΤΗΜΑ

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

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2018 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος

#include <stdlib.h> Α. [-128,127] Β. [-127,128] Γ. [-128,128]

ΕΡΓΑΣΙΑ 1 Ημερομηνία Ανάρτησης: 02/02/2017 Ημερομηνία Παράδοσης: 16/02/2017, 09:00 π.μ. Στόχος Ορισμός

Βασικά Στοιχεία της Java

α. Οι συμβολοσειρές είναι μια ακολουθία από χαρακτήρες. Μια συμβολοσειρά μπορεί να αποτελείται από περισσότερες από μία λέξεις.

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2018 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 1o Μέρος

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ ΥΠΟΛΕΙΠΟΜΕΝΕΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ

Διάλεξη 22: Δυαδικά Δέντρα. Διδάσκων: Παναγιώτης Ανδρέου

Θεωρητικό Μέρος. int rec(int n) { int n1, n2; if (n <= 5) then return n; else { n1 = rec(n-5); n2 = rec(n-3); return (n1+n2); } }

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

8.4. Δραστηριότητες - ασκήσεις

Εργασία για το Facility Game Μάθημα: Δομές Δεδομένων Σωτήρης Γυφτόπουλος

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

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

Δομές Δεδομένων. Ενότητα 7: Άλλες παραλλαγές Συνδεδεμένων Λιστών-Παράσταση Αραιού Πολυωνύμου με Συνδεδεμένη Λίστα. Καθηγήτρια Μαρία Σατρατζέμη

Διάλεξη 17: Δυαδικά Δέντρα. Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Βασικά Στοιχεία της Java

Τύποι δεδομένων, τελεστές, μεταβλητές

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

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

Προγραμματισμός Χειμερινό Εξάμηνο 2014

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

Προγραμματισμός Δομές Δεδομένων

Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα).

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 10 Ο. Δομές Ενώσεις Απαριθμητοί τύποι δεδομένων ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Υπολογισμός - Συλλογή Δεδομένων - Πίνακες

Προγραμματισμός. Εαρινό Εξάμηνο 2011

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

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

Εισαγωγή στην Πληροφορική

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

Φτιάξτε µια φόρµα στην οποία θα υπάρχουν δυο κουµπιά εντολών. Το ένα κουµπί θα ανοίγει τη φόρµα «Βαθµολογίες µαθητών» και το δεύτερο κουµπί θα οδηγεί

ΤΕΛΙΚΟ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ

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

HY-486 Αρχές Κατανεμημένου Υπολογισμού

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

Κεφάλαιο V: Δομές και ενώσεις. 5.1 Δομές.

Γ7.8 Εγγραφές (Structures) Γ Λυκείου Κατεύθυνσης

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ΚΑΙ Β ) ΤΡΙΤΗ 13 ΙΟΥΝΙΟΥ 2017

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΤΕΛΟΣ 1ΗΣ ΑΠΟ 6 ΣΕΛΙ ΕΣ

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Δομημένος Προγραμματισμός

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 1. Χειμερινό Εξάμηνο

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

ΕΠΛ131 Αρχές Προγραμματισμού Ι

ΘΕΜΑΤΑ ΤΕΛΙΚΗΣ ΦΑΣΗΣ

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Παίρνοντας Αποφάσεις 1

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

Διδάσκων: Παναγιώτης Ανδρέου

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΡΤΙΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 6 (ΕΞΙ)

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Για i από 1 μέχρι Μ Εμφάνισε A[4,i] Τέλος_επανάληψης. (μονάδες 6) ΤΕΛΟΣ 1ης ΑΠΟ 7 ΣΕΛΙΔΕΣ

HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο

Ηλεκτρονικοί Υπολογιστές

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf("%u\n", x); Β. unsigned char

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

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

Βιβλιοθήκες Αφηρημένοι τύποι δεδομένων. Προγραμματισμός II 1

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

ΗΥ240: Δοµές Δεδοµένων Εαρινό Εξάµηνο Ακαδηµαϊκό Έτος 2017 Διδάσκουσα: Παναγιώτα Φατούρου Προγραµµατιστική Εργασία - 1 ο Μέρος

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων

Εργαστήριο 4: Υλοποίηση Αφηρημένου Τύπου Δεδομένων: Ταξινομημένη Λίστα

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος Προγραμματιστική Εργασία - 2o Μέρος

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ

Προγραμματισμός ΙI (Θ)

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33

ΗΥ240: Δοµές Δεδοµένων Εαρινό Εξάµηνο Ακαδηµαϊκό Έτος 2016 Διδάσκουσα: Παναγιώτα Φατούρου Προγραµµατιστική Εργασία - 1 ο Μέρος

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C

Κεφάλαιο 7: Υπορουτίνες

ΛΥΚΕΙΟ ΣΟΛΕΑΣ Σχολική χρονιά

ΗΥ240: οµές εδοµένων Χειµερινό Εξάµηνο Ακαδηµαϊκό Έτος Παναγιώτα Φατούρου. Προγραµµατιστική Εργασία 3 ο Μέρος

Α Β Γ static; printf("%c\n", putchar( A +1)+2); B DB BD. int i = 0; while (++i); printf("*");

Διδάσκων: Παναγιώτης Ανδρέου

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

Εντολές επιλογής Επαναλήψεις (if, switch, while)

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

Άσκηση 1. Α. Υπολογίστε χωρίς να εκτελέσετε κώδικα FORTRAN τα παρακάτω: Ποιά είναι η τελική τιμή του Z στα παρακάτω κομμάτια κώδικα FORTRAN:

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2017 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος

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

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

Προγραμματισμός II (Γλώσσα C)

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

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).

Τεχνολογία και Προγραμματισμός Υπολογιστών. Η γλώσσα προγραμματισμού C

Διάλεξη 11: Φροντιστήριο για Στοίβες. Διδάσκων: Παναγιώτης Ανδρέου. ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. Και Μηχ. Υπολ.

Τελικός Κύκλος Διαγωνισμάτων Γ ΛΥΚΕΙΟΥ Κυριακή 17 Απριλίου 2016 Μάθημα: Α.Ε.Π.Π. KTIΡΙΟ ΤΜΗΜΑΤΑ ΚΑΛΟΚΑΙΡΙΝΑ ΑΡΓΥΡΟΥΠΟΛΗΣ - ΗΛΙΟΥΠΟΛΗΣ - ΓΛΥΦΑΔΑΣ

Transcript:

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Ακαδημαϊκό έτος 2007-2008 ΤΡΙΤΟΣ ΚΥΚΛΟΣ ΑΣΚΗΣΕΩΝ Οι παρακάτω ασκήσεις είναι μέρος των εργαστηρίων του μαθήματος Προγραμματιστικές Τεχνικές. Υπάρχουν τέσσερις κύκλοι ασκήσεων. Ο τρίτος κύκλος αντιστοιχεί στο 15% του συνολικού βαθμού. Η υποβολή του προγράμματος αυτόματα δηλώνει ότι είσθε οι μοναδικοί συγγραφείς της λύσης της άσκησης. Εάν το πρόγραμμα ή μέρος αυτού έχει αντιγραφεί θα πρέπει να αναφέρεται η πηγή του και ο συγγραφέας του. ΑΣΚΗΣΗ 3-1. (40%) Α. ΠΕΡΙΓΡΑΦΗ Σχεδιάστε και υλοποιήσετε ένα πρόγραμμα στη γλώσσα προγραμματισμού C το οποίο θα υπολογίζει μία από τις ρίζες ενός πολυωνύμου χ 0 που βρίσκεται ανάμεσα σε δύο σημεία χ 1, χ 2. Συγεκριμένα, σ αυτή την άσκηση θα χρησιμοποιήσετε ένα αλγόριθμο που ονομάζεται bisection. H ιδέα είναι ότι εάν έχουμε μία συνάρτηση f η οποία είναι συνεχής στο διάστημα [x1, x2] και το πρόσημα f(x1), f(x2) διαφέρουν τότε υπάρχει τουλάχιστον μία ρίζα x0 της f μεταξύ των σημείων x1, x2. Ο αλγόριθμος είναι απλός και δίδεται παρακάτω. Αυτή η άσκηση εξετάζει την υλοποίηση αυτού του αλγόριθμου Bisection Κενρική ιδέα: Ας υποθέσουμε ότι η συνάρτηση f η οποία είναι συνεχής στο διάστημα [x 1, x 2 ] και το πρόσημα f(x 1 ), f(x 2 ) διαφέρουν (Σχήμα 1). Τότε υπάρχει τουλάχιστον μία ρίζα x 0 της f μεταξύ των σημείων x 1, x 2. Η ερώτηση είναι πώς υπολογίζουμε το χ 0?

f(x) X0 x x1 x2 Σχήμα 1 Το σημείο x 0 υπολογίζεται με τον παρακάτω αλγόριθμο. f1 = f(x1) if(f1*f(x2) >0) then error = true /* Δεν υπάρχει ρίζα μεταξύ του χ1 και του χ2 */ else error = false x_middle = (x1+x2)/2 while(abs((x1 x_middle)) > epsilon) { f_mid = f(x_middle) if(f1 * f_mid) <= 0) then x2 = x_middle else x1 = x_middle f1 = f_mid endif x_middle = (x1+x2)/2 endwhile root = x_middle endif Το πρόγραμμά σας θα διαβάζει από τον χρήστη ένα πολυώνυμο με τη παρακάτω μορφή π.χ.: ΒΑΘΜΟΣ ΠΟΛΥΩΝΥΜΟΥ?: 2 ΣΥΝΤΕΛΕΣΤΗΣ ΟΡΟΥ 2?: 4 ΣΥΝΤΕΛΕΣΤΗΣ ΟΡΟΥ 1?: 4 ΣΥΝΤΕΛΕΣΤΗΣ ΟΡΟΥ 0?: 1 Η ΤΙΜΗ Χ1 είναι?: -1 Η ΤΙΜΗ Χ2 είναι?: 1 Το παραπάνω πολυώνυμο του παραδείγματος είναι το 4χ 2 + 4χ + 1 Το πρόγραμμα θα τυπώνει το παρακάτω αποτέλεσμα Η ΡΙΖΑ ΤΟΥ ΠΟΛΥΩΝΥΜΟΥ 4χ^2 + 4χ + 1 ΜΕΤΑΞΥ -1 ΚΑΙ 1 ΕΙΝΑΙ -0.5 Το πρόγραμμα θα σταματάει όταν ο χρήστης δώσει σαν βαθμό πολυωνύμου 0.

Β. ΤΙ ΘΑ ΠΡΕΠΕΙ ΝΑ ΠΑΡΑΔΩΣΕΤΕ Τον πηγαίο κώδικά σας σε ένα ξεχωριστό αρχείο έτοιμο να συμβολο-μεταφραστεί με τη χρήση του συμβολομεταφραστεί με το εργαλείο gcc ή στο περιβάλλον DevC++. Στις πρώτες γραμμές του πηγαίου κώδικα να αναφέρετε τα ονόματα σας και τους αριθμούς των φοιτητικών μητρώων σας. Θα αποστείλετε τον πηγαίο κώδικά σας με e-mail στη διεύθυνση που θα ανακοινωθεί στο μάθημα. Τα αποτελέσματα του προγράμματος θα πρέπει να είναι στη μορφή που παρουσιάσθηκε παραπάνω. ΒΑΘΜΟΛΟΓΙΑ Η βαθμολογία υπολογίζεται με άριστα το 50 ως εξής: -10% του βαθμού της άσκησης για τη μη επεξήγηση του αλγόριθμου -15% του βαθμού της άσκησης για κακή στοίχιση του πηγαίου κώδικα -5% του βαθμού της άσκησης για ελλιπή σχόλια στον πηγαίο κώδικα -5% του βαθμού της άσκησης για κακή ονομασία των μεταβλητών -5% του βαθμού της άσκησης για κακή χρήση εντολών (π.χ. παραπάνω από ότι χρειάζονται εντολές) -50% του βαθμού της άσκησης για τη συνολική μη σωστή λειτουργία του προγράμματος και της μορφής εκτύπωσης. ΑΣΚΗΣΗ 3-2. (60%) Α. ΠΕΡΙΓΡΑΦΗ Σχεδιάστε και υλοποιήσετε ένα πρόγραμμα στη γλώσσα προγραμματισμού C το οποίο θα υλοποιεί μία μικρή βάση δεδομένων με τους μαθητές μίας τάξης και θα υπολογίζει τον τελικό βαθμό κάθε μαθητή και το μέσο όρο της τάξης. Ο κάθε μαθητής θα μοντελοποιείται με μια δομή (struct) στη παρακάτω μορφή: typedef struct { char * firstname; char * lastname; int idnumber; studentrecordtype * marks; } studenttype;

Ο «φάκελος» κάθε μαθητή με τους βαθμούς της πρώτης και δεύτερης άσκησης, της προόδου, και του τελικού διαγωνίσματος μοντελοποιούνται σε μία δομή όπως παρακάτω: typedef struct { float firstassignment; /* Ο βαθμός της πρώτης άσκησης */ float secondassignment; /* Ο βαθμός της δεύτερης άσκησης */ float midterm; /* Ο βαθμός της προόδου */ float final; /* Ο βαθμός του τελικού διαγωνίσματος */ float finalmark; /* Ο γενικός βαθμός για το μάθημα */ } StudentRecordType; Υπολογίστε ότι για αυτή την ιδεατή τάξη η πρώτη άσκηση είναι το 10% του βαθμού, η δεύτερη άσκηση το 15% του βαθμού, η πρόοδος το 25% του βαθμού, και το τελικό διαγώνισμα το 50% του βαθμού. Όλες οι βαθμολογίες τους είναι με άριστα το 100. Η τάξη θα είναι υλοποιημένη σαν μία συνδεδεμένη λίστα που κάθε κόμβος της θα είναι της μορφής struct classnodestruct{ StudentType *astudent; classnodestruct *next; }; typedef struct classnodestruct classnodetype; Γραφικά η «Τάξη» θα είναι:

*astudent *next *astudent *next.. *astudent *next firstname lastname idnumber *marks firstassignment secondassignment midterm final finalmark <αριθμός μαθητών> <όνομα> <επώνυμο> <βαθμός πρώτης άσκησης> <βαθμός δεύτερης άσκησης> <βαθμός προόδου> <βαθμός τελικού διαγωνίσματος> <όνομα> <επώνυμο> <βαθμός πρώτης άσκησης> <βαθμός δεύτερης άσκησης> <βαθμός προόδου> <βαθμός τελικού διαγωνίσματος>... END Π.χ. 20 Yiannis Yiannopoulos 90 78 67 80 Kostas Kontogiannis 50 60 40 90. END Να υλοποιήσετε ένα πρόγραμμα το οποίο: 1. Θα διαβάζει τα δεδομένα 2. Θα υπολογίζει τον τελικό βαθμό κάθε μαθητή 3. Θα υπολογίζει το μέσο όρο της τάξης 4. Θα τυπώνει τα αποτελέσματα με τη παρακάτω μορφή.

ΑΠΟΤΕΛΕΣΜΑΤΑ ------------------------- ΑΝΑΛΥΤΙΚΑ <όνομα> <επώνυμο> <τελικός βαθμός> <όνομα> <επώνυμο> >τελικός βαθμός>... ΜΕΣΟΣ ΟΡΟΣ ΤΑΞΗΣ <μέσος όρος> Κάθε μία από τις παραπάνω λειτουργίες 1-4 θα πρέπει να υλοποιείται σαν μία ξεχωριστή συνάρτηση, Η βάση θα πρέπει να υλοποιηθεί σαν ένα διάνυσμα δομών στοιχείων τύπου StudentType ή σαν ένα διάνυσμα δεικτών σε δομές τύπου StudentType. Β. ΤΙ ΘΑ ΠΡΕΠΕΙ ΝΑ ΠΑΡΑΔΩΣΕΤΕ Τον πηγαίο κώδικά σας σε ένα ξεχωριστό αρχείο έτοιμο να συμβολο-μεταφραστεί με τη χρήση του συμβολομεταφραστεί με το εργαλείο gcc ή στο περιβάλλον DevC++. Στις πρώτες γραμμές του πηγαίου κώδικα να αναφέρετε τα ονόματα σας και τους αριθμούς των φοιτητικών μητρώων σας. Θα αποστείλετε τον πηγαίο κώδικά σας με e-mail στη διεύθυνση που θα ανακοινωθεί στο μάθημα. Τα αποτελέσματα του προγράμματος θα πρέπει να είναι στη μορφή που παρουσιάσθηκε παραπάνω. ΒΑΘΜΟΛΟΓΙΑ Η βαθμολογία υπολογίζεται με άριστα το 50 ως εξής: -15% του βαθμού της άσκησης για κακή στοίχιση του πηγαίου κώδικα -5% του βαθμού της άσκησης για ελλιπή σχόλια στον πηγαίο κώδικα -5% του βαθμού της άσκησης για κακή ονομασία των μεταβλητών -5% του βαθμού της άσκησης για κακή χρήση εντολών (π.χ. παραπάνω από ότι χρειάζονται εντολές) -50% του βαθμού της άσκησης για τη συνολική μη σωστή λειτουργία του προγράμματος και της μορφής εκτύπωσης.