Δείτε τώρα και πώς θα έπρεπε να ήταν το παραπάνω: Page 1

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Δείτε τώρα και πώς θα έπρεπε να ήταν το παραπάνω: Page 1"

Transcript

1 Επειδή αρκετοί εξακολουθείτε να βάζετε σχόλια στην ίδια γραµµή αλλά πολύ πιο "δεξιά" από τον κώδικα που σχολιάζουν, δείτε παρακάτω πώς µοιάζει ένα τέτοιο πρόγραµµα σε συµβατικό terminal. Όπως έχουµε πει και στο φυλλάδιο "Αρχές καλού προγραµµατισµού", πρέπει να αποφεύγετε να γράφετε πέρα από την 80ή στήλη µιας γραµµής (η οποία µαρκάρεται µε κόκκινη γραµµή στο παρακάτω terminal) Επι τη ευκαιρία, δείτε στο παρακάτω παράδειγµα ότι δεν είναι καθόλου προφανές πού τελειώνει η insertnth και πού ξεκινά η removenth. Εδώ θα βοηθούσε πολύ να υπήρχαν σχόλια συνάρτησης πάνω από τη removenth. Δείτε τώρα και πώς θα έπρεπε να ήταν το παραπάνω: Page 1

2 ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ Σωστή υλοποίηση της print_list(). - Σωστή υλοποίηση της insertnth(). - Σωστή υλοποίηση της removenth(). - Καλά σχόλια και σωστή στοίχιση Σωστή υλοποίηση της print_list(). - Σωστή υλοποίηση της insertnth(). - Σωστή υλοποίηση της removenth(). - Καλά σχόλια και σωστή στοίχιση Σωστή insertnth(). - Σωστή removenth(). - Καλά σχόλια και σωστή στοίχιση Καλή στοίχιση - ΔΕΝ έχετε σχεδόν καθόλου σχόλια - Το πρόγραµµα τυπώνει σωστά τη λίστα - Η insertνth λειτουργεί µεν, αλλά δεν είναι καλά υλοποιηµένη. Διατρέχετε τη λίστα πολύ περισσότερες φορές από όσες χρειάζεται. Προσπαθήστε να την ξαναγράψετε διατρέχοντας τη λίστα το πολύ µια φορά. Δε χρειάζεται να υπολογίζετε το µήκος της (απλά τσεκάρετε αν φτάσατε σε NULL) και οι µόνες περιπτώσεις που χρειάζεται να χειριστείτε είναι για pos == 0 και για pos > 0 - Όταν η removenth λειτουργεί σωστά είναι κατά λάθος, αν τύχει το count να πάρει αρχική τιµή 0. Δεν το έχετε αρχικοποιήσει. Επίσης, αν κληθεί σε άδεια λίστα, θα πετάξει segmentation fault στο *list_head=(*list_head)->next->next; Επίσης, δε λειτουργεί σωστά στην περίπτωση που ζητηθεί να αφαιρεθεί ο τελευταίος κόµβος (δοκιµάστε αφαίρεση από τη θέση 6 αντί για 20 στην τελευταία κλήση στη main). Όπως ειπώθηκε στο εργαστήριο, πρέπει πάντα να ελέγχετε τις οριακές περιπτώσεις. Διαδικαστικά: Καθυστερήσατε αρκετά να στείλετε την άσκηση - έπρεπε να µπορείτε να τελειώσετε µία άσκηση σε 2.5 ώρες! 1899 FAIL - Λάθος print_list(). Η ανανέωση του δείκτη έπρεπε να ήταν curr = curr->next, όχι curr->next = curr - Τι σκοπό εξυπηρετεί οο πρώτο for στην insertnth? Απλά κάνει το count ίσο µε το pos. Δε χρειάζεται ολόκληρο loop για να κάνετε κάτι τέτοιο! - Μετά από κάθε κλήση της malloc πρέπει να ελέγχετε αν επέστρεψε NULL κι αν ναι να κάνετε κάτι λογικό (στη συγκεκριµένη περίπτωση να επιστρέφετε FAILURE) - Στην insertnth, στην περίπτωση που το pos δεν είναι µηδέν, δεν εισάγετε τον κόµβο στη σωστή θέση. - Στη removenth το loop δεν έχει συνθήκη τερµατισµού. Page 2

3 Διαδικαστικά: Καθυστερήσατε αρκετά να στείλετε την άσκηση - έπρεπε να µπορείτε να τελειώσετε µία άσκηση σε 2.5 ώρες! 1900 FAIL Λάθος print_list(). Η ανανέωση του δείκτη έπρεπε να ήταν curr = curr->next, όχι curr->next = curr - Τι σκοπό εξυπηρετεί οο πρώτο for στην insertnth? Απλά κάνει το count ίσο µε το pos. Δε χρειάζεται ολόκληρο loop για να κάνετε κάτι τέτοιο! - Μετά από κάθε κλήση της malloc πρέπει να ελέγχετε αν επέστρεψε NULL κι αν ναι να κάνετε κάτι λογικό (στη συγκεκριµένη περίπτωση να επιστρέφετε FAILURE) - Στην insertnth, στην περίπτωση που το pos δεν είναι µηδέν, δεν εισάγετε τον κόµβο στη σωστή θέση. - Στη removenth το loop δεν έχει συνθήκη τερµατισµού. - Τα σχόλια τα βάζουµε πάνω από τον κώδικα και όχι δίπλα. - remove_duplicates: Αφαιρείτε τους κόµβους από την λίστα, αλλά δεν ελευθερώνετε τη µνήµη που έχει δεσµευτεί για αυτούς. Επαναλάβετε την άσκηση στο σπίτι Σχόλια: Δεν υπήρχαν καθόλου σχόλια. - Υπήρξε πολύ µεγάλη καθυστέρηση στην ολοκλήρωση και αποστολή της άσκησης. Γνωρίζετε πολύ καλά οτι η άσκηση θα πρέπει να έχει αποσταλεί πριν το πέρας της διαθέσιµης ώρας του εργαστηρίου! - Στοίχιση: OK - Ονόµατα µεταβλητών: OK - Σχόλια: Ελάχιστα - create_duplicates: --- Διπλασιασµός: ανάθεση δεικνούµενου αντικειµένου πριν γίνει ο έλεγχος για failure (τι θα γίνει αν pointer == NULL στην εντολή *pointer=*current ;). Επίσης, µην κάνετε ποτέ αναθέσεις της µορφής *pointer=*current ; όταν τα εµπλεκόµενα structs έχουν πεδία που είναι pointers. --- Επιστροφή: Επιστρέφει 0/1 αντί για SUCCESS/FAILURE - remove duplicates: --- Αφαίρεση: Δεν γίνεται σωστή αφαίρεση, έτσι όπως είναι γραµµένο αφαιρεί µόνο τα διαδοχικά ίδια. Δε θα λειτουργήσει αν η λίστα είναι πχ free: ΟΚ. --- Ξανακάντε την άσκηση στο σπίτι µε βάση τις παραπάνω επισηµάνσεις. Page 3

