Α.Μ. ΒΑΘΜΟΣ ΣΧΟΛΙΑ. οριακό PASS

Σχετικά έγγραφα
Βαθμός Σχόλια. lab5 PASS PASS PASS PASS PASS. Οριακά PASS - Καλή δουλειά

Βαθμός Σχόλια. lab6 PASS PASS. - Πολύ καλή δουλειά, αλλά προσπάθησε να κάνεις την άσκηση χρησιµοποιώντας συναρτήσεις από το string.

lab7 PASS -Δεν έχεις καθόλου σχόλια! Διάβασε το φυλλάδιο. PASS -Πολύ καλή εργασία µε σωστά και επεξηγηµατικά σχόλια. -Πρόσεξε την στοίχισή σου!

lab2 -Στην printf να βάζεις \n έτσι ώστε να αλλάζει γραµµή όποτε σου εµφανίζει κάποιο µήνυµα.

-Δεν έχεις σχόλια, καλό θα ήταν να έχεις πιο περιγραφικό σχόλιο στην αρχή

Sheet2 Α.Μ FAIL. οριακό PASS. - Έπρεπε να χρησιµοποιήσετε συναρτήσεις από τη string.h

lab13grades 449 PASS 451 PASS PASS FAIL 1900 FAIL Page 1

FAIL PASS PASS οριακά

lab5 -Ο κώδικάς σου είναι σωστός αλλά από εδώ και στο εξής προσπάθησε να βάζεις σχόλια στην µορφή που ζητάει το φυλλάδιο

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

lab9grades Άσκηση 1 - Σωστοί τύποι (παραµέτρων και επιστρεφόµενης τιµής) της series_cosh.

lab7grades -Σωστή χρήση της sprintf -Σωστά ανιχνεύετε τον χαρακτήρα που πρέπει να αφαιρέσετε. -Σωστή µεταφορά στοιχείων µια θέση αριστερά.

Βαθμός Σχόλια. lab PASS 1194 PASS 1238 PASS 1239 PASS

Α.Μ. ΒΑΘΜΟΣ ΣΧΟΛΙΑ 321 FAIL

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

Sheet1_2. - Δεν υπάρχουν σχόλια συναρτήσεων - Να χρησιµοποιείς πιο περιγραφικά ονόµατα µεταβλητών (και σίγουρα όχι απλούς χαρακτήρες όπως c, d) Page 1

lab6grades - Δεν έχετε δηλώσει το βαθµό βάσης ως σταθερά. - Το µήνυµα εισόδου θέλει χαρακτήρα κενού ' ' στο τέλος και όχι TAB '\t'.

Sheet1_2. - Δεν απελευθερώνεις τη δυναµικά δεσµευµένη µνήµη. - Η έξοδος του προγράµµατός σου δεν είναι ακριβώς όπως ζητούσε η άσκηση.

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

Τα ονόµατα των φακέλων πρέπει να έχουν το επίθετά σας και όχι τα username που χρησιµοποιείτε στα εργαστήρια.

ΑΕΜ ή username. Sheet2

to post PASS PASS FAIL

scanf() scanf() stdin scanf() printf() int float double %lf float

- Το πρόγραµµα σας δίνει τα αναµενόµενα αποτελέσµατα.

lab13grades Άσκηση 2 -Σωστά απελευθερώνετε ολόκληρη τη λίστα και την κεφαλή

Βαθμός Σχόλιο. lab3_grades

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

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Sheet1_2 FAIL. - To πρόγραµµα δεν κάνει compile Δεν παρέδωσε FAIL

Sheet2. - Άσκηση 1 οκ - Άσκηση 2 οκ. Σκέψου πώς θα µπορούσες να την

lab6grades ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ Διαδικαστικά: Όλα οκ.

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

- Σωστή χρήση του προσδιοριστή const για την σταθερά pi. Καλό θα ήταν επιλέξετε κεφαλαία γράµµατα για το όνοµα της σταθεράς.

lab10grades - Το αποτέλεσµα της τοµής θα έπρεπε να εµφανίζετε µέσα σε εισαγωγικά "Helo".

Άσκηση 2: -Δεν παραδόθηκε. Το εµαιλ είχε λάθος θέµα. Έπρεπε να είναι CE120 lab6

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

Sheet3_2. Τα literals (3.0, 1.5, κτλ) πρέπει να ορίζονται ως σταθερές.

Παράδοση άσκησης: οκ, αλλά προσέξτε τις νέες οδηγίες για την ονοµασία του φακέλου.

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

lab5grades ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ ΑΣΚΗΣΗΣ ΑΛΛΑ ΣΧΟΛΙΑ

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

lab9grades -Έπρεπε να χρησιµοποιήσεις την sprintf για το formatting των strings.

lab7grades ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ

lab4grades Παράδοση ασκήσεων: -Όλα καλά Άσκηση 1η: -Σωστή 357 PASS

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

printf Οι κωδικοί (format codes) του printf για διάφορους τύπους δεδοµένων είναι:

Επανάληψη για τις Τελικές εξετάσεις. (Διάλεξη 24) ΕΠΛ 032: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ

Παράδοση άσκησης: Εστάλη με καθυστέρηση. Να μην επαναληφθεί Προσέξτε τις νέες οδηγίες για την ονομασία του φακέλου.

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

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

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

7. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Δεν έστειλες την άσκηση 1, και αυτό που έστειλες ήταν σκέτο αρχείο, όχι το tgz που ζητούσε η εκφώνηση.

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

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

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

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

lab14grades ΑΕΜ ΒΑΘΜΟΣ ΣΧΟΛΙΑ

Προγραμματισμός Η/Υ (ΤΛ2007 )

Λύσεις για τις ασκήσεις του lab5

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

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

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

Προγραμματισμός Η/Υ (ΤΛ2007 )

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: Τετάρτη 7/12/2016, 21:00

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

Απλά Προγράμματα. Βήματα: 1. Καθορισμός παράστασης δεδομένων στη μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων

Κεφάλαιο , 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Γλώσσα Προγραμματισμού C

Δομημένος Προγραμματισμός (ΤΛ1006)

Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014

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

Στην clearlist: - Όλα ok. οριακό PASS

5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while)

lab4grades Παρακαλούµε µη γράφετε σχόλια στα ελληνικά!

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

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

Sheet PASS 1426 PASS 1428 PASS. Page 1

Εισαγωγή στον Προγραµµατισµό. Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ

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

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

Διάλεξη 2: Επανάληψη Προγραμματισμού Συμβολοσειρές (strings) Διδάσκων: Παναγιώτης Ανδρέου

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

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

lab3_all Α.Μ. ΒΑΘΜΟΣ ΣΧΟΛΙΑ

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

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

Μ.Σ. lab12grades FAIL. η συνθήκη για έξοδο είναι και αυτή σωστή. Οριακό PASS. στα string. - σωστή και η κλήση της συνάρτησης.

- Ο τελευταίος έλεγχος στη συνάρτηση είναι περιττός. Αν έχει φτάσει µέχρι εκεί το πρόγραµµα, τότε αναγκαστικά το µήκος είναι >= του PASSWD_MIN_LEN.

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

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

Κεφάλαιο 8.7. Πίνακες & Συναρτήσεις ( ιάλεξη 17) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

lab2grades printf("calculus: %.4lf\n", calculus);

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

4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for)

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: Πέµπτη 17/12/2015, 22:00

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

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

Transcript:

Α.Μ. ΒΑΘΜΟΣ ΣΧΟΛΙΑ 321 οριακό 1058 FAIL - Καλή δουλειά γενικά. - Πρόσεχε λίγο τα ονόµατα συναρτήσεων/µεταβλητών. Για παράδειγµα, το όνοµα integer δεν είναι καθόλου καλό γιατί δεν περιγράφει τι κάνει η συνάρτηση. Ένα καλύτερο όνοµα θα ήταν ispositive. Επίσης, µη δίνεις ονόµατα του ενός γράµµατος στις µεταβλητές εκτός από τα i, j για for loops. - Δεν υπάρχουν σχόλια. - Δεν κάνει compile. Καλό είναι κάθε φορά που γράφεις λίγο κώδικα, να κάνεις κι ένα compile και να διορθώνεις τα λάθη, αντί να περιµένεις να τελειώσει όλο το πρόγραµµα πρώτα. - Καλή αρχή γενικά, αλλά όχι απόλυτα σωστός τρόπος σκέψης προς το τέλος. Πρέπει να έχεις διαφορετικές µεταβλητές για την επόµενη θέση από την αρχή του πίνακα και για την επόµενη θέση από το τέλος, γιατί δεν προστίθενται παράλληλα τα µικρά και κεφαλαία γράµµατα. - Περιέχει αδικαιολόγητα πολλά errors και warnings. Έγινε κάποιο compile στο ενδιάµεσο της συγγραφής; - Όταν οι συναρτήσεις ορίζονται και υλοποιούνται µετά τη main, πρέπει να δηλώνεις τα πρωτότυπα των συναρτήσεων πριν τη main. - Σε printf λείπουν ""... - Η συνάρτηση Temp όπως καλείται στη main στη γραµµή 15 δεν αναθέτει την επιστρεφόµενη τιµή κάπου. Πώς αυτή µετά θα τη βρει το πρόγραµµα να την εκτυπώσει. Άρα ήθελες celsius = printf("%d", celsius); - Και πολλά άλλα λάθη... - Όταν ένας πίνακας έχει µέγεθος SIZE, τότε η αρίθµηση των στοιχείων γίνεται από 0 έως SIZE-1. - Η συνθήκη g> SIZE στη for αναγκάζει το loop να µην εκτελεστεί καµία φορά. Προσπάθησε να γράφεις κοµµάτια κώδικα που να µπορείς να δοκιµάζεις λίγο λίγο ότι τρέχουν και µετά συµπλήρωσε.

