Τράπεζα Θεμάτων

Ξεκίνησε από P.Tsiotakis, 09 Νοε 2014, 08:50:54 ΜΜ

« προηγούμενο - επόμενο »

eara

#135
Όπως διαπίστωσα αλλάξατε την λύση σας σε

ΠαράθεσηΔιάβασε όριο
Σ <- 0
π <- 0
Διάβασε β
Όσο β <> 0 και Σ+β <= όριο επανάλαβε
   π <- π+1
   Σ <- Σ+β
   Διάβασε β
Τέλος_επανάληψης
Αν  β <> 0 τότε
   Γράψε 'ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ'
Τέλος_αν
Γράψε πλ

Η άσκηση δεν έχει ασάφεια αλλά η διατύπωση της και πάλι δεν ζητάει αυτό που γράψατε ακριβώς. Ας αλλάξω και γω την απάντηση μου, τώρα η λύση είναι +σχεδόν ακόμα πιο μακριά από αυτό που ζητάει η εκφώνηση... Η δομή Αν β<> 0 τότε δεν έχει καμία σχέση με το Δ2 οπότε έτσι χάνετε κι άλλες μονάδες από το Δ2 μιας και ζητάει να τυπώνεται το μύνημα όταν έχουμε υπερβαση και όχι όταν το φορτίο είναι μηδέν.

Τροποποίηση: Συγνώμη δικό μου λάθος λόγω βιασύνης. Η δομή επιλογής Αν β <> 0 κάνει δουλειά μιας και τυπώνει το μήνυμα όταν ο βρόχος σταματήσει εξαιτίας υπέρβασης.

Αθανάσιος Πέρδος

#136
Παράθεση από: eara στις 05 Δεκ 2014, 11:22:02 ΜΜ
Όπως διαπίστωσα αλλάξατε την λύση σας σε

Η άσκηση δεν έχει ασάφεια αλλά η διατύπωση της και πάλι δεν ζητάει αυτό που γράψατε ακριβώς. Ας αλλάξω και γω την απάντηση μου, τώρα η λύση είναι ακόμα πιο μακριά από αυτό που ζητάει η εκφώνηση... Η δομή Αν β<> 0 τότε δεν έχει καμία σχέση με το Δ2 οπότε έτσι χάνετε κι άλλες μονάδες από το Δ2 μιας και ζητάει να τυπώνεται το μύνημα όταν έχουμε υπερβαση και όχι όταν το φορτίο είναι μηδέν.

Το πρόβλημα στην παραπάνω λύση είναι η εντολή Διάβασε ενώ έχει ξεπεραστεί το όριο όχι η επιλογή στο τέλος. χρειάζεται ακόμη μια επιλογή μέσα στην όσο.
Κοιτάξτε την παρακάτω λύση.

https://introcsprinciples.files.wordpress.com/2014/11/sols_gi_v_eiy_0_194381.pdf

Gnirut

#137
Παράθεση από: eara στις 05 Δεκ 2014, 09:11:15 ΜΜ
Γίνεται να μου στείλεις (στείλετε) μια "κατά την γνώμη σου (σας)" λύση;

Δεν ξέρω σε ποια έκδοση της εκφώνησης είμαστε τώρα, αλλά για την εκφώνηση που είχες στείλει στο αρχικό μήνυμά σου μια λύση που θεωρω εγώ σωστή είναι η ακόλουθη:

Αλγόριθμος container
	num← 0
	sum_weight← 0

	Εμφάνισε "Enter ship cargo limit"
	Διάβασε ship_limit

	Εμφάνισε "Enter container no.", num+1, " weight"
	Διάβασε cont_weight

	Όσο cont_weight≠0 επανάλαβε
		Αν sum_weight+cont_weight<=ship_limit τότε
			sum_weight← sum_weight+cont_weight
			num← num+1
		αλλιώς
			Εμφάνισε "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ"
		Τέλος_αν

		Εμφάνισε "Enter container no.", num+1, " weight"
		Διάβασε cont_weight
	Τέλος_επανάληψης

	Εμφάνισε "Πλήθος container: ", num