4 Σχόλια: Τα σχόλια πρέπει να µπαίνουν πάνω απο τον κώδικα και οχι απο δίπλα γιατί δεν χωράνε και σε µικρότερη οθόνη διπλώνονται στην απο κάτω γραµµή. Κατα τα άλλα σωστά σχόλια, αλλά το if είναι περιττό και δείχνει µη-κατανόηση της λειτουργίας της for: Εφόσον ο µόνος τρόπος να µπούµε στο σώµα της for είναι η συνθήκη curr!=null, τότε προφανώς η συνθήκη της if θα είναι πάντα αληθής Σωστή duplicate_list(). Για την περίπτωση που η malloc() είναι σωστότερο να επιστρέφουµε απλά FAILURE, αφήνοντας αυτόν που κάλεσε την duplicate_list() να διαχειριστεί όπως θέλει την αποτυχία δέσµευσης µνήµης. - Σωστή remove_duplicates(). - Στοίχιση: ΟΚ - Ονόµατα µεταβλητών: ΟΚ - Σχόλια: Κανένα Σχόλιο! - create_duplicates: --- Διπλασιασµός: OK --- Επιστροφή: OK - remove duplicates: --- Αφαίρεση: η γραµµή iter_prev = current->next; θα έπρεπε να είναι iter_prev = iter και να βρίσκεται πριν το iter=iterm->next. Ίσως να µην καταλάβατε την εκφώνηση, προσπαθήστε να την ξανακάνετε σπίτι. Σαν τέστ, αλλάξτε την print_list ώστε να εκτυπώνει και τη διεύθυνση, και στην remove πριν κάνετε free τον κόµβο, εκτυπώστε επίσης τη διεύθυνση και τα περιεχόµενα. Θα δείτε ότι τελικά δε σβήνετε όλους τους κόµβους, αλλά βάζετε τα βελάκια έτσι ώστε να παρακάµψετε κάποιους. --- free: ΟΚ Η print_list() δεν είναι σωστή. Αν κληθεί σε άδεια λίστα, το list_head θα είναι NULL οπότε θα πετάξει segmentation fault στην προσπέλαση list_head- >data.το σωστό θα ήταν να είχες αρχικοποιήσει το curr που είναι µέσα στο loop σε list_head και κάθε εκτύπωση να γίνεται µόνο µέσα στο loop (οπότε και το curr θα είναι εγγυηµένα διάφορο του NULL) - Σωστή insertnth() αλλά έχεις πολύ επιπλέον κώδικα. Διατρέχεις δύο φορές τη λίστα ενώ θα µπορούσες να τη διατρέξεις µία φορά έως ότου είτε φτάσεις σε NULL είτε προχωρήσεις κατά pos κόµβους. Γενικά είναι πολύ µπερδεµένη συνάρτηση. Προσπάθησε να την ξαναφτιάξεις ώστε να είναι πιο συνοπτική. - Σωστή removenth() και υλοποιηµένη µε πιο συνοπτικό τρόπο. - Καθόλου σχόλια και αρκετά άσχηµη στοίχιση. Μην αφήνεις τόσες πολλές κενές γραµµές. Page 4

5 Στοίχιση: ΟΚ - Ονόµατα µεταβλητών: ΟΚ - Σχόλια: Κανένα Σχόλιο! - create_duplicates: --- Διπλασιασµός: OK --- Επιστροφή: OK - remove duplicates: --- Αφαίρεση: η γραµµή iter_prev = current->next; θα έπρεπε να είναι iter_prev = iter και να βρίσκεται πριν το iter=iterm->next. Ίσως να µην καταλάβατε την εκφώνηση, προσπαθήστε να την ξανακάνετε σπίτι. Σαν τέστ, αλλάξτε την print_list ώστε να εκτυπώνει και τη διεύθυνση, και στην remove πριν κάνετε free τον κόµβο, εκτυπώστε επίσης τη διεύθυνση και τα περιεχόµενα. Θα δείτε ότι τελικά δε σβήνετε όλους τους κόµβους, αλλά βάζετε τα βελάκια έτσι ώστε να παρακάµψετε κάποιους. --- free: ΟΚ - Σχόλια: OK - Έπρεπε να χρησιµοποιήσετε SUCCESS/FAILURE αντί για 1/0, αλλά µην κάνετε ποτέ αναθέσεις της µορφής *new_node=*ptr; όταν τα εµπλεκόµενα structs έχουν πεδία που είναι pointers. Επίσης, στην περίπτωση που αποτυγχάνει η malloc έπρεπε να επιστρέφετε FAILURE. Σε κάθε περίπτωση, πριν τον τερµατισµό ενός προγράµµατος πρέπει να ελευθερώνετε τη δυναµικά δεσµευµένη µνήµη. - Σχόλια: OK - Έπρεπε να χρησιµοποιείτε SUCCESS/FAILURE αντί για 1/0 - remove_duplicates: Αφαιρείτε τους κόµβους από την λίστα, αλλά δεν ελευθερώνετε τη µνήµη που έχει δεσµευτεί για αυτούς. Επαναλάβετε την άσκηση στο σπίτι. Page 5

6 Σχόλια: Τα σχόλια πρέπει να µπαίνουν πάνω απο τον κώδικα και οχι απο δίπλα γιατί δεν χωράνε και σε µικρότερη οθόνη διπλώνονται στην απο κάτω γραµµή. Κατα τα άλλα σωστά σχόλια Διαδικαστικά: Καθυστερήσατε αρκετά να στείλετε την άσκηση - έπρεπε να µπορείτε να τελειώσετε µία άσκηση σε 2.5 ώρες! - Το πρόγραµµα τερµατίζει µε segmentation fault µόλις πάει να αφαιρέσει το τελευταίο στοιχείο της λίστας, γιατί έχετε υλοποιήσει λάθος τη removenth - Σχόλια και στοίχιση οκ - Η κλήση της malloc είναι (listt *) malloc(sizeof(listt)) - Σωστή υλοποίηση της insertnth - Δεν υλοποιείτε σωστά την removenth: --- Δεν υλοποιείτε την περίπτωση διαγραφής από την αρχή της λίστας (την κεφαλή της λίστας) --- Γράφοντας στο while( i<pos+1) έτσι όπως υλοποιείτε στη συνέχεια τον κώδικα το curr πλέον έχει πάει στον επόµενο κόµβο έτσι δε διαγράφεται το σωστό κόµβο αλλά τον επόµενο µε αποτέλεσµα να πετάει Segmentation fault µόλις πάει να αφαιρεθεί το τελευταίο στοιχείο της λίστας 1950 Πολύ καλή δουλειά! - Έπρεπε να χρησιµοποιείτε SUCCESS/FAILURE αντί για 1/ Σχόλια και στοίχιση οκ -Σωστή υλοποίηση των συναρτήσεων print_list removenth και insertnth -Μέσα στην removenth το current->next= NULL πριν τη free δεν χρειαζόταν Page 6

7 FAIL -Στοίχιση οκ - Κακογραµµένα σχόλια. Είναι πολύ µακρυά από τον κώδικα που σχολιάζουν και κάνουν wrap στις επόµενες γραµµές µε αποτέλεσµα άσχηµη µορφή του προγράµµατος. Να τα βάζετε σε ξεχωριστή γραµµή πριν τον κώδικα που σχολιάζουν, ή σε µορφή παραγράφου. -Σωστή υλοποίηση των συναρτήσεων print_list removenth και insertnth - Warning στο compile γιατί δεν επιστρέφετε τίποτα από την insertnth - Καλή στοίχιση - ΔΕΝ έχετε καθόλου σχόλια - Το πρόγραµµα τυπώνει σωστά τη λίστα - Αλλά δεν δουλεύει σωστά η insertnth. Κάθε φορά που θέλετε ένα νέο κόµβο, πρέπει να δεσµεύετε µνήµη εκ νέου. Επίσης, δε διατρέχετε ποτέ τη λίστα. - Η removenth δεν είναι υλοποιηµένη καθόλου Σωστή duplicate_list(). Για την περίπτωση που η malloc() είναι σωστότερο να επιστρέφουµε απλά FAILURE, αφήνοντας αυτόν που κάλεσε την duplicate_list() να διαχειριστεί όπως θέλει την αποτυχία δέσµευσης µνήµης. - Σωστή remove_duplicates() Καλή στοίχιση -Καλά σχόλια, αλλά γενικά τα γράφουµε σε ξεχωριστές γραµµές γιατί δηµιουργούν πρόβληµα µε το word wrapping -Σωστά ονόµατα µεταβλητών -Σωστή print_list -Λάθος insertnth, βάζετε το στοιχείο µία θέση πιο µετά από αυτή που σας ζητήθηκε. Επίσης ο έλεγχος µε το LIST_LENGTH είναι άκυρος διότι αυτή η σταθερά απλά σας δείχνει πόσο µεγάλη αρχικοποιήθηκε η λίστα και δεν αντικατοπτρίζει το µήκος της ανά πάσα στιγµή. -Λάθος removenth, προσπαθείτε να κάνετε free ακόµα και αν σας ζητήσουν έναν κόµβο που έχει "index" κατά ένα µεγαλύτερο από το µήκος της λίστας -Γενικά δεν χρειάζεται να µετράτε το µήκος της λίστας, δοκιµάστε να κάνετε την άσκηση µε 1 for-loop ανά function Δεν γράψατε σωστά το θέµα στο mail. -Η στοίχιση σε αρκετά σηµεία είναι λάθος. -Καλά σχόλια, αλλά γενικά τα γράφουµε σε ξεχωριστές γραµµές γιατί δηµιουργούν πρόβληµα µε το word wrapping. Τα for σας επίσης έπρεπε να είναι πιο προσεκτικά γραµµένα ώστε να µην κάνουν wrap. -Σωστά ονόµατα µεταβλητών -Σωστή print_list -Σωστή insertnth -Σωστή removenth Page 7

