Καλησπέρα να κάνω μια ερώτηση γιατί έχω δει διαφορετικές απαντήσεις και έχω μπερδευτεί όταν μας δίνεται μια κλάση και μας ζητούν τον κατασκευαστή της γράφουμε σκέτο __init__ ή ολόκληρη την πρώτη γραμμή def __init__ και τις παραμέτρους που έχει μέσα στην παρένθεση?????
Πράγματι αυτό που αναφέρεις συμβαίνει και σε πολλές ενδεικτικές λύσεις υπάρχει παρανόηση.
Από το σχολικό βιβλίο σελ. 199
"Οπότε, όταν καλούμε την κλάση, έχουμε φροντίσει να καλείται η μέθοδος-συνάρτηση αρχικοποίησης __init__ η οποία κατασκευάζει αντικείμενα, λόγος για τον οποίο η μέθοδος __init__ ονομάζεται κατασκευαστής."
Άρα αναφέροντας μόνο τη μέθοδο __init__ είσαι ΟΚ.
Βέβαια και κάποιος μαθητής που θα γράψει def __init__(self ....κλπ) και αυτό πιάνεται σωστό.
Δεν κατάλαβα την ερώτηση.
Όταν ορίζεις την __init__ πρέπει να έχεις και def μπροστά, όταν θέλεις να την καλέσεις όχι.
Που ακριβώς είναι το πρόβλημα;
Το πρόβλημα είναι στην ερώτηση που σου κάνουν όταν σου δίνουν μια κλάση και σε ρωτάνε ποιος είναι ο κατασκευαστής άλλοι απαντούν σκέτο init και άλλοι βάζουν ολόκληρη την πρώτη γραμμη
Αν κάποιος στην ερώτηση "ποιος είναι ο κατασκευαστής" βάζει μαζί και το def τότε θα έλεγα ότι δεν έχει καταλάβει και δεν μπορεί να πάρει όλες τις μονάδες.
Υπάρχουν όμως απαντήσεις με το def μπροστά και αν δεν κάνω λάθος πρέπει να το είδα και στην τράπεζα θεματων
Το επιβεβαίωσα σίγουρα υπάρχει σαν απάντηση στην τράπεζα θεμάτων το πρόβλημα είναι ότι για κάποιους από εμάς που ερχόμαστε πρώτη φορά σε επαφή με το μάθημα υπάρχουν πολλές ασάφειες με αποτέλεσμα να έχουμε αμφιβολίες για αυτά που διδάσκουμε
Δεν έχω δει την τράπεζα θεμάτων αλλά φαντάσου να σε ρωτήσει κάποιος :
Ποια συνάρτηση υπολογίζει το ημίτονο στη ΓΛΩΣΣΑ ?
και αντί να απαντήσεις η ΗΜ(χ) ή η ΗΜ
να απαντήσεις η
ΣΥΝΑΡΤΗΣΗ ΗΜ(Χ) : ΑΚΕΡΑΙΑ
Αν υπάρχει κάτι τέτοιο στην τράπεζα θεμάτων θα πρέπει να το διιορθώσουν.
Δεν είναι δυνατόν επειδή υπάρχει στην τράπεζα να το δεχόμαστε ως σωστό.
Υποτίθεται ότι έχουμε σπουδάσει πληροφορική και τα γνωρίζουμε αυτά.
Μπορείτε να μου στείλετε ποιο ακριβώς θέμα είναι στην τράπεζα θεμάτων ώστε να το δω και αν έχει πρόβλημα να επικοινωνήσω μαζί τους, μήπως μπορεί να διορθωθεί?
Από την Τράπεζα Θεμάτων Προγραμματισμός Γ ΕΠΑΛ..
ενδεικτικα τα θέματα :
27800
29529
Το είδα.
Η σωστή απάντηση είναι να πεις απλά __init__ και τέλος. Δεν χρειάζεται κάτι άλλο.
Άντε να βάλεις και τις παραμέτρους αν θέλεις, αλλά όχι και το def.
Το def δεν είναι μέρος του ονόματος της συνάρτησης.
Θα πρέπει να το διορθώσουν.
Όπως και να έχει πάντως αυτό δε σημαίνει απολύτως τίποτα γιατί το διαγώνισμα το διορθώνει ο/η καθηγητής/τρια, οπότε από τη στιγμή που ο μαθητής αναφέρει την init το δέχεται.