Τέλος container


Όσον αφορά την εκφώνηση:

Α) Γράφει σαφώς: "διαβάζει επαναληπτικά και μέχρι να δοθεί για βάρος ο αριθμός 0", άρα κριτήριο εξόδου από την διαδικασία εισαγωγης βαρών (και κατα συνέπεια στην συνέχεια από τον αλγόριθμο) είναι η τιμή 0 για το βάρος.

Β) Στο Δ2 λέει: "Εμφανίζει το μήνυμα «ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ» όταν το βάρος του κοντέινερ που πρέπει να φορτωθεί προκαλεί υπέρβαση του ορίου φόρτωσης του πλοίου."
Λέει λοιπόν να εμφανίζει το μήνυμα: «ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ», δεν λέει  πουθενά στο Δ2 να τελειώνει ο αλγόριθμος, ούτε να κάνεις τίποτε άλλο παρά να εμφανίσεις ένα μήνυμα. Το μήνυμα όντως είναι "παράξενο" και ίσως να υπονοεί διάφορα τα οποία όμως ΔΕΝ τα ζητάει το πρόβλημα.

Γ) Το Δ3 είναι σαφέστατο.

eara

ΠαράθεσηΑλγόριθμος container
   num← 0
   sum_weight← 0

   Εμφάνισε "Enter ship cargo limit"
   Διάβασε ship_limit

   Εμφάνισε "Enter container no.", num+1, " weight"
   Διάβασε cont_weight

   Όσο cont_weight≠0 επανάλαβε
      Αν sum_weight+cont_weight<=ship_limit τότε
         sum_weight← sum_weight+cont_weight
         num← num+1
      αλλιώς
         Εμφάνισε "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ"
      Τέλος_αν

      Εμφάνισε "Enter container no.", num+1, " weight"
      Διάβασε cont_weight
   Τέλος_επανάληψης

   Εμφάνισε "Πλήθος container: ", num
Τέλος container

Ευχαριστώ για την λύση σας. Εδώ από ότι βλέπω ο αλγόριθμος δεν φορτώνει το κοντέινερ που θα προκαλέσει υπέρβαση του ορίου φόρτωσης. Αυτό δεν διασαφηνίζεται ρητά στην εκφώνηση, αλλά είναι επιλογή δική σας με βάση την εμπειρία σας. Καταλήγετε λοιπόν ότι ο αλγόριθμος δεν θα πρέπει να κάνει υπέρβαση του ορίου φόρτωσης αν και αυτό δεν αναφέρετε ρητά στην εκφώνιση, αλλά απλώς αφήνει να εννοηθεί μέσω του ότι αναφέρεται σε κάποιο όριο φόρτωσης πλοίου χωρίς όμως να μας λέει τι γίνεται στην περίπτωση υπερβασης του, πέραν του ότι τυπώνεται ένα μήνυμα "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ" το οποίο σας αρκεί για να θεωρήσετε ότι τέλειωσε η φόρτωση.

Τώρα ως βαθμολογητής το Δ1 το ικανοποιήσατε 100%. Το Δ2 100%. Έχω επιφυλάξεις για το Δ3 με το θέμα αν πρέπει να μετρούμε το υπέρβαρο κοντέινερ ή όχι. Και γιατί όχι να μην συνεχίσουμε την φορτωση; Απλώς επειδή τυπώσαμε το μήνυμα "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ"; Προσωπικά θα έβαζα 100% και στο Δ3 και θα ανάφερα την περίπτωση για να δούμε τι γίνεται με λύσεις που είτε φορτώνουν το τελευταίο κοντέινερ και σταματούν, είτε συνεχίζουν την φόρτωση ακόμα και όταν έχουμε υπέρβαση φορτίου.