1349 Άσκηση 1η: - Καλός σχολιασµός, στοίχιση και ονοµασία µεταβλητών. - Σωστή υλοποίηση του προγράµµατος, δηλώνετε πολύ σωστά τις συναρτήσεις και τι επιστρέφουν - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Η έξοδος είναι σωστή, το µόνο που ξεχνάτε είναι να εκτυπώνετε κ µια αλλαγή γραµµής µετά την εκτύπωση των αποτελεσµάτων - Πολύ καλή υλοποίηση. - Χρησιµοποιείτε σωστά τις συναρτήσεις της ctype.h και εκτυπώνετε σωστά την έξοδο. 1482 οριακό 1556 - Καλή δουλειά γενικά. - Πριν παραδώσετε την άσκηση να σβήνετε τα βοηθητικά printf - Να αφήνετε µια κενή γραµµή ανάµεσα στις συναρτήσεις για να ξεχωρίζει πού τελειώνει η µία και πού ξεκινά η άλλη. Ακόµη καλύτερα θα ήταν να είχατε και σχόλια σε κάθε µιά. - ΠΡΟΣΟΧΗ στις συγκρίσεις! Μη χρησιµοποιείτε = για ==. Μέχρι τώρα θα έπρεπε να αναγνωρίζετε το warning του compiler. - Λάθος ο αλγόριθµός σας. Έπρεπε να κάνετε αριθµητική χαρακτήρων για να γίνει σωστά η πρόσθεση. Γενικά θέλει δουλειά η άσκηση. - Το µέγεθος του πίνακα char έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Καλά σχόλια. - Η συνάρτηση power θα έπρεπε να είναι void (ως προς τον τύπο επιστροφής). Τα αποτελέσµατα θα έπρεπε να τυπώνονται µέσα στη συνάρτηση και όχι από τη main. Οπότε καλά κάνετε και τυπώνετε το NEGATIVE εκεί. Επίσης, όταν πέφτει στο if κοµµάτι, δεν έχει δοθεί τιµή στο αποτέλεσµα και το return στη γραµµή 29 επιστρέφει σκουπίδια. - Η συνάρτηση calckelsiou ναι µεν φαίνεται να επιστρέφει double αλλά η kelsiou στο body της συνάρτησης έχει δηλωθεί ως int. Για αυτό και το αποτέλεσµα δεν υπολογίζεται σωστά. - Σε γενικές γραµµές οκ. Όµως αν δώσω τιµή ενός non alphabet character το πρόγραµµα δε θα λειτουργεί σωστά. Αυτό οφείλεται στο γεγονός ότι το k που ελέγχει το for θα αυξάνεται είτε διαβαστεί χαρακτήρας αλφαβητικός είτε όχι. - Πιο κατάλληλο ήτανε να γίνει η επανάληψη µε while και αυτός ο µετρητής να αυξανόταν όταν διαβαζόταν αλφαβητικός χαρακτήρας. -Επίσης δε χρησιµοποιήθηκε η τιµή του define, και αν το SIZE πάνω αλλαχθεί, το πρόγραµµα δε θα λειτουργεί σωστά.

1559 1561 Οριακό οριακό -Πολύ καλά. -Σωστή χρήση των συναρτήσεων. Η printing έχει οριστεί σωστά ως void. -Καλή στοίχιση και ονόµατα µεταβλητών. -Δεν υπάρχει αρχικό σχόλιο. -Η άσκηση δεν είναι ολοκληρωµένη. -Χρησιµοποιείτε sprintf, αλλά το formatstring πρέπει να έχει µέγεθος [13]. -Χρησιµοποιείτε την strlen χωρίς να έχετε κάνει include την string.h -Δεν υπάρχει υλοποίηση για την πρόσθεση των αριθµών. - Λάθος συνθήκη στο for. - Λάθος συνθήκη στο for. Προσέξτε αυτό το λάθος και σηµειώστε τι warning βγάζει ο compiler για να µην το ξανακάνετε - ΑΠΑΓΟΡΕΥΟΝΤΑΙ οι καθολικές µεταβλητές! Δεν υπήρχε λόγος να κάνεις καθολική µεταβλητή το input_arr αφού έτσι κι αλλιώς χρησιµοποιείται µόνο στη main. - Η PosOrNeg έπρεπε να παίρνει µία παράµετρο, κι απλά να χρησιµοποιείται δύο φορές στην Power - Καλή δουλειά κατά τα άλλα - βλ. σχόλιο για καθολικές µεταβλητές - Από τη στιγµή που κάνεις #define το SIZE, πρέπει να το χρησιµοποιείς. Το upper_pos έπρεπε να έχει αρχικοποιηθεί µε βάση το SIZE κι όχι µε βάση το 10. Επίσης, έπρεπε να είναι SIZE-1 γιατί οι θέσεις του πίνακα ξεκινούν από το µηδέν (γι'αυτό "χάνεις" κι ένα χαρακτήρα)

'Άσκηση 1η: 1562 -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Καλά ονόµατα των συναρτήσεων -Σωστή χρήση της sprintf. -Σωστή χρήση της strcmp. -Η δήλωση της µεταβλητής double temperature_in_celsius; στη συνάρτηση fahrenheit_to_celsius δε χρειάζεται γιατί την δίνεται ήδη σαν παράµετρο. 1563 -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση των συναρτήσεων της ctype -Πολύ καλά ονόµατα µεταβλητών. -Η συνάρτηση ektiposi έπρεπε να ήταν void χωρίς να επιστρέφει τιµή. -Σωστή λογική αλλά έχετε ένα µικρό λάθος στο αποτέλεσµα. Ενώ στο return οι µεταβλητές σας σωστά είναι double, δηλώνετε όλες σας τις συναρτήσεις ως int, ενώ θα έπρεπε να ήταν και αυτές double. -Δεν έχετε ολοκληρωµένο σχόλιο. -Μεταβλητές, στοίχιση όπως πάνω. -Θέλουµε να χρησιµοποιήσετε τη sprintf για να format του πίνακα. -Γενικά έχετε πιάσει τη λογική, αλλά δεν το υλοποιήσατε σωστά.

1565 1566 -Καλά σχόλια. -Πολύ καλές µεταβλητές. -Η µορφοποίηση του κώδικα δεν είναι πολύ καλή. Κολλάτε σχόλια µε εντολές. -Καλή η χρήση των συναρτήσεων. -Αρκετά καλή δουλειά. -Μεταβλητές, σχόλια και πάλι καλά -Καλύτερη µορφοποίηση από πριν. -Καλή χρήση της sprintf. -Το πρόγραµµα σας δεν υπολογίζει αυτό που ζητείται. Καλή προσπάθεια. -Πολύ καλό σχόλιο, στοίχιση και µεταβλητές. -Πολύ καλή χρήση συναρτήσεων και η κλήση αυτών. -Το 350 έπρεπε να ήταν σταθερά. -Πολύ καλή δουλειά. -Ο κώδικας δεν κάνει compile επειδή λείπει το ; στη σειρά 8. -Σχόλιο, στοίχιση και µεταβλητές και πάλι καλά. -Καλή χρήση της sprintf. -Πολύ καλή προσπάθεια.

'Άσκηση 1η: 1567 -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Καλά ονόµατα των συναρτήσεων -Σωστή χρήση της sprintf. -Σωστή χρήση της strcmp. -Η δήλωση της µεταβλητής double temperature_in_celsius; στη συνάρτηση fahrenheit_to_celsius δε χρειάζεται γιατί την δίνεται ήδη σαν παράµετρο. -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση των συναρτήσεων της ctype - Πολύ καλά. Ευανάγνωστος κώδικας και σωστά αποτελέσµατα. -Καλή χρήση και κλήση συναρτήσεων. Η συνάρτηση print θα έπρεπε να είναι void, µιας και δεν χρειάζεται να επιστρέφει κάποια τιµή. -Υπάρχουν σχόλια σε κάθε συνάρτηση του προγράµµατος. 1568 Άσκηση2: -Το πρόγραµµα σας δεν βγάζει σωστά αποτελέσµατα. -Ο υπολογισµός του αθροίσµατος δεν είναι ολοκληρωµένος και δεν έχετε χρησιµοποιήσει κρατούµενο. -Το formatstring πρέπει να έχει µέγεθος [13]. -Δεν υπάρχει αρχικό σχόλιο. -Κατά τα άλλα φαίνεται να έχετε συλλάβει τη λογική της άσκησης. Προσπαθήστε να τη λύσετε σωστά στο σπίτι.

1570 -Ωραία σχόλια. -Καλά ονόµατα µεταβλητών εκτός από τις µεταβλητές της συνάρτησης metatropis. -Πολύ καλή χρήση συναρτήσεων και η κλήση αυτών εκτός αυτής που εκτυπώνει το αποτέλεσµα που έπρεπε να ήταν void και να µην επιστρέφει τίποτα. -Πολύ καλή δουλειά. -Μεταβλητές, στοίχιση και σχόλια όπως και πάνω. -Έχετε warnings επειδή το sum έπρεπε να ήταν int και επειδή έχετε 'number[i]', ενώ έπρεπε σκέτο number[i]. -Πολύ καλή χρήση της sprintf. -Το πρόγραµµα σας έχει λογική αν και έχετε µικρολαθάκια και έπρεπε να υπολογίζετε και το κρατούµενο. -Καλή προσπάθεια. 'Άσκηση 1η: 1571 Οριακό -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Όχι και τόσο καλή στοίχιση αν στο επόµενο εργαστήριο έχετε χάλια στοίχιση θα πάρετε κατευθείαν fail. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "convert_speed" και όχι converter. -Το πρόγραµµα σας δεν έχει συντακτικά λάθη αλλά έχει προειδοποιήσεις. -Στοίχιση όπως και στην 1η. -Καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση της sprintf. -Το πρόγραµµα είναι ηµιτελές. Λύστε το σπίτι και δείτε τις λύσεις.