8 1975 FAIL - Warning στο compile γιατί δεν επιστρέφετε τίποτα από την insertnth - Καλή στοίχιση - ΔΕΝ έχετε καθόλου σχόλια - Το πρόγραµµα τυπώνει σωστά τη λίστα - Αλλά δεν δουλεύει σωστά η insertnth. Κάθε φορά που θέλετε ένα νέο κόµβο, πρέπει να δεσµεύετε µνήµη εκ νέου. Επίσης, δε διατρέχετε ποτέ τη λίστα. - Η removenth δεν είναι υλοποιηµένη καθόλου Σωστή στοίχιση -Καλά σχόλια -Σωστά ονόµατα µεταβλητών -Σωστή print_list -Στην insertnth τα σχόλιά σας είναι λάθος για την εισαγωγή κόµβου στο τέλος της λίστας. Η LIST_LENGTH δείχνει µόνο το *αρχικό* µήκος της λίστας, εποµένως είναι λάθος να χρησιµοποιείται σε κάθε εισαγωγή. Να προσέχετε τις συµβουλές που δίνονται την ώρα του εργαστηρίου. -Λάθος removenth η LIST_LENGTH δείχνει µόνο το *αρχικό* µήκος της λίστας Σχόλια: Δεν υπήρχαν καθόλου σχόλια. - Υπήρξε πολύ µεγάλη καθυστέρηση στην ολοκλήρωση και αποστολή της άσκησης. Γνωρίζετε πολύ καλά οτι η άσκηση θα πρέπει να έχει αποσταλεί πριν το πέρας της διαθέσιµης ώρας του εργαστηρίου! Σχόλια: OK Σωστή υλοποίηση της print_list(). - Σωστή υλοποίηση της insertnth(). - Σωστή υλοποίηση της removenth(). - Καλή στοίχιση - Τα σχόλια τα γράφουµε σε ξεχωριστές γραµµές γιατί δηµιουργούν πρόβληµα µε το word wrapping. Page 8

9 Στοίχιση: OK - Ονόµατα µεταβλητών: OK - Σχόλια: OK - create_duplicates: --- Διπλασιασµός: OK --- Επιστροφή: Πρέπει να επιστρέφει 1/0 αντί για SUCCESS/FAILURE - remove duplicates: --- Αφαίρεση: Δεν δουλεύει. Σκέψου τι θα γίνει αν βρεις ένα duplicate. Το current θα γίνει free (οπότε δε δείχνει πια σε έγκυρη διεύθυνση), κι αµέσως µετά κάνεις προσπέλαση του current->next. Εφόσον το current δεν είναι έγκυρο, το current->next µπορεί να προκαλέσει segmentation fault. --- free: ΟΚ Σωστή duplicate_list(). - Σωστή remove_duplicates(). - Καλά σχόλια και στοίχιση Σωστή υλοποίηση της print_list(). - Σωστή υλοποίηση της insertnth(). - Σωστή υλοποίηση της removenth(). - Καλά σχόλια και σωστή στοίχιση Σωστή insertnth(). - Σωστή removenth(). - Καλά σχόλια και σωστή στοίχιση. -Στοίχιση οκ - Κακογραµµένα σχόλια. Είναι πολύ µακρυά από τον κώδικα που σχολιάζουν και κάνουν wrap στις επόµενες γραµµές µε αποτέλεσµα άσχηµη µορφή του προγράµµατος. Να τα βάζετε σε ξεχωριστή γραµµή πριν τον κώδικα που σχολιάζουν, ή σε µορφή παραγράφου. -Σωστή υλοποίηση των συναρτήσεων print_list removenth και insertnth Page 9

10 2013 lab12grades -Σωστή στοίχιση -Καλά σχόλια -Σωστά ονόµατα µεταβλητών -Σωστή print_list -Στην insertnth τα σχόλιά σας είναι λάθος για την εισαγωγή κόµβου στο τέλος της λίστας. Η LIST_LENGTH δείχνει µόνο το *αρχικό* µήκος της λίστας, εποµένως είναι λάθος να χρησιµοποιείται σε κάθε εισαγωγή. Να προσέχετε τις συµβουλές που δίνονται την ώρα του εργαστηρίου. -Λάθος removenth η LIST_LENGTH δείχνει µόνο το *αρχικό* µήκος της λίστας Σωστή insertnth(). - Σωστή removenth(). - Καλά σχόλια και σωστή στοίχιση. -Δεν γράψατε σωστά το θέµα στο mail. -Η στοίχιση σε αρκετά σηµεία είναι λάθος. -Καλά σχόλια, αλλά γενικά τα γράφουµε σε ξεχωριστές γραµµές γιατί δηµιουργούν πρόβληµα µε το word wrapping. Τα for σας επίσης έπρεπε να είναι πιο προσεκτικά γραµµένα ώστε να µην κάνουν wrap. -Σωστά ονόµατα µεταβλητών -Σωστή print_list -Σωστή insertnth -Σωστή removenth Πολύ καλή δουλειά! - Έπρεπε να χρησιµοποιείτε SUCCESS/FAILURE αντί για 1/0 Page 10

11 2029 lab12grades Διαδικαστικά: Καθυστερήσατε αρκετά να στείλετε την άσκηση - έπρεπε να µπορείτε να τελειώσετε µία άσκηση σε 2.5 ώρες! - Το πρόγραµµα τερµατίζει µε segmentation fault µόλις πάει να αφαιρέσει το τελευταίο στοιχείο της λίστας, γιατί έχετε υλοποιήσει λάθος τη removenth - Σχόλια και στοίχιση οκ - Η κλήση της malloc είναι (listt *) malloc(sizeof(listt)) - Σωστή υλοποίηση της insertnth - Δεν υλοποιείτε σωστά την removenth: --- Δεν υλοποιείτε την περίπτωση διαγραφής από την αρχή της λίστας (την κεφαλή της λίστας) --- Γράφοντας στο while( i<pos+1) έτσι όπως υλοποιείτε στη συνέχεια τον κώδικα το curr πλέον έχει πάει στον επόµενο κόµβο έτσι δε διαγράφεται το σωστό κόµβο αλλά τον επόµενο µε αποτέλεσµα να πετάει Segmentation fault µόλις πάει να αφαιρεθεί το τελευταίο στοιχείο της λίστας Σχόλια: OK - Έπρεπε να χρησιµοποιήσετε SUCCESS/FAILURE αντί για 1/0, αλλά µην κάνετε ποτέ αναθέσεις της µορφής *new_node=*ptr; όταν τα εµπλεκόµενα structs έχουν πεδία που είναι pointers. Επίσης, στην περίπτωση που αποτυγχάνει η malloc έπρεπε να επιστρέφετε FAILURE. Σε κάθε περίπτωση, πριν τον τερµατισµό ενός προγράµµατος πρέπει να ελευθερώνετε τη δυναµικά δεσµευµένη µνήµη Καλή στοίχιση -Καλά σχόλια, αλλά γενικά τα γράφουµε σε ξεχωριστές γραµµές γιατί δηµιουργούν πρόβληµα µε το word wrapping -Σωστά ονόµατα µεταβλητών -Σωστή print_list -Λάθος insertnth, βάζετε το στοιχείο µία θέση πιο µετά από αυτή που σας ζητήθηκε. Επίσης ο έλεγχος µε το LIST_LENGTH είναι άκυρος διότι αυτή η σταθερά απλά σας δείχνει πόσο µεγάλη αρχικοποιήθηκε η λίστα και δεν αντικατοπτρίζει το µήκος της ανά πάσα στιγµή. -Λάθος removenth, προσπαθείτε να κάνετε free ακόµα και αν σας ζητήσουν έναν κόµβο που έχει "index" κατά ένα µεγαλύτερο από το µήκος της λίστας -Γενικά δεν χρειάζεται να µετράτε το µήκος της λίστας, δοκιµάστε να κάνετε την άσκηση µε 1 for-loop ανά function Έπρεπε να χρησιµοποιείτε SUCCESS/FAILURE αντί για 1/0 Page 11