Τώρα στα περί  "πραγματικού κόσμου" πόσο χρήσιμος είναι ένας αλγόριθμος που δεν σ' αφήνει να αποτυπώσεις την πραγματικότητα (περίπτωση της υπέρβασης φορτίου του πλοίου); Ας ανάψει λαμπάκια συναγερμού, ας ηχήσουν σειρήνες, αλλά να μην δέχετε ότι φόρτωσες το πλοίο υπέρβαρα ενώ το έχεις κάνει δεν είναι πρακτικό.

eara

και για να στηρίξω την άποψη μου επίσης παραθέτω την λύση που κοινοποιήθηκε στην συλλογή λύσεων που αναφέρετε σε κάποιο post πιο πάνω... https://introcsprinciples.files.wordpress.com/2014/11/sols_gi_v_eiy_0_194381.pdf

Εδώ ο συνάδελφος αναφέρει λίγο πριν παραθέσει τον αλγόριθμο

ΠαράθεσηΜε βάση την εκφώνηση καταλήγουμε ότι το κοντέινερ για το οποίο το συνολικό βάρος ξεπερνάει το όριο δεν θα φορτωθεί.

Και ρωτάω (ρητορικά) γιατί χρειάστηκε να το αναφέρει αυτό; Το έκανε για να δικαιολογήσει την επιλογή του ότι δεν θα φορτώσει το κοντέινερ που προκαλεί υπέρβαση βάρους.

Βέβαια αν κανείς δει τον εκεί αλγόριθμο του θα διαπιστώσει ότι ενώ δεν το μετράει στα φορτωμένα κοντέινερ, αθροίζει το βάρος του στην μεταβλητή ΣΒ <- ΣΒ + β. Βέβαια αυτό περνάει "αναίμακτα" μιας και δεν επηρεάζει τα αποτελέσματα του αλγορίθμου μιας και ο αλγόριθμος σταματάει  με το τελευταίο κοντέινερ (απλώς δεν είναι κομψό).

Οπότε κατά τον συνάδελφο που πρότεινε την λύση υπάρχει η αναγκαιότητα διασαφήνισης της εκφώνησης για να δικαιολογήσει την επιλογή που έκανε. Άρα έχουμε ασάφεια...

Gnirut

Παράθεση από: eara στις 06 Δεκ 2014, 12:35:10 ΠΜ
Ευχαριστώ για την λύση σας. Εδώ από ότι βλέπω ο αλγόριθμος δεν φορτώνει το κοντέινερ που θα προκαλέσει υπέρβαση του ορίου φόρτωσης. Αυτό δεν διασαφηνίζεται ρητά στην εκφώνηση, αλλά είναι επιλογή δική σας με βάση την εμπειρία σας. Καταλήγετε λοιπόν ότι ο αλγόριθμος δεν θα πρέπει να κάνει υπέρβαση του ορίου φόρτωσης αν και αυτό δεν αναφέρετε ρητά στην εκφώνιση, αλλά απλώς αφήνει να εννοηθεί μέσω του ότι αναφέρεται σε κάποιο όριο φόρτωσης πλοίου χωρίς όμως να μας λέει τι γίνεται στην περίπτωση υπερβασης του, πέραν του ότι τυπώνεται ένα μήνυμα "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ" το οποίο σας αρκεί για να θεωρήσετε ότι τέλειωσε η φόρτωση.

Τώρα ως βαθμολογητής το Δ1 το ικανοποιήσατε 100%. Το Δ2 100%. Έχω επιφυλάξεις για το Δ3 με το θέμα αν πρέπει να μετρούμε το υπέρβαρο κοντέινερ ή όχι. Και γιατί όχι να μην συνεχίσουμε την φορτωση; Απλώς επειδή τυπώσαμε το μήνυμα "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ"; Προσωπικά θα έβαζα 100% και στο Δ3 και θα ανάφερα την περίπτωση για να δούμε τι γίνεται με λύσεις που είτε φορτώνουν το τελευταίο κοντέινερ και σταματούν, είτε συνεχίζουν την φόρτωση ακόμα και όταν έχουμε υπέρβαση φορτίου.