1572 Οριακό 1573 1574 -Καλές µεταβλητές. -Προσοχή στη στοίχιση. -Ωραία χρήση συναρτήσεων εκτός της ektypwsh που έπρεπε να είναι void και να µην επιστρέφει τίποτα. -Καλή δουλειά. -Ο κώδικας δεν κάνει compile επειδή δεν κλείνετε τη main. -Έχετε και warnings. -Δε χρησιµοποιείτε τη sprintf για format. -Όταν έχουµε σταθερά χρησιµοποιούµε αυτή και όχι το 51 όπως κάνετε στον κώδικα. -Καλά ονόµατα µεταβλητών εκτός των παραµέτρων των συναρτήσεων. Θέλουµε και εκεί περιγραφικά ονόµατα. -Καλή χρήση των συναρτήσεων. -Πολύ καλή δουλειά. -Πολύ καλή στοίχιση και µεταβλητές. -Δεν έχετε αρχικό σχόλιο. -Καλή η χρήση της sprintf. -Πάρα πολύ καλή προσπάθεια. - Τα αποτελέσµατα του προγράµµατος είναι οκ. - Οι συναρτήσεις έχουν υλοποιηθεί σωστά βάσει προδιαγραφών. -Δεν υπάρχουν σχόλια στον κώδικα. -Ονόµατα µεταβλητών οκ - Το µέγεθος του πίνακα έχει δηλωθεί αλλά δεν έχει χρησιµοποιηθεί. Για να µπορέσετε να το αξιοποιήσετε χρησιµοποιείστε την sprintf, όπως αυτή παρουσιάστηκε στις διαλέξεις. - Το πρόγραµµα δε λειτουργεί τελείως ορθά βάσει προδιαγραφών και φταίει ο λάθος αλγόριθµος που χρησιµοποιείτε. - Η γραµµή 19 δε θα έπρεπε να υπάρχει. Με το που διαβάζετε ένα γράµµα, το αποθηκεύετε στον πίνακα. Αυτό θα έπρεπε να γίνεται µόνο αν το γράµµα πληρεί τις προϋποθέσεις. Η putchar τοποθετεί ένα χαρακτήρα. Μάλλον θέλατε getchar για να αγνοεί τα '\n'. - isupper(letter[j]) ---> αφού δεν έχει τιµή ακόµα δεν τρέχει ποτέ για uppercase letter. Θέλετε islower(c) και isupper(c). - Προσπαθήστε να το γράψετε σωστά βάσει των υποδείξεων,

1575 FAIL 1577 1578 Άσκηση 1η: - Οι συναρτήσεις convtemp και getint είναι σωστές, ενώ στην powerf έχετε ορίσει να επιστρέφει τιµή τύπου int, αλλά αυτό δεν χρειάζεται. Έπρεπε να είναι δηλωµένη έτσι ώστε να µην επιστρέφει τιµή, δηλαδή void. Ο τρόπος που υλοποιείται όµως είναι οκ. - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Στη main, διαβάζετε µε την scanf ένα αλφαριθµητικό, όµως δεν περιορίζετε το µήκος που θα διαβαστεί, µε αποτέλεσµα, σε περίπτωση που ο χρήστης εισάγει παραπάνω από 15 χαρακτήρες, το πρόγραµµα να γράψει δεδοµένα σε περιοχή της µνήµης που δεν του ανήκει. - Δεν παραδόθηκε -Πολύ καλό σχόλιο, στοίχιση και µεταβλητές. -Πολύ καλή χρήση συναρτήσεων και η κλήση αυτών. -Το 350 έπρεπε να ήταν σταθερά. -Πολύ καλή δουλειά. -Ο κώδικας δεν κάνει compile επειδή λείπει το ; στη σειρά 8. -Σχόλιο, στοίχιση και µεταβλητές και πάλι καλά. -Καλή χρήση της sprintf. -Πολύ καλή προσπάθεια. -Καλά σχόλια -Πολύ καλές µεταβλητές. -Η µορφοποίηση του κώδικα δεν είναι πολύ καλή. Κολλάτε σχόλια µε εντολές. -Καλή η χρήση των συναρτήσεων. -Αρκετά καλή δουλειά. -Μεταβλητές, σχόλια και πάλι καλά -Καλύτερη µορφοποίηση από πριν. -Καλή χρήση της sprintf. -Το πρόγραµµα σας δεν υπολογίζει αυτό που ζητείται. καλή προσπάθεια.

1579 -Καλά ονόµατα µεταβλητών εκτός των παραµέτρων των συναρτήσεων. Θέλουµε και εκεί περιγραφικά ονόµατα. -Καλή χρήση των συναρτήσεων. -Πολύ καλή δουλειά. -Πολύ καλή στοίχιση και µεταβλητές. -Δεν έχετε αρχικό σχόλιο. -Καλή η χρήση της sprintf. -Πάρα πολύ καλή προσπάθεια. -Ο κώδικας σας δεν κάνει compile - έχει πολλά errors και warnings. -Έχετε πολλά βασικά λάθη. Π.χ. Λάθος στη σύνταξη της scanf, διαβάζετε string έχοντας δηλώσει τη µεταβλητή απλά ως char, έχετε αδήλωτες µεταβλητές και δεν κλείνει η main. 1580 FAIL -Ξανά ο κώδικας έχει πολλά errors και warnings. -Πολύ βασικό λάθος το ότι χρησιµοποιείτε do-while χωρίς αγκύλες! 1581 Οριακό Γενικότερα, φαίνεται ότι γράφετε τους κώδικες µία και έξω χωρίς να τους κάνετε compile. Έχετε προχωρήσει στη δεύτερη άσκηση χωρίς να έχετε καν βεβαιωθεί ότι η πρώτη τρέχει. 'Άσκηση 1η: -Το πρόγραµµα σας δουλεύει σωστά χωρίς λάθη -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Όχι και τόσο καλή στοίχιση αν στο επόµενο εργαστήριο έχετε χάλια στοίχιση θα πάρετε κατευθείαν fail. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. -Όχι και τόσο καλά ονόµατα µεταβλητών. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "convert_speed" και όχι "speed2". -Το πρόγραµµα σας έπρεπε να εκτυπώνει την απόσταση µε ακρίβεια 2 δεκαδικών (79,78 µ), σε εσάς δε εκτυπώνεται σωστά. -Το πρόγραµµα σας δεν έχει συντακτικά λάθη αλλά έχει προειδοποιήσεις. -Στοίχιση καλύτερη από την 1η. -Καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση της sprintf. -Το πρόγραµµα είναι ηµιτελές. Λύστε το σπίτι και δείτε τις λύσεις.

'Άσκηση 1η: 1582 -Το πρόγραµµα σας δουλεύει σωστά χωρίς λάθη -Δεν υπάρχουν σχόλια στον κώδικα. -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση. -Όχι και τόσο καλά ονόµατα µεταβλητών. -Δε γίνεται χρήση σταθερών ενώ θα πρεπε να γίνεται (για το πίνακα). -Όχι και τόσο καλά ονόµατα των συναρτήσεων -Δε γίνεται χρήση της sprintf. -Σωστή χρήση της strcmp. -Εµφανίζονται σχόλια που δε χρειάζονται. 1584 οριακό -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Δεν υπάρχουν σχόλια στον κώδικα. -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση των συναρτήσεων της ctype. -Δε κάνετε σωστό έλεγχο. Αν δώσω αριθµό το βάζει κανονικά στον πίνακα. Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Ωραία τα ονόµατα των συναρτήσεων. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. -Ηµιτελές πρόγραµµα σε πολύ αρχικό στάδιο. Ωραία σχόλια γενικότερα -Δε γίνεται χρήση της sprintf. -Καλή στοίχιση.

1587 Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Ωραία τα ονόµατα των συναρτήσεων. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. -Καλή προσπάθεια. -Δεν υπάρχει περιγραφικό σχόλιο στην αρχή του προγράµµατος. Δεν υπάρχουν σχόλια στον κώδικα -Σωστή χρήση της sprintf. -Λογικά λάθη κατά την αποθήκευση του αθροίσµατος. Τα ψηφία υψηλής τάξης δεν αποθηκεύονται 'Άσκηση 1η: -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Καλά ονόµατα µεταβλητών και ονόµατα των συναρτήσεων 1589 -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -H στοίχιση δεν είναι και τόσο καλή. -Σωστή χρήση της sprintf. -Υπάρχει κάποιο λογικό λάθος το οποίο δε σας εµφανίζει το σωστό αποτέλεσµα. Προσπαθήστε λίγο να βελτιώσετε την άσκηση στο σπίτι σας και κατόπιν δείτε την λύση της.