12 2036 FAIL - Warning στο compile - Μέτρια στοίχιση - ΔΕΝ έχετε καθόλου σχόλια - Το πρόγραµµα τυπώνει σωστά τη λίστα - H insertnth δεν δουλεύει σωστά. Δεν δίνετε τιµή στο nodeptr->data. Το newnode δεν είναι δείκτης και δε προφανώς δε δείχνει σε δυναµικά δεσµευµένη µνήµη. Τι σκοπό εξυπηρετεί? - Η removenth είναι υλοποιηµένη αλλά ούτε αυτή δουλεύει σωστά. - Το output του προγράµµατος δεν είναι προσεγµενο Σχόλια και στοίχιση οκ -Σωστή υλοποίηση των συναρτήσεων print_list removenth και insertnth -Μέσα στην removenth το current->next= NULL πριν τη free δεν χρειαζόταν Καλή στοίχιση - ΔΕΝ έχετε σχεδόν καθόλου σχόλια - Το πρόγραµµα τυπώνει σωστά τη λίστα - Η insertνth λειτουργεί µεν, αλλά δεν είναι καλά υλοποιηµένη. Διατρέχετε τη λίστα πολύ περισσότερες φορές από όσες χρειάζεται. Προσπαθήστε να την ξαναγράψετε διατρέχοντας τη λίστα το πολύ µια φορά. Δε χρειάζεται να υπολογίζετε το µήκος της (απλά τσεκάρετε αν φτάσατε σε NULL) και οι µόνες περιπτώσεις που χρειάζεται να χειριστείτε είναι για pos == 0 και για pos > 0 - Όταν η removenth λειτουργεί σωστά είναι κατά λάθος, αν τύχει το count να πάρει αρχική τιµή 0. Δεν το έχετε αρχικοποιήσει. Επίσης, αν κληθεί σε άδεια λίστα, θα πετάξει segmentation fault στο *list_head=(*list_head)->next->next; Επίσης, δε λειτουργεί σωστά στην περίπτωση που ζητηθεί να αφαιρεθεί ο τελευταίος κόµβος (δοκιµάστε αφαίρεση από τη θέση 6 αντί για 20 στην τελευταία κλήση στη main). Όπως ειπώθηκε στο εργαστήριο, πρέπει πάντα να ελέγχετε τις οριακές περιπτώσεις FAIL - Warning στο compile - Μέτρια στοίχιση - ΔΕΝ έχετε καθόλου σχόλια - Το πρόγραµµα τυπώνει σωστά τη λίστα - H insertnth δεν δουλεύει σωστά. Δεν δίνετε τιµή στο nodeptr->data. Το newnode δεν είναι δείκτης και δε προφανώς δε δείχνει σε δυναµικά δεσµευµένη µνήµη. Τι σκοπό εξυπηρετεί? - Η removenth είναι υλοποιηµένη αλλά ούτε αυτή δουλεύει σωστά. - Το output του προγράµµατος δεν είναι προσεγµενο Σωστή insertnth(). - Σωστή removenth(). - Καλά σχόλια και σωστή στοίχιση. Page 12

13 Σωστή duplicate_list(). - Σωστή remove_duplicates(). - Καλά σχόλια και στοίχιση Στοίχιση: OK - Ονόµατα µεταβλητών: OK - Σχόλια: Ελάχιστα - create_duplicates: --- Διπλασιασµός: ανάθεση δεικνούµενου αντικειµένου πριν γίνει ο έλεγχος για failure (τι θα γίνει αν pointer == NULL στην εντολή *pointer=*current ;). Επίσης, µην κάνετε ποτέ αναθέσεις της µορφής *pointer=*current ; όταν τα εµπλεκόµενα structs έχουν πεδία που είναι pointers. --- Επιστροφή: Επιστρέφει 0/1 αντί για SUCCESS/FAILURE - remove duplicates: --- Αφαίρεση: Δεν γίνεται σωστή αφαίρεση, έτσι όπως είναι γραµµένο αφαιρεί µόνο τα διαδοχικά ίδια. Δε θα λειτουργήσει αν η λίστα είναι πχ free: ΟΚ. --- Ξανακάντε την άσκηση στο σπίτι µε βάση τις παραπάνω επισηµάνσεις. Διαδικαστικά ΟΚ Μη χρησιµοποιείς επιπλέον παρανθέσεις.το if ((i==pos)) έπρεπε να ήταν if (i==pos) - Σωστή print_list() - Σωστή insertnth() - Σωστή removenth() - Καλή στοίχιση αλλά δεν υπάρχουν σχόλια remove_duplicates: Αφαιρείτε τους κόµβους από την λίστα, αλλά δεν ελευθερώνετε τη µνήµη που έχει δεσµευτεί για αυτούς. Επαναλάβετε την άσκηση στο σπίτι. Page 13

14 Σωστή duplicate_list(). - Σωστή remove_duplicates(). - Γενικά καλά σχόλια, αλλά και µερικά περιττά: Δε χρειάζεται να πεις τι κάνουν οι malloc και free - Τα σχόλια τα βάζουµε πάνω από τον κώδικα και όχι δίπλα. - remove_duplicates: Αφαιρείτε τους κόµβους από την λίστα, αλλά δεν ελευθερώνετε τη µνήµη που έχει δεσµευτεί για αυτούς. Επαναλάβετε την άσκηση στο σπίτι. - Σχόλια: Τα σχόλια πρέπει να µπαίνουν πάνω απο τον κώδικα και οχι απο δίπλα γιατί δεν χωράνε και σε µικρότερη οθόνη διπλώνονται στην απο κάτω γραµµή. Κατα τα άλλα σωστά σχόλια, αλλά το if είναι περιττό και δείχνει µη-κατανόηση της λειτουργίας της for: Εφόσον ο µόνος τρόπος να µπούµε στο σώµα της for είναι η συνθήκη curr!=null, τότε προφανώς η συνθήκη της if θα είναι πάντα αληθής. - Σχόλια: Τα σχόλια πρέπει να µπαίνουν πάνω απο τον κώδικα και οχι απο δίπλα γιατί δεν χωράνε και σε µικρότερη οθόνη διπλώνονται στην απο κάτω γραµµή. Κατα τα άλλα σωστά σχόλια Page 14

Sheet2. Σωστή, και µπράβο που µεριµνήσατε για λίστες διαφορετικών µεγεθών.

Sheet2. Σωστή, και µπράβο που µεριµνήσατε για λίστες διαφορετικών µεγεθών. Α.Μ. ΒΑΘΜΟΣ ΣΧΟΛΙΑ Δεν κάνει compile και το λάθος είναι σηµαντικό: Το head1 είναι δείκτης σε struct, εποµένως η προσπέλαση πεδίου γίνεται 321 FAIL µε head1->next και όχι head1.next. Επιπλέον, έχετε λάθος

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

403 FAIL Λάθος στο πακετάρισµα του αρχείου.

403 FAIL Λάθος στο πακετάρισµα του αρχείου. ΑΕΜ ΒΑΘΜΟΣ 357 FAIL Λάθος στο πακετάρισµα του αρχείου. ΣΧΟΛΙΑ 400 FAIL 402 Έπρεπε να στείλετε ΜΟΝΟ το lab11.c Λάθος αλγόριθµος. Αµέσως µόλις συναντήστε κόµβο όπου το curr->number είναι διάφορο του number,

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

lab11 - Να εκτυπώνεις πιο κατατοπιστικά µηνύµατα λάθους. Αν είναι όλα ίδια, δεν είναι ξεκάθαρο ποιο αρχείο έχει πρόβληµα.

lab11 - Να εκτυπώνεις πιο κατατοπιστικά µηνύµατα λάθους. Αν είναι όλα ίδια, δεν είναι ξεκάθαρο ποιο αρχείο έχει πρόβληµα. Α. Μ. Βαθμός Σχόλια 1183 FAIL - Πρώτα ελέγχουµε το argc και µετά κάνουµε προσπάθεια να προσπελάσουµε το argv. - Λάθος στην ανάγνωση του πρώτου αρχείου. Κάθε φορά που κάνεις fgetc διαβάζεις τον επόµενο

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

Βαθμός Σχόλια. lab8. οριακά PASS 1194 PASS