Τώρα στα περί  "πραγματικού κόσμου" πόσο χρήσιμος είναι ένας αλγόριθμος που δεν σ' αφήνει να αποτυπώσεις την πραγματικότητα (περίπτωση της υπέρβασης φορτίου του πλοίου); Ας ανάψει λαμπάκια συναγερμού, ας ηχήσουν σειρήνες, αλλά να μην δέχετε ότι φόρτωσες το πλοίο υπέρβαρα ενώ το έχεις κάνει δεν είναι πρακτικό.

Κατ'αρχάς είμαι "γέρος" αλλά όχι και τόσο για να μου μιλάς στον πληθυντικό  :)

Λες: "δεν φορτώνει το κοντέινερ που θα προκαλέσει υπέρβαση του ορίου φόρτωσης. Αυτό δεν διασαφηνίζεται ρητά στην εκφώνηση"

Και σε ρωτώ: εαν φορτώνονται τα κονταίηνερ που υπερφορτώνουν ένα πλοίο τότε τι νόημα έχει το όριο βάρους φόρτωσης στα καράβια;...

eara

ΠΡΟΣ ΥΠΕΥΘΥΝΟΥΣ ΔΙΑΧΕΙΡΙΣΗΣ ΙΣΤΟΤΟΠΟΥ ΤΡΑΠΕΖΑΣ ΘΕΜΑΤΩΝ:

Κοιτάξτε να διορθώσετε τις φόρμες σας στην σελίδα http://exams-repo.cti.gr/contact γιατί δεν έχετε καταχωρημένο το μάθημα "Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ" έτσι ώστε να μπορεί κάποιος να σας στείλει παρατηρήσεις για κάποιο θέμα.

eara

ΠαράθεσηΚαι σε ρωτώ: εαν φορτώνονται τα κονταίηνερ που υπερφορτώνουν ένα πλοίο τότε τι νόημα έχει το όριο βάρους φόρτωσης στα καράβια;..

Είναι θέμα της αρχιτεκτονικής του συστηματος το αν θα επιτρέπεται η όχι η φόρτωση του κοντέινερ και έχει να κάνει με το ίδιο το σύστημα και τον βαθμό της ανθρώπινης παρέμβασης σε αυτό.

Αν είναι απλώς ένα σύστημα παρακολούθησης και καταγραφής της φόρτωσης τότε θα καταγράφει το τι γίνεται και σε περίπτωση υπερφόρτωσης (όπως αναφέρω) θα ανάβει λαμπάκια κ.ο.κ. για να ειδοποιήσει ότι το πλοίο είναι υπέρβαρο και αφήνει τον ανθρώπινο παράγοντα να το διαχειριστεί (Αν δεν τον αφήσει τότε το πλοίο φεύγει υπέρβαρο, ενώ το σύστημα θεωρεί ότι δεν είναι οπότε είναι άχρηστο σύστημα μιας και έχει παρακαμφεί από ανθρώπινο παράγοντα).

Αν το σύστημα είναι σύστημα αυτόματης εκφόρτωσης χωρίς την ανθρώπινη παρέμβαση τότε θα μπορούσε να μην φορτώσει το τελευταίο κοντέινερ μιας και το ίδιο το σύστημα διαχειρίζεται την διαδικασία φόρτωσης.

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

Ολα αυτά δεν αναφέρονται στην παραπάνω άσκηση οπότε μην περιμένετε από μαθητές να τα αντιμετωπίσουν σωστά, ή από βαθμολογητές που δεν έχουν εμπειρία από τέτοια συστήματα να αξιολογήσουν τέτοιες επιλογές. Μπορούμε απλά να διορθώσουμε την εκφώνηση έτσι ώστε να μην αφήνει περιθώρια παρεξήγησης. Δεν είναι πιο απλό;

Gnirut

"Είναι θέμα της αρχιτεκτονικής του συστηματος το αν θα επιτρέπεται η όχι η φόρτωση του κοντέινερ και έχει να κάνει με το ίδιο το σύστημα και τον βαθμό της ανθρώπινης παρέμβασης σε αυτό."