-Πολύ καλά. -Σωστή χρήση των συναρτήσεων. Η ektupwse_apostash έχει οριστεί σωστά ως void. -Καλή στοίχιση και ονόµατα µεταβλητών. 1590 οριακό 1591 -Ο κώδικας σας δεν κάνει compile γιατί έχει αρκετά errors. Δεν έχετε δηλώσει κάποιες µεταβλητές και δεν κλείνει η main. Να κάνετε συχνά compile όταν γράφετε ένα πρόγραµµα γιατί όσο πιο µεγάλο είναι τόσο πιο δύσκολο να διορθώσετε λάθη (ειδικά αν είναι χαµένα άγκιστρα κτλ.) -Φαίνεται να έχετε συλλάβει σωστά τη λύση της άσκησης, αλλά µάλλον δεν προλάβατε να τη δοκιµάσετε. -Για να βρείτε πιο εύκολα τα µεγέθη των strings θα µπορούσατε να χρησιµοποιήσετε τη συνάρτηση strlen. Άσκηση 1η: - Στην µετατροπή των βαθµών Fahrenheit σε Celsius έχετε λάθος τον τύπο, το σωστό είναι ((fahr-32)*5)/9. - Η συνάρτηση ύψωσης σε δύναµη θα έπρεπε να είναι τύπου void, δηλαδή να µην επιστρέφει κάτι. Έτσι, εφόσον ο χρήστης πληκτρολογεί POWER, η main διαβάζει δύο ακεραίους και καλεί την ektheths, χωρίς να µεριµνήσει για την εκτύπωση του αποτελέσµατος, η οποία θα γίνει στην ektheths. - Η δήλωση define είναι καλό να γίνεται µαζί µε τις include στην αρχή του προγράµµατος. - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες - Στην scanf για την ανάγνωση της επιλογής του χρήστη, πρέπει να διαβάσουµε έως 15 χαρακτήρες, όχι 14. - Στοίχιση και σχολιασµός του προγράµµατος είναι οκ, τα ονόµατα των µεταβλητών θα µπορούσαν να είναι πιο περιφραστικά. - Σωστή χρήση των συναρτήσεων της ctype.h - Σωστή υλοποίηση - Στοίχιση, σχολιασµός του προγράµµατος και ονόµατα µεταβλητών είναι οκ

1592 FAIL 1593 FAIL 1594 FAIL Άσκηση 1η: - Οι συναρτήσεις convtemp και getint είναι σωστές, ενώ στην powerf έχετε ορίσει να επιστρέφει τιµή τύπου int, αλλά αυτό δεν χρειάζεται. Έπρεπε να είναι δηλωµένη έτσι ώστε να µην επιστρέφει τιµή, δηλαδή void. Ο τρόπος που υλοποιείται όµως είναι οκ. - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Στη main, διαβάζετε µε την scanf ένα αλφαριθµητικό, όµως δεν περιορίζετε το µήκος που θα διαβαστεί, µε αποτέλεσµα, σε περίπτωση που ο χρήστης εισάγει παραπάνω από 15 χαρακτήρες, το πρόγραµµα να γράψει δεδοµένα σε περιοχή της µνήµης που δεν του ανήκει. - Δεν παραδόθηκε Λάθος όνοµα αρχείου. Παραδώσατε µόνο την πρώτη άσκηση και δεν κάνει compile (µεγάλος αριθµός λαθών) 'Άσκηση 1η: -Το πρόγραµµα σας βγάζει warning και πολλά λάθη. -Δεν υπάρχει καν σχόλιο στην αρχή του προγράµµατος. - Στη δήλωση συναρτήσεων πρέπει να προσδιορίζετε τύπο για κάθε παράµετρο. -Καλή στοίχιση. -Όχι σωστά ονόµατα µεταβλητών. -Δεν ορίζονται καν οι σταθερές στο πρόγραµµα. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "convert_speed" και όχι epivevaiwsi kai metatropi!!!(περιγραφικά δηλαδή µε χρήση ρήµατος και χωρίς κενό µεταξύ τους) -Λάθος σύνταξη της main. -Επίσης, η συνάρτηση για την εκτύπωση που χρησιµοποιείτε, δεν πρέπει να είναι τύπου double αλλά void. -Ακόµη, όταν µία συνάρτηση σας επιστρέφει τιµή, θα πρέπει να την αποθηκεύετε κάπου (σε µια µεταβλητή) κατά την κλήση της. -Το πρόγραµµα σας βγάζει warnings και errors. -Δεν υπάρχει καν σχόλιο στην αρχή του προγράµµατος. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -καλά ονόµατα µεταβλητών. -Δεν γίνεται χρήση της sprintf. -Πρωτού στείλετε τις ασκήσεις βεβαιωθείτε ότι κάνουν compile.

1595 1596 οριακό οριακό - Καλή δουλειά γενικά. - Πριν παραδώσετε την άσκηση να σβήνετε τα βοηθητικά printf - Να αφήνετε µια κενή γραµµή ανάµεσα στις συναρτήσεις για να ξεχωρίζει πού τελειώνει η µία και πού ξεκινά η άλλη. Ακόµη καλύτερα θα ήταν να είχατε και σχόλια σε κάθε µια. - ΠΡΟΣΟΧΗ στις συγκρίσεις! Μη χρησιµοποιείτε = για ==. Μέχρι τώρα θα έπρεπε να αναγνωρίζετε το warning του compiler. - Λάθος ο αλγόριθµός σας. Έπρεπε να κάνετε αριθµητική χαρακτήρων για να γίνει σωστά η πρόσθεση. Γενικά θέλει δουλειά η άσκηση. -Σωστή χρήση και κλήση συναρτήσεων εκτός από τη metatrepei. Τι δουλειά έχει το const µπροστά από το return type? - Άσχηµα ονόµατα συναρτήσεων. Τι επιστρέφει? Τι µετατρέπει? - Έπρεπε να χρησιµοποιήσετε sprintf για το format string της scanf. -Η ύψωση σε δύναµη δεν επιστρέφει σωστό αποτέλεσµα επειδή δεν την έχετε υλοποιήσει σωστά στη συνάρτηση ektypwnei. -Καλή στοίχιση και αρχικό σχόλιο. -Η υλοποίηση σας δεν είναι σωστή, αλλά τουλάχιστον κάνει compile... -Δεν διαβάζετε σωστά τους χαρακτήρες (παίρνετε υπόψη και το enter) -Δεν χρησιµοποιείτε συναρτήσεις της ctype.h

1597 1598 Οριακό οριακό -Το πρόγραµµα σας βγάζει warning για κάτι το οποίο θα µπορούσατε να είχατε διορθώσει. -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "convert_speed" και όχι function!!!(περιγραφικά δηλαδή µε χρήση ρήµατος) -Ενώ δηλώνετε και ορίζεται τη συνάρτηση ektupwsh δεν την καλείτε καν, αντίθετα µε την εκφώνηση της άσκησης εκτυπώνετε µε µία printf. Επειδή η συνάρτηση σας είναι τύπου void, απλά θα έπρεπε να γράψετε στη main ektupwsh(metabliti); όπου µεταβλητή το όνοµα της µεταβλητής που θέλατε να εκτυπώσετε τη τιµή της. -Το πρόγραµµα σας βγάζει warnings και errors. -Περιγραφικό σχόλιο στην αρχή του προγράµµατος. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Όχι και τόσο καλά ονόµατα µεταβλητών. -Το µόνο που κάνει το πρόγραµµα σας είναι να διαβάζει τα δεδοµένα που έδωσε ο χρήστης. -Λάθος σύνταξη στην sprintf. Σας ξέφυγε ένα αυτάκι. -Πολύ καλά. -Σωστή χρήση των συναρτήσεων. Η ektupwse_apostash έχει οριστεί σωστά ως void. -Καλή στοίχιση και ονόµατα µεταβλητών. -Ο κώδικας σας δεν κάνει compile γιατί έχει αρκετά errors. Δεν έχετε δηλώσει κάποιες µεταβλητές και δεν κλείνει η main. Να κάνετε συχνά compile όταν γράφετε ένα πρόγραµµα γιατί όσο πιο µεγάλο είναι τόσο πιο δύσκολο να διορθώσετε λάθη (ειδικά αν είναι χαµένα άγκιστρα κτλ.) -Φαίνεται να έχετε συλλάβει σωστά τη λύση της άσκησης, αλλά µάλλον δεν προλάβατε να τη δοκιµάσετε. -Για να βρείτε πιο εύκολα τα µεγέθη των strings θα µπορούσατε να χρησιµοποιήσετε τη συνάρτηση strlen.

1599 - Πολύ άσχηµη στοίχιση. Αν αυτό ξανασυµβεί, η άσκηση πάει αυτόµατα για FAIL. - Οκ αποτελέσµατα. - Υπάρχει όµως warning που θα µπορούσατε να έχετε διορθώσει. Η συνάρτηση dynameis καλώς δεν επιστρέφει τίποτα µέσα µε return. Για αυτό το λόγο θα έπρεπε να είχε δηλωθεί ως void. - Το µέγεθος του πίνακα strleksi έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. 1600 Οριακό - Καλή προσπάθεια. - Όµως αν βάλουµε αριθµητικό χαρακτήρα, δε θα λειτουργήσει τελείως σωστά. Για αυτό αντί για for, θα µπορούσε να µπει while που να αυξάνει το µετρητή αν isalpa(c)! Άσκηση 1η: - Τα ονόµατα των µεταβλητών και των συναρτήσεων θα µπορούσαν να είναι πιο περιγραφικά. - Δεν χρειάζεται να αφήνετε µια κενή γραµµή µετά από κάθε εντολή, καλύτερα να κάνετε οµαδοποίηση - Η συνάρτηση Fahr πρέπει να παίρνει ως όρισµα έναν αριθµό κινητής υποδιαστολής (άρα float ή double) και να επιστρέφει το ίδιο. - Η συνάρτηση forc, πρέπει να είναι τύπου void και να µην επιστρέφει κάτι στη main, αυτό ζητείται στην εκφώνηση. Το αποτέλεσµα θα εκτυπωθεί κατευθείαν από την forc και όχι στη main. - Το µέγεθος του πίνακα str έπρεπε να γίνει define και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες - Η scanf πρέπει να διαβάζει έως 15 χαρακτήρες, όχι 14 (κάντε το µέγεθος του πίνακα 16) - Η δήλωση των µεταβλητών καλό είναι να γίνεται οµαδικά, στην αρχή της κάθε συνάρτησης (και στην main) - Επίσης, τα ονόµατα των µεταβλητών θα µπορούσαν να είναι πιο περιγραφικά - Ο έλεγχος if (((c>='a')&&(c<='z')) ((c>='a')&&(c<='z'))) είναι περιττός, από τη στιγµή που αµέσως µετά χρησιµοποιείτε τις συναρτήσεις της ctype.h - Η for εκτελείται SIZE φορές, χωρίς να αγνοεί στη µέτρηση τυχόν µη αλφαβητικούς χαρακτήρες (πχ - ) κλπ). Το σωστό θα ήταν το i να αυξάνεται µέσα στις if (islower(c)) και if (isupper(c)). Έτσι, το τελευταίο if (formlet[j]!=0) δεν χρειάζεται καν. - Η αρχικοποίηση του πίνακα δεν είναι απαραίτητη, από τη στιγµή που θέλουµε να γράψουµε δεδοµένα σε όλες τις θέσεις του