Βαθμός Σχόλια. lab8. οριακά PASS 1194 PASS Α. Μ. Βαθμός Σχόλια 1183 1194 1195 FAIL 1238 1239 - Άσχηµα ονόµατα µεταβλητών (s, t) - Δε δεσµεύεις αρκετή µνήµη για τις λέξεις που αποθηκεύονται στον πίνακα (και γι αυτό τελικά το πρόγραµµά σου κάνει

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

Δομές Δεδομένων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων. Τμήμα Εφαρμοσμένης Πληροφορικής

Δομές Δεδομένων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων. Τμήμα Εφαρμοσμένης Πληροφορικής Ενότητα 5: Δείκτες και Δυναμική Δέσμευση- Αποδέσμευση Μνήμης στη C/ Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με δείκτες /Ένα πακέτο για τον ΑΤΔ Συνδεδεμένη Λίστα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν

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

Εργαστήριο 5. Εαρινό Εξάμηνο

Εργαστήριο 5. Εαρινό Εξάμηνο Τομέας Υλικού και Αρχιτεκτονικής Υπολογιστών ΗΥ134 - Εισαγωγή στην Οργάνωση και Σχεδίαση Η/Υ 1 Εργαστήριο 5 Εαρινό Εξάμηνο 2012-2013 Στό χόι τόυ εργαστηρι όυ Χρήση στοίβας Αναδρομή Δομές δεδομένων Δυναμική

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

Διάλεξη 13η: Δυναμική Διαχείρηση Μνήμης, μέρος 1

Διάλεξη 13η: Δυναμική Διαχείρηση Μνήμης, μέρος 1 Διάλεξη 13η: Δυναμική Διαχείρηση Μνήμης, μέρος 1 Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μνήμη I CS100,

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 13/1/13, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 13/1/13, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2012-2013 Προθεσµία: 13/1/13, 22:00 Περιεχόµενα Διαδικαστικά Εκφώνηση άσκησης (Στάδιο 0, Στάδιο 1, Στάδιο 2, Στάδιο 3, Στάδιο 4, Στάδιο 5) Οδηγίες

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

Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες)

Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες) Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 13-1 Περιεχόμενο

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

lab5grades Διαδικαστικά: όλα οκ, αλλά καθυστερήσατε στην αποστολή. Να προσέχετε να στέλνετε τις ασκήσεις σας εντός της προθεσµίας.

lab5grades Διαδικαστικά: όλα οκ, αλλά καθυστερήσατε στην αποστολή. Να προσέχετε να στέλνετε τις ασκήσεις σας εντός της προθεσµίας. ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ Διαδικαστικά: όλα οκ, αλλά καθυστερήσατε στην αποστολή. Να προσέχετε να στέλνετε τις ασκήσεις σας εντός της προθεσµίας. : 449 οριακό - Λάθος στους υπολογισµούς. Σε κάθε µία επανάληψη

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

ΕΡΓΑΣΤΗΡΙΟ 8: Πολυδιάστατοι Πίνακες και Δυναμική Δέσμευση Μνήμης

ΕΡΓΑΣΤΗΡΙΟ 8: Πολυδιάστατοι Πίνακες και Δυναμική Δέσμευση Μνήμης ΕΡΓΑΣΤΗΡΙΟ 8: Πολυδιάστατοι Πίνακες και Δυναμική Δέσμευση Μνήμης Στο εργαστήριο αυτό θα μελετήσουμε τον τρόπο με τον οποίο ορίζουμε στην C πολυδιάστατους πίνακες και θα δούμε πώς μπορούμε να δεσμεύουμε

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

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εργαστήριο 9η εβδομάδα. Κοζάνη, 2 Δεκεμβρίου 2008. Δίνονται παραδείγματα που αποσαφηνίζουν και συμπληρώνουν όσα αναφέρθηκαν στο μάθημα σχετικά με τις δομές

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

ΠΛΗ111. Ανοιξη 2005. Μάθηµα 3 ο. Συνδεδεµένες Λίστες. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης

ΠΛΗ111. Ανοιξη 2005. Μάθηµα 3 ο. Συνδεδεµένες Λίστες. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης ΠΛΗ111 οµηµένος Προγραµµατισµός Ανοιξη 2005 Μάθηµα 3 ο Συνδεδεµένες Λίστες Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης Ανασκόπηση ΟΑΤ λίστα Ακολουθιακή λίστα Συνδεδεµένη λίστα

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

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

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

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

Πανεπιστήµιο Θεσσαλίας, THMMY HY120, Σεπτέµβριος 2015 ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

Πανεπιστήµιο Θεσσαλίας, THMMY HY120, Σεπτέµβριος 2015 ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΝΟΜΑΤΕΠΩΝΥΜΟ: AEM: ΜΕΡΟΣ Α: ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΩΝ ΕΠΙΛΟΓΩΝ [15 µονάδες] ΣΗΜΑΝΤΙΚΕΣ ΔΙΕΥΚΡΙΝΙΣΕΙΣ: Επιλέξτε ΜΙΑ σωστή απάντηση για κάθε ερώτηση. Λάθος απαντήσεις βαθµολογούνται αρνητικά Σε ερωτήσεις που

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

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

ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2016-2017 ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ Ποιος πρέπει να ολοκληρώσει αυτή την εργασία? Φοιτητές έτους >= 2 που

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

οριακό PASS 402 PASS Πολύ σωστά, µπράβο οριακό PASS

οριακό PASS 402 PASS Πολύ σωστά, µπράβο οριακό PASS ΑΕΜ ΒΑΘΜΟΣ 357 402 Πολύ σωστά, µπράβο ΣΧΟΛΙΑ Λάθος στον υπολογισµό του πλήθους αστερίσκων. Δε µετράτε αυτούς της "κάτω" σειράς, οπότε το αποτέλεσµα δεν είναι σωστό. Η πράξη που κάνετε στη main είναι λάθος

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

lab2grades - Στη scanf υπολογίζετε τουλάχιστον 5 χαρακτήρες %5.2f προδιαγραφές που ζητούνται στην εκφώνηση. -

lab2grades - Στη scanf υπολογίζετε τουλάχιστον 5 χαρακτήρες %5.2f προδιαγραφές που ζητούνται στην εκφώνηση. - Α.Μ. ΒΑΘΜΟΣ ΣΧΟΛΙΑ 1375 - Καλή στοίχηση, σωστά ονόµατα µεταβλητών, όµως δεν έχετε δηλώσει ως σταθερές το ΦΠΑ και την τιµή ανά τετραγωνικό µέτρο για τη µοκέτα. - Στη scanf υπολογίζετε τουλάχιστον 5 χαρακτήρες

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

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής Στο εργαστήριο αυτό θα δούμε πώς ορίζονται και πώς χρησιμοποιούνται οι συμβολοσειρές στην C. Επίσης, θα μελετήσουμε κάποιες από τις συναρτήσεις

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

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

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/10, 23:59

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/10, 23:59 ΣΕΤ ΑΣΚΗΣΕΩΝ 2 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010-2011 Προθεσµία: 15/11/10, 23:59 Στόχοι Πίνακες Συναρτήσεις Συµβολοσειρές Χρήση µεταβλητών και σταθερών Χρήση τελεστών Χρήση δοµών ελέγχου

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

Alternative to Balanced Trees, Comms of the ACM, 33(6), June 1990,

Alternative to Balanced Trees, Comms of the ACM, 33(6), June 1990, ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Τμήμα Πληροφορικής & Τηλεπικοινωνιών Μια σημείωση από τον Α. Δελή για το άρθρο: W. Pugh, Skip Lists: A Probabilistic Alternative to Balanced Trees, Comms of the ACM, 33(), June 10,

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 22/12/10, 23:59

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 22/12/10, 23:59 ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010-2011 Προθεσµία: 22/12/10, 23:59 Στόχοι Λίστες Χρήση συναρτήσεων Χρήση δοµών ελέγχου Φορµαρισµένη είσοδος και έξοδος δεδοµένων Χρήση σχολίων

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

Στοίβες με Δυναμική Δέσμευση Μνήμης

Στοίβες με Δυναμική Δέσμευση Μνήμης ΕΠΛ 231 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ 10/02/10 Παύλος Αντωνίου Στοίβες με Δυναμική Δέσμευση Μνήμης Στοίβα: Στοίβα είναι μια λίστα που έχει ένα επιπλέον περιορισμό. Ο περιορισμός είναι ότι οι εισαγωγές

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

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

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δείκτες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Τι είναι ο δείκτης Ένας δείκτης είναι μια μεταβλητή που περιέχει μια διεύθυνση μνήμης. Θυμηθείτε πως

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

lab3grades οριακό PASS

