This is an old revision of the document!
Τρίτος και τελευταίος κώδικας πάνω στο Conway's Game Of Life
Δημιουργία της συνάρτησης bool boardInit(int rows, int cols, bool next[rows][cols])
η οποία δίνει τιμές στα κελιά του grid βάσει του πίνακα next
που πρέπει να έχει τις ίδιες διαστάσεις με το grid. Ουσιαστικά αντιγράφει τον πίνακα next
στο grid.
Δημιουργία της συνάρτησης bool calcNextGen(int rows, int cols, bool next[rows][cols])
η οποία υπολογίζει βάσει του grid, την επόμενη γενιά του παιχνιδιού και την αποθηκεύει (αυτό μας βοηθάει πολύ στην πραγματικότητα) στον πίνακα next που πρέπει να έχει τις ίδιες διαστάσεις με το grid.
Έλεγχοι ως προς την επιβεβαίωση των τιμών των παραμέτρων των συναρτήσεων.
Μία ή περισσότερες κλήσεις της boardInit
με μηδενικό μήκος ή πλάτος (ή και τα δύο) δεν επέστρεψαν ψευδές όπως ζητούνταν στην εκφώνηση.
Μία ή περισσότερες κλήσεις της boardInit
με αρνητικό μήκος ή πλάτος (ή και τα δύο) δεν επέστρεψαν ψευδές όπως ζητούνταν στην εκφώνηση.
Μία ή περισσότερες κλήσεις της calcNextGen
με μηδενικό μήκος ή πλάτος (ή και τα δύο) δεν επέστρεψαν ψευδές όπως ζητούνταν στην εκφώνηση.
Μία ή περισσότερες κλήσεις της calcNextGen
με αρνητικό μήκος ή πλάτος (ή και τα δύο) δεν επέστρεψαν ψευδές όπως ζητούνταν στην εκφώνηση.
Η κλήση της boardInit
για αποδεκτές τιμές μήκους και πλάτους είτε δεν επέστρεψε αληθές όπως ζητούνταν στην εκφώνηση, είτε δεν έδωσε σωστές διαστάσεις στο grid.
Η κλήση της calcNextGen
με διαστάσεις πίνακα διαφορετικές από του grid δεν επέστρεψε ψευδές όπως ζητούνταν στην εκφώνηση.
Προσοχή! Για να είναι έγκυρο αυτό το σφάλμα πρέπει να μην έχει παρουσιαστεί νωρίτερα το σφάλμα A-1-1-e
. Εάν έχει παρουσιαστεί το A-1-1-e
θα πρέπει πρώτα να το λύσετε και μετά να λάβετε υπόψη σας αυτό τον έλεγχο (εάν ακόμα θα εμφανίζετα ως εσφαλμένος).
Έλεγχος λειτουργίας της συνάρτησης boardInit
.
Εκκρεμούν…
Σύνθετοι έλεγχοι των συναρτήσεων boardInit
και calcNextGen
. Αν και ο σκοπός είναι να ελεγχθεί η calcNextGen
, χρειάζεται και η boardInit
ώστε να δημιουργηθούν τα grids.
Προσοχή! Εάν η boardInit
δεν έχει περάσει όλες τις δοκιμές της ενότητας A.1.2 , μπορεί να είναι αυτή η αιτία αποτυχίας των δοκιμών Α.1.3.
Εκκρεμούν…
Πρώτη εργασία πάνω στην άλγεβρα πινάκων. Τα μηνύματα στο CLion ακολουθούνται από τον πίνακα που δημιουργεί την αποτυχία της δοκιμής.
Δημιουργία της συνάρτησης bool isLTriangular(int R, int C, double A[R][C])
η οποία απατά στο ερώτημα αν ο πίνακας A
είναι κάτω τριγωνικός.
Η συνάρτηση δεν επιστρέφει ψευδές όπως θα έπρεπε για μηδενικές γραμμές ή/και στήλες του πίνακα.
Η συνάρτηση δεν επιστρέφει ψευδές όπως θα έπρεπε για αρνητικές γραμμές ή/και στήλες του πίνακα.
Η συνάρτηση δεν επιστρέφει ψευδές όπως θα έπρεπε για μη κάτω τριγωνικό πίνακα μικρών διαστάσεων (3×3).
Η συνάρτηση δεν επιστρέφει αληθές όπως θα έπρεπε για όντως κάτω τριγωνικό πίνακα μικρών διαστάσεων (3×3).
Η συνάρτηση δεν επιστρέφει ψευδές όπως θα έπρεπε για μη τετράγωνικό πίνακα.
Η συνάρτηση δεν ανιχνεύει σωστά την κάτω-τριγωνικότητα του πίνακα για κάπως μεγαλύτερο πίνακα (5×5).
Η συνάρτηση δεν ανιχνεύει σωστά την κάτω-τριγωνικότητα του πίνακα για κάπως μεγαλύτερο πίνακα (12×12).
Δημιουργία της συνάρτησης bool add(int R, int C, double A[R][C], double B[R][C] , double sum[R][C])
η οποία αθροίζει τους πίνακες Α
και Β
στον πίνακα sum
.
Η συνάρτηση δεν επιστρέφει ψευδές όπως θα έπρεπε για μηδενικές γραμμές ή/και στήλες του πίνακα.
Η συνάρτηση δεν επιστρέφει ψευδές όπως θα έπρεπε για αρνητικές γραμμές ή/και στήλες του πίνακα.
Η συνάρτηση δεν επιστρέφει αληθές ή δεν παράγει το σωστό άθροισμα όπως θα έπρεπε για δεδομένο τετράγωνο πίνακα, με τον εαυτό του.
Η συνάρτηση δεν επιστρέφει αληθές ή δεν παράγει το σωστό (μηδενικό) άθροισμα όπως θα έπρεπε για δεδομένο τετράγωνο πίνακα, με τον αντίθετό του.
Η συνάρτηση δεν επιστρέφει αληθές ή δεν παράγει το σωστό (μηδενικό) άθροισμα όπως θα έπρεπε για δεδομένο τετράγωνο πίνακα, με έναν ίδιας διάστασης που όλα τα στοιχεία του είναι ίσα με το 1
.
Η συνάρτηση δεν επιστρέφει αληθές ή δεν παράγει το σωστό (μηδενικό) άθροισμα όπως θα έπρεπε για δεδομένο μη-τετράγωνο πίνακα, με έναν ίδιας διάστασης που όλα τα στοιχεία του είναι ίσα με το 1
.
Δημιουργία της συνάρτησης bool mul(int M, int N, int K, double A[M][N], double B[N][K] , double P[Μ][Κ])
η οποία πολλαπλασιάζει τους πίνακες Α
και Β
στον πίνακα P
.
Εκκρεμούν…
Αυτή η ενότητα ελέγχων περιέχει έναν συνδυαστικό έλεγχο των συναρτήσεων.
Εκκρεμούν…