- Πολύ καλά. Ευανάγνωστος κώδικας και σωστά αποτελέσµατα. -Καλή χρήση και κλήση συναρτήσεων. Η συνάρτηση print θα έπρεπε να είναι void, µιας και δεν χρειάζεται να επιστρέφει κάποια τιµή. -Υπάρχουν σχόλια σε κάθε συνάρτηση του προγράµµατος. 1601 1602 Άσκηση2: -Το πρόγραµµα σας δεν βγάζει σωστά αποτελέσµατα. -Ο υπολογισµός του αθροίσµατος δεν είναι ολοκληρωµένος και δεν έχετε χρησιµοποιήσει κρατούµενο. -Το formatstring πρέπει να έχει µέγεθος [13]. -Δεν υπάρχει αρχικό σχόλιο. -Κατά τα άλλα φαίνεται να έχετε συλλάβει τη λογική της άσκησης. Προσπαθήστε να τη λύσετε σωστά στο σπίτι. Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Ωραία ονόµατα συναρτήσεων. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. Καλύτερα σχόλια στον κώδικα. -Σωστή χρήση της sprintf.

1604 1605 FAIL Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Προσοχή στα ονόµατα των συναρτήσεων. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. -Καλή προσπάθεια. Δεν υπάρχουν σχόλια στον κώδικα -Σωστή χρήση της sprintf. -Λογικά λάθη στην τελευταία while. Προσέξτε τι προσθέτετε και στο apotelesma και στο sum -Το πρόγραµµα δεν παράγει έξοδο -Ο κώδικας σας δεν τρέχει σωστά. -Κάνετε ανάγνωση της εντολής του χρήστη µε getchar περιµένοντας να εισάγει 15 χαρακτήρες. Έπρεπε να χρησιµοποιήσετε scanf. -Επίσης έχετε λάθος στη χρήση της strcmp. Όταν δύο string είναι ίδια, επιστρέφει 0 και όχι 1. Άρα οι έλεγχοι σας είναι λάθος. -Η τιµή που πρέπει να επιστρέφει η συνάρτηση temp1 είναι double, ενώ εσείς δηλώνετε την celcius ως int. -Ο κώδικας σας δεν κάνει compile. Έχει πολλά errors. -Επίσης δεν χρησιµοποιείτε συναρτήσεις της ctype.h -Ο κώδικας σας δεν κάνει compile - έχει πολλά errors και warnings. -Έχετε πολλά βασικά λάθη. Π.χ. Λάθος στη σύνταξη της scanf, διαβάζετε string έχοντας δηλώσει τη µεταβλητή απλά ως char, έχετε αδήλωτες µεταβλητές και δεν κλείνει η main. 1606 FAIL -Ξανά ο κώδικας έχει πολλά errors και warnings. -Πολύ βασικό λάθος το ότι χρησιµοποιείτε do-while χωρίς αγκύλες! Γενικότερα, φαίνεται ότι γράφετε τους κώδικες µία και έξω χωρίς να τους κάνετε compile. Έχετε προχωρήσει στη δεύτερη άσκηση χωρίς να έχετε καν βεβαιωθεί ότι η πρώτη τρέχει.

- Τα αποτελέσµατα του προγράµµατος είναι οκ. - Οι συναρτήσεις έχουν υλοποιηθεί σωστά βάσει προδιαγραφών. -Δεν υπάρχουν σχόλια στον κώδικα. -Ονόµατα µεταβλητών οκ - Το µέγεθος του πίνακα έχει δηλωθεί αλλά δεν έχει χρησιµοποιηθεί. Για να µπορέσετε να το αξιοποιήσετε χρησιµοποιείστε την sprintf, όπως αυτή παρουσιάστηκε στις διαλέξεις. 1607 1608 - Το πρόγραµµα δε λειτουργεί τελείως ορθά βάσει προδιαγραφών και φταίει ο λάθος αλγόριθµος που χρησιµοποιείτε. - Η γραµµή 19 δε θα έπρεπε να υπάρχει. Με το που διαβάζετε ένα γράµµα, το αποθηκεύετε στον πίνακα. Αυτό θα έπρεπε να γίνεται µόνο αν το γράµµα πληρεί τις προϋποθέσεις. Η putchar τοποθετεί ένα χαρακτήρα. Μάλλον θέλατε getchar για να αγνοεί τα '\n'. - isupper(letter[j]) ---> αφού δεν έχει τιµή ακόµα δεν τρέχει ποτέ για uppercase letter. Θέλετε islower(c) και isupper(c). - Προσπαθήστε να το γράψετε σωστά βάσει των υποδείξεων, 'Άσκηση 1η: -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Καλά ονόµατα µεταβλητών µέσα στη συνάρτηση main αλλά όχι και τόσο καλά µέσα στις συναρτήσεις που κάνατε. Κάποιες από τις µεταβλητές αυτές δε χρειάζονται καν (p,q,r) µπορούσατε στο return της συνάρτησης converter να είχατε απλά return speed. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "convert_speed" και όχι converter. -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση της sprintf. -Υπάρχει κάποιο λογικό λάθος το οποίο δε σας εµφανίζει το σωστό αποτέλεσµα. Προσπαθήστε λίγο να βελτιώσετε την άσκηση στο σπίτι σας και κατόπιν δείτε την λύση της.

1609 οριακό - Το πρόγραµµα περιέχει warning που ήτανε εύκολο να το διορθώσεις. Συγκεκριµένα η δύναµη δεν επιστρέφει τίποτα οπότε θα έπρεπε να έχει δηλωθεί ως void. - Το µέγεθος του πίνακα entoli θα έπρεπε να είχε γίνει define και έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Γιατί δηλώνεις το πρωτότυπο της strcmp µέσα στη main; Παρόλο που ο compiler δε βγάζει κάποιο λάθος, αυτό δε θα έπρεπε ποτέ να γίνεται. - Επίσης για την strcmp θα µπορούσες πιο απλά να γράψεις if (strcmp (entoli, "TEMP" ) == 0) χωρίς να ορίζεις τους πίνακες epibebaiwsi1, epibebaiwsi2. - Στη συνάρτηση δύναµη θα έπρεπε να ελέγχονται και οι δύο αριθµοί αν είναι θετικοί. Ο αλγόριθµός σου για τον υπολογισµό της δύναµης είναι λάθος. Χρειάζεσαι κάτι τέτοιο: HINT: ουδέτερο στοιχείο πολλαπλασιασµού το 1. Άρα apotelesma = 1; for(i=0; i<y; i++){ apotelesma = apotelesma * x;} - Άσχηµα ονόµατα µεταβλητών, όχι περιγραφικά - Δεν υπάρχουν σχόλια. - Δε χρησιµοποιήθηκαν συναρτήσεις από τη ctype.h. - Για να ολοκληρωθεί σωστά η άσκηση λείπει το εξής: όταν οι i, j συναντιούνται και το πρόγραµµα βγαίνει από το while, τότε ο επόµενος χαρακτήρας (αλφαβητικός) που θα διαβαστεί πρέπει να µπει σε εκείνη τη θέση. Έτσι δε θα βγαίνουν σκουπίδια σε εκείνη τη θέση στην έξοδο. 'Άσκηση 1η: -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "convert_speed" και όχι "metatropi". 1611 -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση της sprintf. -Υπάρχει κάποιο λογικό λάθος το οποίο δε σας εµφανίζει το σωστό αποτέλεσµα. Προσπαθήστε λίγο να βελτιώσετε την άσκηση στο σπίτι σας και κατόπιν δείτε την λύση της.

- Δε γράψατε τη συνάρτηση για το συντελεστή τριβής - Ασυνεπής στοίχιση και πολλές κενές γραµµές - Άσχηµα ονόµατα µεταβλητών. Μη χρησιµοποιείτε ονόµατα του ενός γράµµατος εκτός από i,j για for loops. Γιατί δε χρησιµοποιήσατε τα ονόµατα στον κώδικα που σας δώσαµε? - Δεν υπάρχουν σχόλια 1612 FAIL 1613 - Δεν κάνει compile. - Δε διαβάζετε σωστά την είσοδο. Τι ακριβώς ελέγχετε? Θέλουµε να διαβάζουµε ψηφία, όχι το αντίθετο. Επίσης, γιατί δε χρησιµοποιείτε scanf αλλά διαβάζετε ένα-ένα χαρακτήρα? Έχετε ήδη πάρει σχόλιο σε προηγούµενο εργαστήριο σχετικά µε αυτό. - Το πρόγραµµα δεν κάνει κάτι παραπάνω από το να προσπαθεί να διαβάσει τους δύο αριθµούς. -Πολύ καλά ονόµατα µεταβλητών. -Η συνάρτηση ektiposi έπρεπε να ήταν void χωρίς να επιστρέφει τιµή. -Σωστή λογική αλλά έχετε ένα µικρό λάθος στο αποτέλεσµα. Ενώ στο return οι µεταβλητές σας σωστά είναι double, δηλώνετε όλες σας τις συναρτήσεις ως int, ενώ θα έπρεπε να ήταν και αυτές double. -Δεν έχετε ολοκληρωµένο σχόλιο. -Μεταβλητές, στοίχιση όπως πάνω. -Θέλουµε να χρησιµοποιήσετε τη sprintf για να format του πίνακα. -Γενικά έχετε πιάσει τη λογική, αλλά δεν το υλοποιήσατε σωστά.