lab3grades οριακό PASS ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ - Αποστολή email: διαδικαστικά οκ, αλλά στείλατε την άσκηση µε δέκα λεπτά καθυστέρηση. Στο µέλλον τόσο µεγάλη καθυστέρηση θα είναι λόγος για fail γιατί η άσκηση θα θεωρείται εκπρόθεσµη.

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

lab10grades Άσκηση 2η: - Δεν κάνει compile: Δείτε την λύση και ξανα προσπαθήστε τα υπόλοιπα στο σπίτι.

lab10grades Άσκηση 2η: - Δεν κάνει compile: Δείτε την λύση και ξανα προσπαθήστε τα υπόλοιπα στο σπίτι. ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ 449???? Άσκηση 1η: - Καλή δουλειά! Μπράβο - Σωστή στοίχιση - Σωστά σχόλια - Σωστός ορισµός των πεδίων struct - Σωστή υλοποίηση της init_books - Σωστή υλοποίηση της add_book_info: Εναλλακτικά,

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

υναµική έσµευση Μνήµης (συν.) ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 2 Εφαρµογή

υναµική έσµευση Μνήµης (συν.) ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 2 Εφαρµογή υναµική έσµευση Μνήµης (συν.) Στην ενότητα αυτή θα µελετηθούν: Μια εφαρµογή συνδεδεµένων λιστών ιπλά συνδεδεµένες Λίστες ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1 Εφαρµογή Ζητούµενο: Πρόγραµµα που παίρνει σαν

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

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 14 η Διαχείριση Μνήμης και Δομές Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη

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

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε

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

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

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

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

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών. Μανόλης Γ.Η.

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών. Μανόλης Γ.Η. ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

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

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

ÔÏÕËÁ ÓÁÑÑÇ ÊÏÌÏÔÇÍÇ

ÔÏÕËÁ ÓÁÑÑÇ ÊÏÌÏÔÇÍÇ ΤΑΞΗ: ΚΑΤΕΥΘΥΝΣΗ: ΜΑΘΗΜΑ: ΘΕΜΑ Α Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ (2ος Κύκλος) ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ηµεροµηνία: Παρασκευή 25 Απριλίου 2014 ιάρκεια Εξέτασης: 3 ώρες ΕΚΦΩΝΗΣΕΙΣ

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

Τι είναι υποπρόγραμμα; Τμήμα προγράμματος το οποίο επιτελεί ένα αυτόνομο υπολογιστικό έργο (γράφεται χωριστά από το υπόλοιπο πρόγραμμα)

Τι είναι υποπρόγραμμα; Τμήμα προγράμματος το οποίο επιτελεί ένα αυτόνομο υπολογιστικό έργο (γράφεται χωριστά από το υπόλοιπο πρόγραμμα) Τι είναι υποπρόγραμμα; Τμήμα προγράμματος το οποίο επιτελεί ένα αυτόνομο υπολογιστικό έργο (γράφεται χωριστά από το υπόλοιπο πρόγραμμα) Επικοινωνία Το υποπρόγραμμα δέχεται τιμές από το πρόγραμμα Επιστρέφει,

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

υναµικές οµές εδοµένων

υναµικές οµές εδοµένων υναµικές οµές εδοµένων Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: υναµικές οµές εδοµένων Γενικά υναµική έσµευση Μνήµης οµή τύπου structure αυτοαναφορικές δοµές Η δήλωση typedef στη C Αναπαράσταση

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

Νήµατα. Πολύ σηµαντικό

Νήµατα. Πολύ σηµαντικό Νήµατα Πολύ σηµαντικό 1 Νήµατα (συν.) Σηµαντικό 2 Νήµατα vs ιεργασίες Νήµατα ιεργασίες Χώρος εδοµένων Περιγραφητές Αρχείων fork exit exec Σήµατα Κοινός. Ότι αλλάζει το 1 νήµα το βλέπουν/ αλλάζουν και τα

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

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

Version X. Οδηγίες χρήσης

Version X. Οδηγίες χρήσης Version 1.0.1.X Οδηγίες χρήσης Πρόλογος Η εφαρµογή CallReceiver σχεδιάστηκε για την υποστήριξη ξενοδοχείων ή επιχειρήσεων, όσον αφορά στις τηλεφωνικές κλήσεις που διαχειρίζεται το τηλεφωνικό κέντρο (Τ/Κ).

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

Κεφάλαιο Αλφαριθµητικές Σειρές Χαρακτήρων (Strings)

Κεφάλαιο Αλφαριθµητικές Σειρές Χαρακτήρων (Strings) Κεφάλαιο 9.1-9.2 Αλφαριθµητικές Σειρές Χαρακτήρων (Strings) ( ιάλεξη 19) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 1) Strings στη C Ένα string είναι µία ακολουθία αλφαριθµητικών χαρακτήρων, σηµείων στίξης κτλ. Π.χ.

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

Κεφάλαιο ΙV: Δείκτες και πίνακες. 4.1 Δείκτες.

Κεφάλαιο ΙV: Δείκτες και πίνακες. 4.1 Δείκτες. Κεφάλαιο ΙV: Δείκτες και πίνακες. 4.1 Δείκτες. Η C, όπως έχουμε αναφέρει, είναι μια γλώσσα προγραμματισμού υψηλού επιπέδου η οποία αναπτύχθηκε για πρώτη φορά το 1972 από τον Dennis Ritchie στα AT&T Bell

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

υναµικές οµές εδοµένων (συν.) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα:

υναµικές οµές εδοµένων (συν.) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: υναµικές οµές εδοµένων (συν.) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Ταξινοµηµένες Λίστες µε δυναµική δέσµευση µνήµης Αναδροµκές συναρτήσεις ΕΠΛ 12 Αρχές Προγραµµατισµού ΙΙ 1 Λίστες

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

Φροντιστήριο 4 Σκελετοί Λύσεων