eara καταλαβαίνω το σκεπτικό σου αλλά μιλάμε για μια ρημάδα άσκηση της β' λυκείου, δεν μιλάμε για παραδοτεό enterprise application κάποιας μεγάλης πολυεθνικής εταιρείας software.

Σεβαστή η παρατήρηση σου για την εκφώνηση αλλά θα επαναλάβω κάτι που έγραψα παραπάνω:

"Θα πρέπει να ξεφύγουμε από την παγίδα του συμβολαιογραφικού τύπου ασκήσεων και στο δικό μας μάθημα αλλά και στα άλλα (π.χ. φυσική). Πρέπει οι μαθητές να μάθουν εαν δουν κάτι σε μια άσκηση που είναι αμφιλεγόμενης κατά τη γνώμη τους σημασίας να το καταγράφουν στην λύση, να το τεκμηριώνουν και να προτείνουν την λύση που πιστεύουν αυτοί ότι είναι σωστή. Η δική μας δουλεια είναι μετά στην βαθμολόγηση να κρίνουμε αν το σκεπτικό του μαθητή έχει βάση ή όχι.

Μαθαίνουμε τα παιδιά (επαναλαμβάνω όχι μόνον στο δικό μας μάθημα) να σηκώνουν τα χέρια μόλις βρουν την πρώτη κατά τη γνώμη τους "ασάφεια". Λες και στον "πραγματικό κόσμο" που θα βγουν μετά από ένα δυο χρόνια όλα τα προβλήματα που θα συναντήσουν θα έχουν "συμβολαιογραφική" εκφώνηση και καμμία ασάφεια...
"

eara

Ωραία, επειδή δεν μιλάμε για ασκήσεις του πραγματικού κόσμου, αλλά για μια ρημάδα άσκηση της Β' Λυκείου ας προσπαθήσουμε και εμείς να είμαστε ακριβείς στις διατυπώσεις μας όταν βάζουμε θέματα.

Συζητάμε (ως εκπαιδευτικοί) για το θέμα και αν δεν είναι σωστά διατυπωμένο (ελπίζουμε) να αλλάχθεί.

Το τι θα κάνει ο μαθητής είναι αλλού παπά ευαγγέλιο και δεν δικαιολογεί την διαιωνίση της ασάφειας του θέματος στην τράπεζα.

Τα περί παγίδας ειλικρινά δεν τα καταλαβαίνω (αν θες άνοιξε ένα topic να το συζητήσουμε).


Gnirut

Παράθεση από: eara στις 06 Δεκ 2014, 03:42:27 ΠΜ
Ωραία, επειδή δεν μιλάμε για ασκήσεις του πραγματικού κόσμου, αλλά για μια ρημάδα άσκηση της Β' Λυκείου ας προσπαθήσουμε και εμείς να είμαστε ακριβείς στις διατυπώσεις μας όταν βάζουμε θέματα.

Γράψε λοιπόν κατά τη γνώμη σου πως πιστεύεις ότι θα έπρεπε να είναι η εκφώνηση για να είναι απολύτως σαφής.

Δημήτρης Α. Β.

Από τη στιγμή που το συγκεκριμένο θέμα προκάλεσε τόση συζήτηση, υποθέτω θα αποσυρθεί/τροποποιηθεί.
Άρα ίσως δεν έχουν νόημα οι προτεινόμενες λύσεις.

Τώρα για την συζήτηση που προκλήθηκε, θα συμφωνήσω περισσότερο με τον Gnirut και δεν καταλαβαίνω γιατί το κάναμε τόσο πολύπλοκο και γιατί να προσπαθήσουμε να δώσουμε την "τέλεια" λύση σε ένα θέμα που (σύμφωνα και με το ΠΣ) θέλει από τον μαθητή απλά να συνδυάσει ΜΙΑ δομή επανάληψης με ΜΙΑ δομή επιλογής.
Πράγματι το μήνυμα "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ" θα μπερδέψει έναν καθηγητή ή έναν πολύ προχωρημένο μαθητή που έχει φτιάξει αλγορίθμους πέρα από τις απαιτήσεις του συγκεκριμένου μαθήματος. 
Ένας μαθητής όμως που θα προετοιμαστεί σύμφωνα με το βιβλίο και οδηγηθεί σωστά ΑΠΟ ΕΜΑΣ στο μάθημα θα έδινε π.χ. την παρακάτω λύση σύμφωνα με την εκφώνηση και κατά τη γνώμη μου θα έπρεπε να βαθμολογηθεί ως σωστή:

Αλγόριθμος Δ
Διάβασε ΟΡΙΟ
Σ <- 0
Π <- 0
Επανάλαβε
   Διάβασε β
   Σ<- Σ + β
   Π<- Π + 1
   Αν Σ > ΟΡΙΟ Τότε
       Εμφάνισε "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ"
   Τέλος_Αν
Μέχρις_ότου β=0
Εμφάνισε Π-1
Τέλος Δ
   
Αυτά θα προλάβουμε (κι αν) να τους διδάξουμε και είναι και πολύ. Τίποτε παραπάνω δεν πρέπει να απαιτούμε σαν λύση.
Πιστεύω αυτός που έθεσε το θέμα, αυτό ήθελε από τον μαθητή και όχι να βάλει τόσο δύσκολη και περιπλεγμένη άσκηση όσο θέλουμε να την εμφανίζουμε με τις προτεινόμενες λύσεις.
Τώρα αν κάποιο παιδί δεν σκέφθηκε να μειώσει στο τέλος τον αθροιστή  (λόγω της ιδιότητάς της Επανάλαβε να εκτελείται τουλάχιστον μια φορά) , ε δεν θα του πάρουμε και το κεφάλι. Στο χέρι μας είναι αν θα κόψουμε και πόσο για ένα -1.


ΥΓ:  1) Γιατί θα πρέπει να προβλέψει ο μαθητής την περίπτωση που κάποιος συνεχίζει να φορτώνει κοντέινερ παρά την προειδοποίηση "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ" ;  Ζητά κάτι τέτοιο η άσκηση αν ο "χειριστής" γουστάρει να υπερφορτώνει το πλοίο, ο αλγόριθμος να του βάλει μυαλό; Ας βάλει όσα κοντέινερ θέλει στην τελική.
   
      2) Γιατί το κάναμε μέγιστο θέμα για ένα κοντέινερ παραπάνω (στο Δ2) το αν θα φορτωθεί ή όχι; Αφού η εκφώνηση δεν θέτει περιορισμό, ας δώσει ο μαθητής όποια εκδοχή θέλει αρκεί να είναι σωστός ο αλγόριθμος. Άλλωστε αναφέρεται και στο Δ1 και στο Δ2 η ίδια φράση:
"πρέπει να φορτωθεί".

Με φιλικούς χαιρετισμούς σε όλους τους συναδέλφους.... και...  χαλαρώστε λίγο!!  Χαμογελάστε στην τάξη, ας κάνουμε το μάθημα ευχάριστο με απλά παραδείγματα στην αρχή..  όσα μάθουν , όσα καταλάβουν, αρκεί να τα καταλάβουν κι ας είναι και λιγότερα.. δεν είναι και πανελλαδικές.   
Εμείς διορθώνουμε, εμείς θα δώσουμε διευκρινίσεις στην τάξη κατά την εξέταση  ;)


eara

Τις προτεινόμενες λύσεις τις ζήτησα απλώς για να αναδείξω το "πρόβλημα" του θέματος και όχι της λύσης, το οποίο εύχομαι να το εξαντλήσαμε. Την διατύπωση ας την κάνουν αυτοί που είναι υπεύθυνοι για τα θέματα στην τράπεζα.

eara

Και να σχολιάσω και τα λεγόμενα του τελευταίου συνομιλητή.

Παράθεσηδεν καταλαβαίνω γιατί το κάναμε τόσο πολύπλοκο και γιατί να προσπαθήσουμε να δώσουμε την "τέλεια" λύση σε ένα θέμα