1615 Άσκηση 1η: - Στην µετατροπή των βαθµών Fahrenheit σε Celsius έχετε λάθος τον τύπο, το σωστό είναι ((fahr-32)*5)/9. - Η συνάρτηση ύψωσης σε δύναµη θα έπρεπε να είναι τύπου void, δηλαδή να µην επιστρέφει κάτι. Έτσι, εφόσον ο χρήστης πληκτρολογεί POWER, η main διαβάζει δύο ακεραίους και καλεί την ektheths, χωρίς να µεριµνήσει για την εκτύπωση του αποτελέσµατος, η οποία θα γίνει στην ektheths. - Η δήλωση define είναι καλό να γίνεται µαζί µε τις include στην αρχή του προγράµµατος. - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες - Στην scanf για την ανάγνωση της επιλογής του χρήστη, πρέπει να διαβάσουµε έως 15 χαρακτήρες, όχι 14. - Στοίχιση και σχολιασµός του προγράµµατος είναι οκ, τα ονόµατα των µεταβλητών θα µπορούσαν να είναι πιο περιφραστικά. - Σωστή χρήση των συναρτήσεων της ctype.h - Σωστή υλοποίηση - Στοίχιση, σχολιασµός του προγράµµατος και ονόµατα µεταβλητών είναι οκ -Πολύ καλές µεταβλητές και στοίχιση. -Πολύ καλή χρήση συναρτήσεων και κλήση αυτών. -Πολύ καλή δουλειά. 1617 -Καλή στοίχιση. -Κάποια ονόµατα µεταβλητών δεν είναι περιγραφικά. -Έπρεπε να χρησιµοποιήσετε τη sprintf για να κάνετε format. -Έχετε πιάσει τη λογική, αλλά το αποτέλεσµα δεν είναι σωστό. -Πολύ καλή προσπάθεια.

1618 1619 Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Προσοχή στα ονόµατα των συναρτήσεων. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. -Καλή προσπάθεια. Δεν υπάρχουν σχόλια στον κώδικα -Σωστή χρήση της sprintf. -Λογικά λάθη στην τελευταία while. Προσέξτε τι προσθέτετε και στο apotelesma και στο sum -Το πρόγραµµα δεν παράγει έξοδο - Πολύ καλή δουλειά µπράβο! - Προσέξτε µόνο λίγο να µην αφήνετε πολλαπλές κενές γραµµές ανάµεσα στις εντολές. - Καλή προσπάθεια, µπράβο. - Η εγγραφή στο άθροισµα έπρεπε να ξεκινά µια θέση πιο δεξιά και το τελικό κοµµάτι µε το sprintf είναι περιττό.

1622 - Το µέγεθος του πίνακα char έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Καλά σχόλια. - Η συνάρτηση power θα έπρεπε να είναι void (ως προς τον τύπο επιστροφής). Τα αποτελέσµατα θα έπρεπε να τυπώνονται µέσα στη συνάρτηση και όχι από τη main. Οπότε καλά κάνετε και τυπώνετε το NEGATIVE εκεί. Επίσης, όταν πέφτει στο if κοµµάτι, δεν έχει δοθεί τιµή στο αποτέλεσµα και το return στη γραµµή 29 επιστρέφει σκουπίδια. - Η συνάρτηση calckelsiou ναι µεν φαίνεται να επιστρέφει double αλλά η kelsiou στο body της συνάρτησης έχει δηλωθεί ως int. Για αυτό και το αποτέλεσµα δεν υπολογίζεται σωστά. - Σε γενικές γραµµές οκ. Όµως αν δώσω τιµή ενός non alphabet character το πρόγραµµα δε θα λειτουργεί σωστά. Αυτό οφείλεται στο γεγονός ότι το k που ελέγχει το for θα αυξάνεται είτε διαβαστεί χαρακτήρας αλφαβητικός είτε όχι. - Πιο κατάλληλο ήτανε να γίνει η επανάληψη µε while και αυτός ο µετρητής να αυξανόταν όταν διαβαζόταν αλφαβητικός χαρακτήρας. -Επίσης δε χρησιµοποιήθηκε η τιµή του define, και αν το SIZE πάνω αλλαχθεί, το πρόγραµµα δε θα λειτουργεί σωστά. 'Άσκηση 1η: 1624 -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Καλά ονόµατα µεταβλητών µέσα στη συνάρτηση main αλλά όχι και τόσο καλά µέσα στις συναρτήσεις που κάνατε. Κάποιες από τις µεταβλητές αυτές δε χρειάζονται καν (p,q,r) µπορούσατε στο return της συνάρτησης converter να είχατε απλά return speed. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "convert_speed" και όχι converter. -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση της sprintf. -Υπάρχει κάποιο λογικό λάθος το οποίο δε σας εµφανίζει το σωστό αποτέλεσµα. Προσπαθήστε λίγο να βελτιώσετε την άσκηση στο σπίτι σας και κατόπιν δείτε την λύση της.

1625 - Πολύ άσχηµη στοίχιση. Αν αυτό ξανασυµβεί, η άσκηση πάει αυτόµατα για FAIL. - Οκ αποτελέσµατα. - Υπάρχει όµως warning που θα µπορούσατε να έχετε διορθώσει. Η συνάρτηση dynameis καλώς δεν επιστρέφει τίποτα µέσα µε return. Για αυτό το λόγο θα έπρεπε να είχε δηλωθεί ως void. - Το µέγεθος του πίνακα strleksi έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Καλή προσπάθεια. - Όµως αν βάλουµε αριθµητικό χαρακτήρα, δε θα λειτουργήσει τελείως σωστά. Για αυτό αντί για for, θα µπορούσε να µπει while που να αυξάνει το µετρητή αν isalpa(c)! 1627 Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Προσοχή στα ονόµατα των συναρτήσεων. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. Ωραία σχόλια γενικότερα -Σωστή χρήση της sprintf.

1628 Άσκηση 1η: - Καλός σχολιασµός, στοίχιση και ονοµασία µεταβλητών. - Σωστή υλοποίηση του προγράµµατος, δηλώνετε πολύ σωστά τις συναρτήσεις και τι επιστρέφουν - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Η έξοδος είναι σωστή, το µόνο που ξεχνάτε είναι να εκτυπώνετε κ µια αλλαγή γραµµής µετά την εκτύπωση των αποτελεσµάτων - Πολύ καλή υλοποίηση. - Χρησιµοποιείτε σωστά τις συναρτήσεις της ctype.h και εκτυπώνετε σωστά την έξοδο. Άσκηση 1η: - Σωστός σχολιασµός, καλά ονόµατα µεταβλητών και πολύ καλή στοίχιση - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες - Στην συνάρτηση ipsosi_se_dunamh έχετε ένα λαθάκι στον υπολογισµό του αποτελέσµατος. Θα έπρεπε να είναι result = result*a; αντί για result = a*a. Έτσι όπως το έχετε γράψει, υπολογίζετε int b φορές την ύψωση του a στο τετράγωνο. 1629 1630 FAIL - Σωστός σχολιασµός, καλά ονόµατα µεταβλητών και πολύ καλή στοίχιση - Έχετε χρησιµοποιήσει σωστά τις συναρτήσεις της ctype.h - Η υλοποίηση είναι σωστή, µόνο η εκτύπωση του πίνακα στο τέλος δεν πρέπει να γίνει ανά χαρακτήρα, αλλά όλο µαζί σαν αλφαριθµητικό και µετά να ακολουθεί µια αλλαγή γραµµής. Άσκηση 3η: - Μπράβο που δουλέψατε και τρίτη άσκηση. - Δεν κάνει compile. Τα scanf είναι λάθος: έπρεπε να είχατε χρησιµοποιήσει sprintf για το format string. - Στα δύο for µε τα num1, num2 τι προσπαθούσατε να υπολογίσετε? Τα µήκη? Υπάρχει η strlen γιαυτό. - Δείτε η λύση για το αλγοριθµικό κοµµάτι. -Ο κώδικας σας δεν τρέχει σωστά. -Κάνετε ανάγνωση της εντολής του χρήστη µε getchar περιµένοντας να εισάγει 15 χαρακτήρες. Έπρεπε να χρησιµοποιήσετε scanf. -Επίσης έχετε λάθος στη χρήση της strcmp. Όταν δύο string είναι ίδια, επιστρέφει 0 και όχι 1. Άρα οι έλεγχοι σας είναι λάθος. -Η τιµή που πρέπει να επιστρέφει η συνάρτηση temp1 είναι double, ενώ εσείς δηλώνετε την celcius ως int. -Ο κώδικας σας δεν κάνει compile. Έχει πολλά errors. -Επίσης δεν χρησιµοποιείτε συναρτήσεις της ctype.h

