User Tools

Site Tools


qna:hw:lsn66

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
qna:hw:lsn66 [2022/05/26 22:13]
xallos created
qna:hw:lsn66 [2022/05/27 17:18] (current)
xallos
Line 4: Line 4:
 {{ :qna:hw:recap-b-whiteboard.pdf | Διαφάνειες }}\\ {{ :qna:hw:recap-b-whiteboard.pdf | Διαφάνειες }}\\
 {{ :qna:hw:c-programming-exercise-b-recap.pdf | Εκφώνηση }} \\ {{ :qna:hw:c-programming-exercise-b-recap.pdf | Εκφώνηση }} \\
-{{ :qna:hw:smproject-life-3.zip | smProject-LIFE-}} \\+{{ :qna:hw:smproject-super-string.zip | smProject-SUPER-STRING }} \\
 {{ :qna:hw:live-r-b.zip | Κώδικες }} {{ :qna:hw:live-r-b.zip | Κώδικες }}
  
 ===== Εργασία B.1 ===== ===== Εργασία B.1 =====
 +
 +Δημιουργία συνεργαζόμενων συναρτήσεων που διαχειρίζονται
 +ένα SuperString βάσει της εκφώνησης.
 +
 +Τα μηνύματα λάθους στην κονσόλα του CLion έχουν διαφορετική
 +μορφή από τα συνηθισμένα. Σε κάθε test εμφανίζεται η εντολή
 +που εκτελείται __έτσι και αλλιώς__. Σε περίπτωση που αποτύχει το
 +test η εντολή εμφανίζεται ξανά στην επόμενη γραμμή του κειμένου
 +και υπάρχει ένα ενδεικτικό μικρό λεκτικό στο τέλος της, καθώς
 +και το link προς αυτή τη σελίδα.
 +
 +<code>
 +R U N N I N G   T E S T
 +ssAppend(s1 = ssCreate(size=14, T1 = "Hello "), T2 = "there!") && (s2 = ssCreate(size, joinTexts(T1,T2))) && compareSuperStrings(s1, s2)
 +R U N N I N G   T E S T
 +ssAppend(s1 = ssCreate(size=13, T1 = "Hello "), T2 = "there!") && (s2 = ssCreate(size, joinTexts(T1,T2))) && compareSuperStrings(s1, s2)
 +  ssAppend(s1 = ssCreate(size=13, T1 = "Hello "), T2 = "there!") && (s2 = ssCreate(size, joinTexts(T1,T2))) && compareSuperStrings(s1, s2) FAILED : C H E C K   F A I L E D!
 +
 +https://qna.c-programming.allos.gr/doku.php?id=qna:hw:lsn66#test_B-1-1-a
 +</code>
  
 ==== Ζητούμενα ==== ==== Ζητούμενα ====
  
-==== Έλεγχοι B.1.1 ====+==== Ερώτημα B.1.1 ====
  
-Έλεγχοι ως προς την επιβεβαίωση των τιμών των παραμέτρων των συναρτήσεων.+Έλεγχοι που αφορούν τη συνάρτηση ''ssCreate''.
  
 === Έλεγχοι === === Έλεγχοι ===
Line 19: Line 39:
 == Test B-1-1-a == == Test B-1-1-a ==
  
-Μία ή περισσότερες κλήσεις της ''boardInit'' με μηδενικό μήκος ή πλάτος (ή και τα δύο) __δεν επέστρεψαν ψευδές__ όπως ζητούνταν στην εκφώνηση.+Ο έλεγχος που απέτυχε αφορούσε μη αποδεκτά δεδομένα για τη συνάρτηση ''ssCreate''. Δείτε το μήνυμα στην κονσόλα για την ακριβή εντολή που απέτυχε.
  
 == Test B-1-1-b == == Test B-1-1-b ==
  
-Μία ή περισσότερες κλήσεις της ''boardInit'' με αρνητικό μήκος ή πλάτος (ή και τα δύο) __δεν επέστρεψαν ψευδές__ όπως ζητούνταν στην εκφώνηση.+Ο έλεγχος που απέτυχε αφορά δεδομένο κείμενο μηδενικού μήκους (το οποίο είναι αποδεκτό ως δεδομένο).
  
-==== Ερώτημα B.1.2 ====+== Test B-1-1-c ==
  