Επειδή είναι θέμα της Β' Λυκείου και καλούμε τους μαθητές να το λύσουν... (μη το τραβήξω κι άλλο).

ΠαράθεσηΠράγματι το μήνυμα "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ" θα μπερδέψει έναν καθηγητή ή έναν πολύ προχωρημένο μαθητή

Δεν θα έπρεπε...

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

επέτρεψε μου να έχω τις επιφυλάξεις μου στα περί προετοιμασίας. Για την λύση που δίνεις, συμφωνώ ότι θα την βαθμολογούσα σωστη (ασχέτως πως την θεωρώ).

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

Δεν αμφισβητούμε το τι ήθελε ο εισηγητής.

ΠαράθεσηΣτο χέρι μας είναι αν θα κόψουμε και πόσο για ένα -1.

Δεν χρειάζεται να κόψεις τίποτα λόγο της εκφώνησης.

ΠαράθεσηΓιατί θα πρέπει να προβλέψει ο μαθητής την περίπτωση που κάποιος συνεχίζει να φορτώνει κοντέινερ παρά την προειδοποίηση "ΤΕΛΟΣ ΦΟΡΤΩΣΗΣ" ;  Ζητά κάτι τέτοιο η άσκηση αν ο "χειριστής" γουστάρει να υπερφορτώνει το πλοίο, ο αλγόριθμος να του βάλει μυαλό; Ας βάλει όσα κοντέινερ θέλει στην τελική.

Δυστυχώς το αφήνει στην κρίση του μαθητή, ενώ δεν θα έπρεπε.

ΠαράθεσηΓιατί το κάναμε μέγιστο θέμα για ένα κοντέινερ παραπάνω (στο Δ2) το αν θα φορτωθεί ή όχι;

Για να αναδείξω την ασάφεια του θέματος.


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

Ας ορίσουμε σωστά το πρόβλημα πρώτα...

ΠαράθεσηΧαμογελάστε στην τάξη, ας κάνουμε το μάθημα ευχάριστο

Όπως σωστά συμπέρανες με τα όσα διάβασες, είμαι πάντα σκυθρωπός και δυσάρεστος στην τάξη.  :(





Gnirut

A) Η κοινή λογική λέει:
-Ένα καράβι το φορτώνουμε μέχρι να φτάσει στο όριο φόρτωσής του και όχι παραπάνω.
-Ως εκ τούτου ο αριθμός των φορτωμένων στο καράβι κονταίηνερ είναι ...αυτός. Δηλαδή αυτά που φορτώθηκαν, που φυσικά δεν βγάζουν υπέρβαρο το καράβι, γιατί αν έβγαζαν υπέρβαρο το καράβι δεν θα υπήρχε πρόβλημα αφού το καράβι θα είχε βουλιάξει (Dr. Spock που λέμε)...
(τα παραπάνω δεν θα πρέπει να χρειάζονται επεξηγήσεις ούτε για μαθητές ούτε για καθηγητές)

B) Η βασική λογική λέει:
- Ένα καράβι φροντίζουμε να το γεμίσουμε όσο πιο πολύ γίνεται χωρίς να περάσουμε το όριο φόρτωσής του
(το παραπάνω βασικά δεν χρειάζεται ούτε αυτό επεξηγήσεις αλλά για κάποιους σχολαστικούς ίσως να έπρεπε να διατυπωθεί με μεγαλύτερη ακρίβεια, κατά τη γνώμη μου πάντως δεν θα χρειαζόταν).

Με βάση τα παραπάνω ο αλγόριθμος θα πρέπει να δίνει τη δυνατότητα να εισάγονται κονταίηνερ μέχρι να γεμίσει τελείως το καράβι και ο χρήστης να βάλει 0 ή ο χρήστης τερματίσει πρόωρα την φόρτωση βάζοντας πάλι 0.

ΥΓ
Τέλος πάντων αυτός που έβαλε αυτό το θέμα γνώμη δεν έχει επί του θέματος;
Που περιμένει να συζητήσει το θέμα, στο στέκι ή π.χ. στο facebook;