1632 1633 Οριακό Οριακό -Πολύ καλά. -Σωστή χρήση των συναρτήσεων. Η printing έχει οριστεί σωστά ως void. -Καλή στοίχιση και ονόµατα µεταβλητών. -Δεν υπάρχει αρχικό σχόλιο. -Η άσκηση δεν είναι ολοκληρωµένη. -Χρησιµοποιείτε sprintf, αλλά το formatstring πρέπει να έχει µέγεθος [13]. -Χρησιµοποιείτε την strlen χωρίς να έχετε κάνει include την string.h -Δεν υπάρχει υλοποίηση για την πρόσθεση των αριθµών. - Λάθος συνθήκη στο for. Προσέξτε αυτό το λάθος και σηµειώστε τι warning βγάζει ο compiler για να µην το ξανακάνετε -Πολύ καλά. -Η συνάρτηση power θα έπρεπε να είναι δηλωµένη ως void, µιας και η εκτύπωση έπρεπε να γίνεται µέσα στη συνάρτηση και όχι στη main. -Καλή στοίχιση και ονόµατα µεταβλητών. ' -Το πρόγραµµα σας δεν τρέχει σωστά. -Οι τιµές των k, j έπρεπε να αρχικοποιούνται πριν την επανάληψη και όχι µέσα σε αυτή. Με αυτήν την αλλαγή ο κώδικας τρέχει σωστά. -Σωστή χρήση των συναρτήσεων της ctype.h -H printf("enter character:"); θα έπρεπε να βρίσκεται µέσα στην επανάληψη καθώς τυπώνεται µία φορά. -Καλό αρχικό σχόλιο.

'Άσκηση 1η: 1634 οριακό - Οι δηλώσεις συναρτήσεων είναι λάθος: δεν προσδιορίζετε τους τύπους των παραµέτρων και ως αποτέλεσµα κάνουν default σε int. Επιπλέον, στην temper δηλώνετε τοπική µεταβλητή η οποία έχει ίδιο όνοµα µε την παράµετρο, εποµένως την "κρύβει". Σε αυτό οφείλεται το ότι βγαίνουν λάθος αποτελέσµατα. -Οι συναρτήσεις πρέπει να στοιχίζονται όπως η main: Το prototype της συνάρτησης ξεκινά από την πρώτη στήλη, κι όχι ένα tab πιο µέσα. -Όχι και τόσο καλά ονόµατα µεταβλητών. -Δε γίνεται χρήση σταθερών ενώ θα πρεπε να γίνεται (για το πίνακα). -Όχι και τόσο καλά ονόµατα των συναρτήσεων -Δε γίνεται χρήση της sprintf. -Σωστή χρήση της strcmp. -Εµφανίζονται σχόλια που δε χρειάζονται. - Πολύ οριακό pass αυτή η άσκηση -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση των συναρτήσεων της ctype. -Στη scanf έπρεπε να έχετε ένα κενό.

1635 FAIL Άσκηση 1η: - Το πρόγραµµά σας βγάζει δύο warnings, το πρώτο για την µεταβλητή int apotelesma_ypswsis η οποία δεν χρησιµοποιείται πουθενά στη main και το δεύτερο warning, που είναι σοβαρό, ορίζετε την συνάρτηση ypswsi να επιστρέφει int, ενώ πουθενά στην υλοποίησή της δεν βάζετε κάποιο return. Το σωστό θα ήταν να την δηλώνατε ως void, που σηµαίνει ότι η συνάρτηση δεν θα επιστρέψει τίποτα στο σηµείο απ'όπου καλέστηκε. Εφόσον όµως ορίζεται µε άλλο τύπο επιστροφής, πρέπει να υπάρχει στο σώµα της και η return. - Η θερµοκρασία πρέπει να είναι αριθµός κινητής υποδιαστολής (float, double), όχι int. - Επίσης, η συνάρτηση temperature επιστρέφει τύπου double, ενώ η µεταβλητή cels είναι τύπου int. Ο τύπος της µεταβλητής που επιστρέφεται πρέπει να συµφωνεί µε τον τύπο που επιστρέφει η συνάρτηση. - Στην συνάρτηση ypswsi, η δήλωση return µέσα στη for προκαλεί τον τερµατισµό της συνάρτησης από την πρώτη επανάληψη της for. Κανονικά, θα έπρεπε να βρίσκεται µετά την εκτέλεση της for. Όπως και να έχει, ο τρόπος που υπολογίζετε την ύψωση στον 2ο ακέραιο, είναι λάθος. Δείτε προτεινόµενες λύσεις. - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Δεν χρησιµοποιείτε τις συναρτήσεις της ctype.h όπως σας ζητείται. - Το πρόγραµµα βγάζει διάφορα compile errors, θα γράψατε πολύ βιαστικά την άσκηση. Πχ, στην main σας λείπουν τα [ ], στην συνθήκη της πρώτης if γράφετε word[i]==(...) και επίσης, δεν κλείνετε δύο } πριν την return 0.

1636 Οριακό 'Άσκηση 1η: -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει λάθη -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Θα έπρεπε να έχετε µία συνάρτηση µετατροπής της ταχύτητας σε m/sec και να την καλείτε µέσα στην συνάρτηση όπου ζητάτε την ταχύτητα. -Καλά ονόµατα σταθερών και σωστή χρήση τους. - Οι συναρτήσεις στοιχίζονται στο ίδιο "επίπεδο" µε τη main -Καλά ονόµατα µεταβλητών και ονόµατα συναρτήσεων. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "enter_speed" και όχι metatropi. -Το πρόγραµµα σας δεν έχει συντακτικά λάθη έχει όµως προειδοποιήσεις. -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Δεν κάνετε χρήση της sprintf για το µέγεθος των πινάκων. -Δεν χρειαζόταν επανάληψη για την εισαγωγή των τιµών από το πληκτρολόγιο. Η επανάληψη δε σταµατάει µε κάποιο τρόπο. -Προσπαθήστε να ξαναλύσετε σπίτι την άσκηση και κατόπιν δείτε τη λύση. 'Άσκηση 1η: -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Καλά ονόµατα µεταβλητών και ονόµατα των συναρτήσεων 1637 -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει συντακτικά λάθη -Καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -H στοίχιση δεν είναι και τόσο καλή. -Σωστή χρήση της sprintf. -Υπάρχει κάποιο λογικό λάθος το οποίο δε σας εµφανίζει το σωστό αποτέλεσµα. Προσπαθήστε λίγο να βελτιώσετε την άσκηση στο σπίτι σας και κατόπιν δείτε την λύση της.

1642 οριακό - Περιέχει error που θα µπορούσατε εύκολα να διορθώσετε. - Συγκεκριµένα, στη ln 58 έχετε γράψει power(k, l, ) και δεν ήθελε το 2ο κόµµα. - Άσχηµα ονόµατα µεταβλητών. (µη περιγραφικά) Προσέξτε τη στοίχιση και να βάζετε σχόλια. - Όταν µέσα στη scanf βάζετε κενά, το πρόγραµµα περιµένει οπωσδήποτε να διαβάσει κάποιο whitespace. Οπότε µη βάζετε κενά εκεί που δεν πρέπει. - Για τον πίνακα CHOICE θα έπρεπε να χρησιµοποιηθεί η sprintf µε τον τρόπο που υποδεικνύεται στις διαφάνειες. - Η συνάρτηση power δε λειτουργεί σωστά. Δεν αναγνωρίζει την περίπτωση αρνητικών σωστά. Ο αλγόριθµός σας για τον υπολογισµό του εκθετικού δεν είναι σωστός. HINT: ουδέτερο στοιχείο πολλαπλασιασµού το 1. Άρα apotelesma = 1; for(i=0; i<s; i++){ apotelesma = apotelesma * z; } - Η θερµοκρασία ήθελε ακρίβεια 1 δεκαδικό... - Οδηγεί σε Segmentation Fault. To οποίο οφείλεται στο εξής: Όταν ένα πίνακα έχει µέγεθος SIZE, η αρίθµηση ξεκινά από 0 και φτάνει µέχρι SIZE-1. Άρα το j έπρεπε να αρχικοποιηθεί σε SIZE-1 -Δε χρησιµοποιήθηκαν συναρτήσεις από τη ctype.h.

1643 Οριακό 'Άσκηση 1η: -Πολύ καλή προσπάθεια, το πρόγραµµα σας δεν έχει λάθη -Σωστή δήλωση, ορισµός και κλήση συναρτήσεων. -Θα έπρεπε να έχετε µία συνάρτηση µετατροπής της ταχύτητας σε m/sec και να την καλείτε µέσα στην συνάρτηση όπου ζητάτε την ταχύτητα. -Καλά ονόµατα σταθερών και σωστή χρήση τους. - Οι συναρτήσεις στοιχίζονται στο ίδιο "επίπεδο" µε τη main -Καλά ονόµατα µεταβλητών και ονόµατα συναρτήσεων. -Σχετικά µε τα ονόµατα των συναρτήσεων καλό θα είναι της µορφής "enter_speed" και όχι metatropi. -Το πρόγραµµα σας δεν έχει συντακτικά λάθη έχει όµως προειδοποιήσεις. -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Δεν κάνετε χρήση της sprintf για το µέγεθος των πινάκων. -Δεν χρειαζόταν επανάληψη για την εισαγωγή των τιµών από το πληκτρολόγιο. Η επανάληψη δε σταµατάει µε κάποιο τρόπο. -Προσπαθήστε να ξαναλύσετε σπίτι την άσκηση και κατόπιν δείτε τη λύση. - Δε γράψατε τη συνάρτηση για το συντελεστή τριβής - Ασυνεπής στοίχιση και πολλές κενές γραµµές - Άσχηµα ονόµατα µεταβλητών. Μη χρησιµοποιείτε ονόµατα του ενός γράµµατος εκτός από i,j για for loops. Γιατί δε χρησιµοποιήσατε τα ονόµατα στον κώδικα που σας δώσαµε? - Δεν υπάρχουν σχόλια 1644 FAIL - Δεν κάνει compile. - Δε διαβάζετε σωστά την είσοδο. Τι ακριβώς ελέγχετε? Θέλουµε να διαβάζουµε ψηφία, όχι το αντίθετο. Επίσης, γιατί δε χρησιµοποιείτε scanf αλλά διαβάζετε ένα-ένα χαρακτήρα? Έχετε ήδη πάρει σχόλιο σε προηγούµενο εργαστήριο σχετικά µε αυτό. - Το πρόγραµµα δεν κάνει κάτι παραπάνω από το να προσπαθεί να διαβάσει τους δύο αριθµούς.