Φροντιστήριο 4 Σκελετοί Λύσεων Φροντιστήριο 4 Σκελετοί Λύσεων Άσκηση 1 Υποθέτουμε πως οι λίστες είναι υλοποιημένες χρησιμοποιώντας τις πιο κάτω δομές. typedef struct Node{ type data; struct node *next; node; node *top; list; Υλοποιούμε

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

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

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι Εισαγωγή Στον Προγραµµατισµό «C» Πίνακες Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Πίνακες στη C Ένας πίνακας στη C είναι

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

Ενότητα 2: Στοίβες Ουρές - Λίστες Ασκήσεις και Λύσεις

Ενότητα 2: Στοίβες Ουρές - Λίστες Ασκήσεις και Λύσεις Ενότητα 2: Στοίβες Ουρές - Λίστες Ασκήσεις και Λύσεις Άσκηση 1 Έστω ότι μια βιβλιοθήκη σας παρέχει πρόσβαση σε στοίβες ακεραίων. Η βιβλιοθήκη σας επιτρέπει να ορίσετε μια στοίβα και να καλέσετε τις 5 βασικές

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

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

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

Επεξεργασία Αρχείων Κειµένου

Επεξεργασία Αρχείων Κειµένου Επεξεργασία Αρχείων Κειµένου Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Αρχεία Κειµένου Γενικά Συναρτήσεις Επεξεργασίας Αρχείων Κειµένου ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1 Αρχεία Γενικά

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #2 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #2 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #2 2 Γενικά Στο Εργαστήριο αυτό θα αναλύσουμε τη χρήση της βασικής εντολής ελέγχου ροής

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

SmarTECPoS. Πως βάζω νέα είδη; Back Office Βασικό Είδη new Νέο Γενικά Κωδικός (είδους) Περιγραφή 1 Τμήμα Τιμή Αποθήκη Τιμή 1 Εστιατόριο Εκτυπωτής

SmarTECPoS. Πως βάζω νέα είδη; Back Office Βασικό Είδη new Νέο Γενικά Κωδικός (είδους) Περιγραφή 1 Τμήμα Τιμή Αποθήκη Τιμή 1 Εστιατόριο Εκτυπωτής SmarTECPoS. Πως βάζω νέα είδη; Back Office Βασικό Είδη new Νέο Γενικά Κωδικός (είδους) Περιγραφή 1 Τμήμα Τιμή Αποθήκη Τιμή 1 Εστιατόριο Εκτυπωτής (διαλέγω εκτυπωτή) Εμφάνιση Θέση (διαλέγω χρώμα γραμμάτων,

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

Οντοκεντρικός Προγραμματισμός

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 8: C++ ΒΙΒΛΙΟΗΚΗ STL, ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Δομές Δεδομένων ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Δομές

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

Εργαστηριακή Άσκηση 1

Εργαστηριακή Άσκηση 1 Εργαστηριακή Άσκηση 1 Επανάληψη προγραμματισμού Βασικοί Αλγόριθμοι Είσοδος τιμών από το πληκτρολόγιο Σε όλα τα προγράμματα που θα γράψουμε στην συνέχεια του εξαμήνου θα χρειαστεί να εισάγουμε τιμές σε

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

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

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

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 2: Δείκτες & Δυναμική Ανάθεση Μνήμης

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 2: Δείκτες & Δυναμική Ανάθεση Μνήμης ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ C Προγραμματιστικές Ασκήσεις, Φυλλάδιο 2: Δείκτες & Δυναμική Ανάθεση Μνήμης Εκφώνηση: 2 Απριλίου 202 Παράδοση: Δευτέρα, 07/05/202, ώρα 09:59

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

Διάλεξη 07: Λίστες Ι Υλοποίηση & Εφαρμογές

Διάλεξη 07: Λίστες Ι Υλοποίηση & Εφαρμογές Διάλεξη 07: Λίστες Ι Υλοποίηση & Εφαρμογές Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ευθύγραμμες Απλά Συνδεδεμένες Λίστες (εισαγωγή, εύρεση, διαγραφή) Ευθύγραμμες Διπλά Συνδεδεμένες Λίστες

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

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

ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα ιοικητικής Επιστήµης & Τεχνολογίας ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Κεφάλαιο 9 οµές εδοµένων σε C Γιώργος Γιαγλής Περίληψη Κεφαλαίου 9 οµές εδοµένων υναµικές

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

Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις

Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις Άσκηση 1 Γράψτε μία αναδρομική συνάρτηση που θα παίρνει ως παράμετρο ένα δείκτη στη ρίζα ενός δυαδικού δένδρου και θα επιστρέφει το βαθμό του

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

Εντολές της LOGO (MicroWorlds Pro)

Εντολές της LOGO (MicroWorlds Pro) Εντολές της LOGO (MicroWorlds Pro) Εντολές εμφάνισης (εξόδου) και αριθμητικές πράξεις δείξε Εμφανίζει στην οθόνη έναν αριθμό, το αποτέλεσμα πράξεων, μια λέξη ή μια λίστα (ομάδα) λέξεων. δείξε 200 200 δείξε

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

char name[5]; /* define a string of characters */

char name[5]; /* define a string of characters */ Συµβολοσειρές (Strings) Συµβολοσειρά (string) είναι µια σειρά αλφαριθµητικών χαρακτήρων (γενικά εκτυπώσιµων συµβόλων ASCII). Όταν λέµε σειρά εννοούµε διαδοχικές θέσεις µνήµης που µπορούν να αντιµετωπισθούν

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

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 9: Συναρτήσεις Ορισμός συναρτήσεων () { /* δήλωση μεταβλητών */ /* εντολές ελέγχου/επεξεργασίας */ o Μια συνάρτηση ορίζεται δίνοντας

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

Προγραµµατιστική Εργασία 1 ο Μέρος

Προγραµµατιστική Εργασία 1 ο Μέρος Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών 4 Νοεµβρίου 2011 ΗΥ240: οµές εδοµένων Χειµερινό Εξάµηνο Ακαδηµαϊκό Έτος 2011-12 ιδάσκουσα: Παναγιώτα Φατούρου Προγραµµατιστική Εργασία 1 ο Μέρος Ηµεροµηνία

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

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Προχωρημένα Θέματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανακατεύθυνση Εισόδου/Εξόδου Συνήθως η τυπική είσοδος ενός προγράμματος (stdin) προέρχεται

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Μαθήματα από τα εργαστήρια

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Μαθήματα από τα εργαστήρια ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Μαθήματα από τα εργαστήρια ΕΡΓΑΣΤΗΡΙΟ 1 Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο

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

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19)

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19) Κεφάλαιο 8.7 Πολυδιάστατοι Πίνακες (Διάλεξη 19) Πολυδιάστατοι πίνακες Μέχρι τώρα μιλούσαμε για Μονοδιάστατους Πίνακες. ή π.χ. int age[5]= {31,28,31,30,31; για Παράλληλους πίνακες, π.χ. int id[5] = {1029,1132,1031,9991,1513;

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

Ενδεικτική περιγραφή μαθήματος

Ενδεικτική περιγραφή μαθήματος ΜΑΘΗΜΑ: ΔΙΔΑΣΚΩΝ: ΤΜΗΜΑ: Προγραμματισμός Η/Υ Συνδουκάς Δημήτριος Διοίκησης Επιχειρήσεων (Γρεβενά) Ενδεικτική περιγραφή μαθήματος 1. Εισαγωγή: Εισαγωγή στον προγραμματισμό, γλώσσες προγραμματισμού, μεταγλωτιστές.

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

Διάλεξη 6: Δείκτες και Πίνακες

Διάλεξη 6: Δείκτες και Πίνακες Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 6: Δείκτες και Πίνακες (Κεφάλαιο 12, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 6-1 Περιεχόμενο

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

Τυπικές χρήσεις της Matlab

Τυπικές χρήσεις της Matlab Matlab Μάθημα 1 Τι είναι η Matlab Ολοκληρωμένο Περιβάλλον Περιβάλλον ανάπτυξης Διερμηνευμένη γλώσσα Υψηλή επίδοση Ευρύτητα εφαρμογών Ευκολία διατύπωσης Cross platform (Wintel, Unix, Mac) Τυπικές χρήσεις

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

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

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

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

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη Επιλογή και επανάληψη Η ύλη που αναπτύσσεται σε αυτό το κεφάλαιο είναι συναφής µε την ύλη που αναπτύσσεται στο 2 ο κεφάλαιο. Όπου υπάρχουν διαφορές αναφέρονται ρητά. Προσέξτε ιδιαίτερα, πάντως, ότι στο

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ (ΝΕΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ ÊÁËÁÌÁÔÁ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ (ΝΕΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ ÊÁËÁÌÁÔÁ ΘΕΜΑ Α ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ (ΝΕΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ Α1. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις 1-5 και, δίπλα,

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

Επανάληψη για τις Τελικές εξετάσεις

Επανάληψη για τις Τελικές εξετάσεις Επανάληψη για τις Τελικές εξετάσεις ( ιάλεξη 21) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Εισαγωγή Το µάθηµα EPL032 έχει ως βασικό στόχο την επίλυση προβληµάτων πληροφορικής µε την χρήση της γλώσσας προγραµµατισµού

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

FPU EJ. Κατάλογος περιεχομένων

FPU EJ. Κατάλογος περιεχομένων FPU EJ Κατάλογος περιεχομένων FPU EJ...1 1. Μενού...2 2. Master Reset...3 3. Ώρα / Ημερομηνία...4 4. Τμήματα...6 5. Μηδενισμός Ζ & Μεταφορά στοιχείων...9 6. FORMAT προσωρινής μνήμης...10 7. Αλλαγή ταχύτητας...10

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

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

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

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

Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών

Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Υλοποίηση ΑΤΔ με Συνδεδεμένες Λίστες -

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

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

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

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

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ C Προγραμματιστικές Ασκήσεις, Φυλλάδιο Εκφώνηση: 9/3/0 Παράδοση: 5/4/0,.59 Άσκηση 0 η : Το πρόβλημα της βελόνας του Buffon Θέμα της εργασίας

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

Διάλεξη 5: Δείκτες και Συναρτήσεις

Διάλεξη 5: Δείκτες και Συναρτήσεις Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 5: Δείκτες και Συναρτήσεις (Κεφάλαιο 11, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 5-1 Περιεχόμενο

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

ΣΥΝΑΡΤΗΣΕΙΣ Παραδείγματα χρήσης συναρτήσεων

ΣΥΝΑΡΤΗΣΕΙΣ Παραδείγματα χρήσης συναρτήσεων ΣΥΝΑΡΤΗΣΕΙΣ Παραδείγματα χρήσης συναρτήσεων ΠΟΛΛΕΣ ΕΝΤΟΛΕΣ ΕΠΙΣΤΡΟΦΗΣ Να γραφτεί ένα πρόγραμμα που να διπλασιάζει ένα ποσό που του δίνει ο χρήστης μεταξύ 0 και 1000. Να ελέγχει εάν το ποσό που εισήχθη

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

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Δυναμική Κατανομή Μνήμης Δυναμική εκχώρηση μνήμης Σωρός Συναρτήσεις malloc(), calloc(), realloc(), free() Δυναμικές δομές

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

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 10 η Αλφαριθμητικά Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης

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

Δομές Δεδομένων. Ενότητα 4: Ο ΑΤΔ Λίστα & Υλοποίηση Λίστας με σειριακή αποθήκευση- Ο ΑΤΔ Συνδεδεμένη Λίστα- Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με πίνακα

Δομές Δεδομένων. Ενότητα 4: Ο ΑΤΔ Λίστα & Υλοποίηση Λίστας με σειριακή αποθήκευση- Ο ΑΤΔ Συνδεδεμένη Λίστα- Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με πίνακα Ενότητα 4: Ο ΑΤΔ Λίστα & Υλοποίηση Λίστας με σειριακή αποθήκευση- Ο ΑΤΔ Συνδεδεμένη Λίστα- Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με πίνακα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ (ΝΕΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ

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

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

Τµήµα Πληροφορικής. Δοµές Δεδοµένων - Εργασία 2. Φθινοπωρινό Εξάµηνο Διδάσκων: E. Μαρκάκης

Τµήµα Πληροφορικής. Δοµές Δεδοµένων - Εργασία 2. Φθινοπωρινό Εξάµηνο Διδάσκων: E. Μαρκάκης Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο 2016 Δοµές Δεδοµένων - Εργασία 2 Διδάσκων: E. Μαρκάκης Ουρές προτεραιότητας - Προσοµοίωση της λειτουργίας ενός print server Σκοπός

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

Προγραμματισμός Η/Y. Διάλεξη 6 η : Συναρτήσεις

Προγραμματισμός Η/Y. Διάλεξη 6 η : Συναρτήσεις Προγραμματισμός Η/Y Διάλεξη 6 η : Συναρτήσεις Η C είναι συναρτησιακή γλώσσα προγραμματισμού Ως τώρα όλα τα προγράμματα που είδαμε ήταν γραμμένα μέσα στην main Τι θα κάνουμε όμως αν Το πρόγραμμα είναι τεράστιο

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

Κεφάλαιο : Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Κεφάλαιο : Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 5.1-5.3: Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 9-1 οµές Έλεγχου Προγράµµατος Μέχρι τώρα είδαµε τις ακόλουθες δοµές έλεγχου (program control structure) ενός προγράµµατος

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

Μεθόδων Επίλυσης Προβλημάτων

Μεθόδων Επίλυσης Προβλημάτων ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 7 ομές Επαναλήψεις Ο βρόχος While ομές Έλεγχου

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

Προγραμματισμό για ΗΜΥ

Προγραμματισμό για ΗΜΥ ΕΠΛ 34: Εισαγωγή στον Προγραμματισμό για ΗΜΥ Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 12 Πίνακες εικτών (Pointers Arrays) Θέματα ιάλεξης Στην ενότητα

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

Προγραμματισμός Ι. Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ακ. Έτος Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ακ. Έτος Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δομές Δεδομένων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2009-2010 Δομές Δεδομένων Μια δομή δεδομένων είναι μια συλλογή δεδομένων με κάποιες

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

Εγχειρίδιο Χρήστη Φάση 2: Αρχική Καταχώρηση Συµβάσεων

Εγχειρίδιο Χρήστη Φάση 2: Αρχική Καταχώρηση Συµβάσεων ΦΟΡΕΑΣ: ΙΝΣΤΙΤΟΥΤΟ ΙΑΡΚΟΥΣ ΕΚΠΑΙ ΕΥΣΗΣ ΕΝΗΛΙΚΩΝ ΕΡΓΟ: «Υλοποίηση Πληροφοριακού συστήµατος για την Υποστήριξη του Έργου ιαχείρισης των ηµοσίων Ι.Ε.Κ.» Εγχειρίδιο Χρήστη Φάση 2: Αρχική Καταχώρηση Συµβάσεων

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

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Εργαστήριο 2: Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραμματισμού

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

ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2015 Β ΦΑΣΗ ÁÈÇÍÁ ΕΚΦΩΝΗΣΕΙΣ

ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2015 Β ΦΑΣΗ ÁÈÇÍÁ ΕΚΦΩΝΗΣΕΙΣ ΤΑΞΗ: ΚΑΤΕΥΘΥΝΣΗ: ΜΑΘΗΜΑ: ΘΕΜΑ Α Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ (2ος Κύκλος) ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ηµεροµηνία: Κυριακή 19 Απριλίου 2015 ιάρκεια Εξέτασης: 3 ώρες ΕΚΦΩΝΗΣΕΙΣ Α1.

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

ΗΜΥ 213. Εργαστήριο Οργάνωσης Η.Y. και Μικροεπεξεργαστών. Ασκήσεις: week3 και week4. Διδάσκων: Δρ. Γιώργος Ζάγγουλος

ΗΜΥ 213. Εργαστήριο Οργάνωσης Η.Y. και Μικροεπεξεργαστών. Ασκήσεις: week3 και week4. Διδάσκων: Δρ. Γιώργος Ζάγγουλος ΗΜΥ 213 Εργαστήριο Οργάνωσης Η.Y. και Μικροεπεξεργαστών Ασκήσεις: week3 και week4 Διδάσκων: Δρ. Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy www.ece.ucy.ac.cy/courses/ece213 Ορίσματα στο QtSpim

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

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010 Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010 Καθηγητής. Γουνόπουλος Άσκηση 1 Σκοπός της εργασίας αυτής είναι η κατανόηση της εσωτερικής λειτουργίας

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

Προγραμματισμός Υπολογιστών με C++ Φύλλο Διαγωνίσματος Ακαδημαϊκό εξάμηνο: Χειμερινό

Προγραμματισμός Υπολογιστών με C++ Φύλλο Διαγωνίσματος Ακαδημαϊκό εξάμηνο: Χειμερινό Προγραμματισμός Υπολογιστών με C++ Φύλλο Διαγωνίσματος Ακαδημαϊκό εξάμηνο: Χειμερινό 2013-14 Διδάσκων: Γεώργιος Παπαϊωάννου Μονογραφή επιτηρητή: Στοιχεία Φοιτητή (συμπληρώνεται από το φοιτητή) Όνομα: Αίθουσα/αμφιθέατρο:

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

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή Στο εργαστήριο αυτό θα μάθουμε για τη χρήση συναρτήσεων με σκοπό την κατασκευή αυτόνομων τμημάτων προγραμμάτων που υλοποιούν μία συγκεκριμένη διαδικασία, τα οποία

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

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή Εγχειρίδιο Φοιτητών 1. Εισαγωγή Η ηλεκτρονική πλατφόρµα «e-class», αποτελεί ένα ολοκληρωµένο σύστηµα Ασύγχρονης Τηλεκπαίδευσης. Στόχος της είναι παροχή υποδοµών εκπαίδευσης και κατάρτισης ανεξάρτητα από

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

Πώς γίνεται το debug? Το debug γίνεται με δύο τρόπους, ως επί το πλείστον. Τουλάχιστον, εγώ δύο έμαθα, και αυτούς αναφέρω.

Πώς γίνεται το debug? Το debug γίνεται με δύο τρόπους, ως επί το πλείστον. Τουλάχιστον, εγώ δύο έμαθα, και αυτούς αναφέρω. Τι είναι το debug μαμα? Με απλά λόγια, debug (αποσφαλμάτωση αλλά που να κάθεσαι να το πεις), είναι η διαδικασία εντοπισμού και διόρθωσης σφαλμάτων που υπάρχουν σε κώδικα (ασχέτως γλώσσας προγραμματισμού).

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

Εργαστηριακή Άσκηση 4 Μορφοποίηση Κειμένου μέσω του

Εργαστηριακή Άσκηση 4 Μορφοποίηση Κειμένου μέσω του Μορφοποίηση χαρακτήρων Όταν ανοίγουμε το Word η γραμματοσειρά που υπάρχει είναι προκαθορισμένη. Το πλαίσιο διαλόγου Γραμματοσειρά μας επιτρέπει να κάνουμε περισσότερες μορφοποιήσεις. Επιλέγουμε Μορφή Απόσταση

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

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Εργαστήριο 4: 4.1 Η Δομή Ελέγχου if Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Γενική Μορφή: Παρατηρήσεις:

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

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 06 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

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