Jump to content



Ερωτηση προγραμματισμου !!


Makis23

Recommended Posts

Καλησπέρα,

προφανώς με τη δήλωση int board1[bOARD_SIZE] έχεις ένα μονοδιάστατο πίνακα ενώ με τη int board2[bOARD_SIZE][bOARD_SIZE] έχεις ένα διασδιάστατο πίνακα. Απο εκεί και πέρα το να χρησιμοποιείς τα i,j για να διαβάζεις/γράφεις στοιχεία στον board1 σημαίνει οτι μεταφράζεις τη μονοδιάστατη διεύθυνση σε δισδιάστατη (εφόσων έχεις τα i,j) παρόλο που ο πίνακας έχει δηλωθεί σαν μονοδιάστατος. Κάτι παρόμοιο κάνει και η C όταν δηλώνεις το board2 δεδομένου οτι στη μνήμη γράφεις μονοδιάστατα (συνεχόμενες διευθύνσεις) και όχι δισδιάστατα.

Το αν είναι συμβατό αυτό που κάνεις με την άσκηση εξαρτάται απο την εκφώνισή της. Υποψιάζομαι οτι η άσκηση ζητάει αυτό που έκανες (εχω δεί αρκετές παρόμοιες ασκήσεις στη C) αλλα δε μπορεί κανείς να σου πεί 100% αν είσαι σωστός αν δεν έχει την εκφώνιση...

Link to comment
Share on other sites

...

Mπορω στον αρχικο πινακα με board 200 να χρησιμοποιησω ως διευκολυνση τα i και j ??

Φυσικά.

Δηλαδη να μετατρεψω το n σε i και j για να εχω περισσοτερη ευκολια στις διαφορες θεσεις και πραξεις του πινακα ??

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

Η εισαγωγη των i και j ως βοηθητικων μεταβλητων για να αποφυγω τους αριθμους για μετακινησεις θεσεων κτλ ...

τον καθιστα δισδιαστατο ??

Όχι βέβαια! Απλώς, έχεις 200 θέσεις μνήμης σε μια σειρά (σε μονοδιάστατο πίνακα), καθεμιά από τις οποίες αριθμείται από το 0 έως το 199. Ο τρόπος με τον οποίο θα τις οργανώσεις εξαρτάται από το τί θέλεις να κάνεις και από τη φαντασία και ευρηματικότητά σου. Ας πούμε, μπορείς να "οργανώσεις" τον πίνακα σε είκοσι 10άδες, εκλαμβάνοντας κάθε 10άδα ως μια σειρά, ή σε δέκα 20άδες, σε πέντε 40άδες, σε σαράντα 5άδες κ.ο.κ.

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

Και κάτι γενικώτερο. Οι βρόχοι επανάληψης δεν κάνουν τον κώδικα τεράστιο, κάνουν ακριβώς το αντίθετο.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Δημιουργία...

Important Information

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