1645 Οριακό -Ωραίες µεταβλητές και στοίχιση. -Πολύ καλή χρήση των συναρτήσεων και η κλήση αυτών. -Πολύ καλή δουλειά. -Ο κώδικας δεν κάνει compile. Έχετε ξεχάσει να κλείσετε τις αγκύλες. -Έχετε και warnings. -Κατά τα άλλα καλή χρήση της sprintf και καλό ξεκίνηµα. - Πρέπει να παραδίδετε πάντα κώδικα που να κάνει compile. 'Άσκηση 1η: 1646 FAIL -Το πρόγραµµα σας δεν έχει λάθη. Δεν υπάρχει η συνάρτηση main!!!!! Χωρίς αυτή πως να δουλέψει το πρόγραµµα!!! -Λάθος δήλωση και ορισµός συναρτήσεων. Θέλετε να επιστρέψετε τιµή τύπου double και δηλώνετε τη συνάρτηση σαν int!!! Επίσης επιστρέφετε λάθος τιµές. -Καλή στοίχιση, καλά ονόµατα σταθερών και σωστή χρήση τους. -Καλά ονόµατα µεταβλητών και αλλά όχι σωστά ονόµατα συναρτήσεων. Θα πρέπει να είναι του τύπου "convert_speed" δηλαδή να εµπεριέχουν ρήµα ενέργειας. -Διαβάστε συναρτήσεις!!!! -Το πρόγραµµα σας έχει συντακτικά λάθη -Καλή στοίχιση, καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Δεν κάνετε χρήση της sprintf για το µέγεθος των πινάκων. -Δεν χρειαζόταν επανάληψη για την εισαγωγή των τιµών από το πληκτρολόγιο. Η επανάληψη δε σταµατάει µε κάποιο τρόπο. -Λάθος λογική γενικά!!! -Προσπαθήστε να ξαναλύσετε σπίτι την άσκηση και κατόπιν δείτε τη λύση.

1648 Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Ωραία τα ονόµατα των συναρτήσεων. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. -Καλή προσπάθεια. -Καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση της sprintf. -Υπάρχει κάποιο λογικό λάθος το οποίο δε σας εµφανίζει το σωστό αποτέλεσµα. Παράγουµε τα αποτελέσµατα που µας ζητάνε. 1649 Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Ωραία τα ονόµατα των συναρτήσεων. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. -Ηµιτελές πρόγραµµα. Ωραία σχόλια γενικότερα -Χρήση της sprintf. -Καλή στοίχιση.

1650 οριακό - Περιέχει error που θα µπορούσατε εύκολα να διορθώσετε. - Συγκεκριµένα, στη ln 58 έχετε γράψει power(k, l, ) και δεν ήθελε το 2ο κόµµα. - Άσχηµα ονόµατα µεταβλητών. (µη περιγραφικά) Προσέξτε τη στοίχιση και να βάζετε σχόλια. - Όταν µέσα στη scanf βάζετε κενά, το πρόγραµµα περιµένει οπωσδήποτε να διαβάσει κάποιο whitespace. Οπότε µη βάζετε κενά εκεί που δεν πρέπει. - Για τον πίνακα CHOICE θα έπρεπε να χρησιµοποιηθεί η sprintf µε τον τρόπο που υποδεικνύεται στις διαφάνειες. - Η συνάρτηση power δε λειτουργεί σωστά. Δεν αναγνωρίζει την περίπτωση αρνητικών σωστά. Ο αλγόριθµός σας για τον υπολογισµό του εκθετικού δεν είναι σωστός. HINT: ουδέτερο στοιχείο πολλαπλασιασµού το 1. Άρα apotelesma = 1; for(i=0; i<s; i++){ apotelesma = apotelesma * z; } - Η θερµοκρασία ήθελε ακρίβεια 1 δεκαδικό... 1651 FAIL - Οδηγεί σε Segmentation Fault. To οποίο οφείλεται στο εξής: Όταν ένα πίνακα έχει µέγεθος SIZE, η αρίθµηση ξεκινά από 0 και φτάνει µέχρι SIZE-1. Άρα το j έπρεπε να αρχικοποιηθεί σε SIZE-1 -Δε χρησιµοποιήθηκαν συναρτήσεις από τη ctype.h. - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. --Προσοχή!! Η δήλωση πίνακα είναι SIZΕ και οι θέσεις ενός πίνακα αριθµούνται από 0 έως SIZE-1.Δε µπορείς να έχεις char str[16]; και str[16]='\0'; Επίσης αυτή η δήλωση είναι άχρηστη... Η scanf κάνει αυτή τη δουλειά... - Από άποψη αποτελεσµάτων οκ. - Προσέξτε τη στοίχιση. - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες. - Περιέχει errors... - Όταν στέλνετε ασκήσεις βεβαιωθείτε να κάνουν compile. - Να θυµάστε να ανοίγετε και να κλείνετε παρενθέσεις µαζί και να γυρνάτε να γράφετε µέσα. Θα γλιτώνατε πολλά errors έτσι στην περίπτωσή σας. - Οι islower και isupper είναι συναρτήσεις. Έτσι όπως τα χρησιµοποιείτε είναι σα να είναι απλές µεταβλητές.

1652 Ωραία σχόλια γενικότερα -Σωστή δήλωση και κλήση συναρτήσεων. Κατανόηση διαφοράς formal και actual παραµέτρων και σωστή χρήση. Ωραία τα ονόµατα των συναρτήσεων. -Δεν υπάρχει η συνάρτηση που ζητάει από τον χρήστη την ταχύτητα. -Kαλά ονόµατα σταθερών και σωστή χρήση τους. 1653 1654 -Καλή προσπάθεια. -Καλά ονόµατα µεταβλητών και σταθερών και σωστή χρήση τους. -Σωστή χρήση της sprintf. -Υπάρχει κάποιο λογικό λάθος στην τελική for το οποίο δε σας εµφανίζει το σωστό αποτέλεσµα. - Ασυνεπής στοίχιση. Η πρώτη γραµµή κάθε συνάρτησης πρέπει να ξεκινά στην πρώτη στήλη, και κάθε φορά που ανοίγετε άγκιστρα να βάζετε το "σώµα" ένα tab πιο µέσα. - Δεν υπάρχουν σχόλια. - Κεφαλαία χρησιµοποιούµε µόνο για σταθερές. Το πρόγραµµά σας δίνει την εντύπωση ότι οι NUM1, NUM2, SUM είναι σταθερές. - Ισχύουν κι εδώ τα σχόλια της πρώτης άσκησης. - Πολύ καλή δουλειά κατά τα άλλα. - Πολύ καλή δουλειά µπράβο! - Προσέξτε µόνο λίγο να µην αφήνετε πολλαπλές κενές γραµµές ανάµεσα στις εντολές. - Καλή προσπάθεια, µπράβο. - Η εγγραφή στο άθροισµα έπρεπε να ξεκινά µια θέση πιο δεξιά και το τελικό κοµµάτι µε το sprintf είναι περιττό.

Άσκηση 1η: - Σωστός σχολιασµός, καλά ονόµατα µεταβλητών και πολύ καλή στοίχιση - Το µέγεθος του πίνακα str έπρεπε να γίνει define. Και θα έπρεπε να χρησιµοποιηθεί η sprintf όπως υποδεικνύεται στις διαφάνειες - Στην συνάρτηση ipsosi_se_dunamh έχετε ένα λαθάκι στον υπολογισµό του αποτελέσµατος. Θα έπρεπε να είναι result = result*a; αντί για result = a*a. Έτσι όπως το έχετε γράψει, υπολογίζετε int b φορές την ύψωση του a στο τετράγωνο. 1655 - Σωστός σχολιασµός, καλά ονόµατα µεταβλητών και πολύ καλή στοίχιση - Έχετε χρησιµοποιήσει σωστά τις συναρτήσεις της ctype.h - Η υλοποίηση είναι σωστή, µόνο η εκτύπωση του πίνακα στο τέλος δεν πρέπει να γίνει ανά χαρακτήρα, αλλά όλο µαζί σαν αλφαριθµητικό και µετά να ακολουθεί µια αλλαγή γραµµής. 1656 Οριακό Άσκηση 3η: - Μπράβο που δουλέψατε και τρίτη άσκηση. - Δεν κάνει compile. Τα scanf είναι λάθος: έπρεπε να είχατε χρησιµοποιήσει sprintf για το format string. - Στα δύο for µε τα num1, num2 τι προσπαθούσατε να υπολογίσετε? Τα µήκη? Υπάρχει η strlen γιαυτό. - Δείτε η λύση για το αλγοριθµικό κοµµάτι. -Καλές µεταβλητές. -Προσοχή στη στοίχιση. -Ωραία χρήση συναρτήσεων εκτός της ektypwsh που έπρεπε να είναι void και να µην επιστρέφει τίποτα. -Καλή δουλειά. -Ο κώδικας δεν κάνει compile επειδή δεν κλείνετε τη main. -Έχετε και warnings. -Δε χρησιµοποιείτε τη sprintf για format. -Όταν έχουµε σταθερά χρησιµοποιούµε αυτή και όχι το 51 όπως κάνετε στον κώδικα.