-Έλεγχος λειτουργίας της συνάρτησης ''boardInit''.+Ο έλεγχος που απέτυχε αφορά κείμενο μήκους μικρότερου από το ''baseSize''
 + 
 +== Test B-1-1-d == 
 + 
 +Ο έλεγχος που απέτυχε αφορά κείμενο μήκους κατά ένα μικρότερου από το ''baseSize'' (ή ακέραιου πολλαπλασίου του). Δηλαδή μαζί με το τελικό 0, ίσου με το ''baseSize''
 + 
 +== Test B-1-1-e == 
 + 
 +Ο έλεγχος που απέτυχε αφορά κείμενο μήκους μεγαλύτερο από το ''baseSize'', το οποίο αφήνει και "χώρο" μέχρι το επόμενο πολλαπλάσιο του ''baseSize''
 + 
 +==== Ερώτημα B.1.3 ==== 
 + 
 +Έλεγχος λειτουργίας της συνάρτησης ''ssAppend''. Για να λειτουργήσουν αυτοί οι έλεγχοι θα πρέπει να έχουν περάσει επιτυχώς οι έλεγχοι της ''ssCreate'', καθώς αυτή χρησιμοποιείται συνδυαστικά με την ''ssAppend'' στους ελέγχους.
  
 === Έλεγχοι === === Έλεγχοι ===
  
-== Test B-1-2-a ==+== Test B-1-3-a == 
 + 
 +Έλεγχος σωστής αντιμετώπισης μη αποδεκτών δεδομένων της συνάρτησης. Δείτε το μήνυμα στην κονσόλα για την ακριβή εντολή που απέτυχε. 
 + 
 +== Test B-1-3-b == 
 + 
 +Έλεγχος προσάρτησης κειμένου σε ''SuperString'' με ''baseSize'' πολύ μεγαλύτερο από το ενωμένο κείμενο. 
 + 
 +== Test B-1-3-c == 
 + 
 +Έλεγχος προσάρτησης κειμένου σε ''SuperString'' με ''baseSize'' κατά ένα χαρακτήρα (byte) μεγαλύτερο από το ενωμένο κείμενο. 
 + 
 +== Test B-1-3-d == 
 + 
 +Έλεγχος προσάρτησης κειμένου σε ''SuperString'' με ''baseSize'' ακριβώς ίσο με το ενωμένο κείμενο. 
 + 
 +== Test B-1-3-e == 
 + 
 +Έλεγχος προσάρτησης κειμένου σε ''SuperString'' με ''baseSize'' μικρότερο με το ενωμένο κείμενο. 
 + 
 + 
 +==== Ερώτημα B.1.4 ==== 
 + 
 +Έλεγχος λειτουργίας της συνάρτησης ''ssTruncate''. Για να λειτουργήσουν αυτοί οι έλεγχοι θα πρέπει να έχουν περάσει επιτυχώς οι έλεγχοι της ''ssCreate'', καθώς αυτή χρησιμοποιείται συνδυαστικά με την ''ssAppend'' στους ελέγχους. 
 + 
 +=== Έλεγχοι === 
 + 
 +== Test B-1-4-a == 
 + 
 +Έλεγχος σωστής αντιμετώπισης μη αποδεκτών δεδομένων της συνάρτησης. Δείτε το μήνυμα στην κονσόλα για την ακριβή εντολή που απέτυχε. 
 + 
 +== Test B-1-4-b == 
 + 
 +Έλεγχος "αποκοπής" (truncate) κειμένου μικρότερου από το ''baseSize''
 + 
 +== Test B-1-4-c ==
  
-Η συνάρτηση επιστρέφει **ψευδές** ενώ δεν θα έπρεπε για δεδομένο board. __Η δοκιμή αυτή δεν περιέχει έλεγχο των περιεχομένων του grid__.+Έλεγχος "αποκοπής" (truncate) κειμένου (που μαζί με το τερματικό κωδικό 0) έχει μέγεθος ακριβώς ίσο με το ''baseSize''.
  
-== Test B-1-2-==+== Test B-1-4-==
  
-Η συνάρτηση ενώ επιστρέφει __αληθές__ όπως θα έπρεπε για δεδομένο board, το __περιεχόμενο του grid **δεν** είναι το αναμενόμενο__.+Έλεγχος "αποκοπής" (truncate) κειμένου μεγαλύτερου από το ''baseSize''.
  
qna/hw/lsn66.1653603181.txt.gz · Last modified: 2022/05/26 22:13 by xallos