Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

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

Κάποιοι από εδώ ξέρουν πολλά πράγματα και ήθελα να ρωτήσω τι είδους μαθηματικά χρειάζονται να έχει κάποιος καλή γνώση για να ανέβει επίπεδο.
Με ένα search που έκανα έλεγαν 5000 πράγματα για boolean algebra και 1002.
Τι προτείνετε εσείς;

Δημοσ.

Όπως καλά βρήκες Boolean Algerbra. Το σημαντικότερο να μπορείς να διαβάζεις, να καταλαβαίνεις αλγορίθμους και να σκέφτεσαι αλγοριθμικά. Εφόσον έχεις ασχοληθεί με τον προγραμματισμό και πιστεύεις ότι σου ταιριάζει έχεις ότι σoυ χρειάζεται. Απλά συνέχισε να μαθαίνεις νέα πράγματα και δε θα καταλάβεις καν ότι χρειάστηκαν πουθενά τα μαθηματικά. Μαθηματική σκέψη θέλει μόνο, η οποία βρίσκεται στο πίσω μέρος του εγκεφάλου και σπάνια θα χρειαστεί να τη χρησιμοποιήσεις όπως τη φαντάζεσαι.

 

Βέβαια πρέπει να γνωρίζεις το δυαδικό σύστημα και πράξεις πάνω σε αυτό. Επίσης στη πορεία θα εξασκήσεις και την αφαιρετική σου σκέψη.

 

Αν θέλεις ντε και καλά να μάθεις μαθηματικά, μάθε κάποια πράγματα από διακριτά μαθηματικά, επαγωγή (!!), αναδρομή και σίγουρα πολυπλοκότητες. Κάποια από αυτά σίγουρα τα έχεις χρησιμοποιήσει χωρίς να το έχεις καταλάβει (ειδικά boolean αλγεβρα). Να μη ξεχάσω και την γραμμική άλγεβρα!

 

Κάτι τελευταίο...όταν λες "εις βάθος" τι ακριβώς εννοείς; :P

Δημοσ.

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

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

Με ένα search που έκανα έλεγαν 5000 πράγματα για boolean algebra και 1002.

Τι προτείνετε εσείς;

στον προγραμματισμο θα σε βοηθησει παρα πολυ πιστευω να κατσεις να δουλεψεις πρωτα τα διαγραμματα ροης για να μπορεσεις μετα να τα υλοποιησεις σε καποια γλωσσα προγραμματισμου ο προγραμματιστης ο καλος φενεται παντα να ξερεις στο χαρτι απαξ και μαθεις καλα τα διαγραμματα ροης θα σε βοηθησει παρα πολυ πιστευω τωρα απο καποια γλωσσα προγραμματισμου ολες το ιδιο δουλευουν πανω κατω οι εντολες αλλαζουν πχ. στην πασκαλ το διαβασε ειναι read(num); στην c ειναι το scanf("%d",&num) και παει λεγοντας οποτε παρει χαρτι και ξεκινα αλγοριθμους !!

στον προγραμματισμο θα σε βοηθησει παρα πολυ πιστευω να κατσεις να δουλεψεις πρωτα τα διαγραμματα ροης για να μπορεσεις μετα να τα υλοποιησεις σε καποια γλωσσα προγραμματισμου ο προγραμματιστης ο καλος φενεται παντα να ξερεις στο χαρτι απαξ και μαθεις καλα τα διαγραμματα ροης θα σε βοηθησει παρα πολυ πιστευω τωρα απο καποια γλωσσα προγραμματισμου ολες το ιδιο δουλευουν πανω κατω οι εντολες αλλαζουν πχ. στην πασκαλ το διαβασε ειναι read(num); στην c ειναι το scanf("%d",&num) και παει λεγοντας οποτε παρει χαρτι και ξεκινα αλγοριθμους !!

δεν χρειαζονται και πολυ τα μαθηματικα αν θες να μαθεις προγραμματισμο η εξασκηση ειναι οτι θα σε μαθει να γινεις καλος και θα το δεις θεληση να υπαρχει και θα τα καταφερεις..

Δημοσ.

Όπως καλά βρήκες Boolean Algerbra. Το σημαντικότερο να μπορείς να διαβάζεις, να καταλαβαίνεις αλγορίθμους και να σκέφτεσαι αλγοριθμικά. Εφόσον έχεις ασχοληθεί με τον προγραμματισμό και πιστεύεις ότι σου ταιριάζει έχεις ότι σoυ χρειάζεται. Απλά συνέχισε να μαθαίνεις νέα πράγματα και δε θα καταλάβεις καν ότι χρειάστηκαν πουθενά τα μαθηματικά. Μαθηματική σκέψη θέλει μόνο, η οποία βρίσκεται στο πίσω μέρος του εγκεφάλου και σπάνια θα χρειαστεί να τη χρησιμοποιήσεις όπως τη φαντάζεσαι.

 

Βέβαια πρέπει να γνωρίζεις το δυαδικό σύστημα και πράξεις πάνω σε αυτό. Επίσης στη πορεία θα εξασκήσεις και την αφαιρετική σου σκέψη.

 

Αν θέλεις ντε και καλά να μάθεις μαθηματικά, μάθε κάποια πράγματα από διακριτά μαθηματικά, επαγωγή (!!), αναδρομή και σίγουρα πολυπλοκότητες. Κάποια από αυτά σίγουρα τα έχεις χρησιμοποιήσει χωρίς να το έχεις καταλάβει (ειδικά boolean αλγεβρα). Να μη ξεχάσω και την γραμμική άλγεβρα!

 

Κάτι τελευταίο...όταν λες "εις βάθος" τι ακριβώς εννοείς;  :P

 

Εννοώ ότι θέλω να αρχίσω να δουλέυω και λίγο πιο επιστημονικά να μην βάζω μόνο if for κλπ.

Από ότι έχω καταλάβει όμως τα μαθηματικά που χρειάζονται στην ουσία είναι λογική στο 90%.

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

Ευχαριστώ για την απάντηση σου!

 

στον προγραμματισμο θα σε βοηθησει παρα πολυ πιστευω να κατσεις να δουλεψεις πρωτα τα διαγραμματα ροης για να μπορεσεις μετα να τα υλοποιησεις σε καποια γλωσσα προγραμματισμου ο προγραμματιστης ο καλος φενεται παντα να ξερεις στο χαρτι απαξ και μαθεις καλα τα διαγραμματα ροης θα σε βοηθησει παρα πολυ πιστευω τωρα απο καποια γλωσσα προγραμματισμου ολες το ιδιο δουλευουν πανω κατω οι εντολες αλλαζουν πχ. στην πασκαλ το διαβασε ειναι read(num); στην c ειναι το scanf("%d",&num) και παει λεγοντας οποτε παρει χαρτι και ξεκινα αλγοριθμους !!

δεν χρειαζονται και πολυ τα μαθηματικα αν θες να μαθεις προγραμματισμο η εξασκηση ειναι οτι θα σε μαθει να γινεις καλος και θα το δεις θεληση να υπαρχει και θα τα καταφερεις..

 

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

Θέλει εξάσκηση αυτό βλέπω και αρκετά λιγότερο θεωρεία.

Ευχαριστώ πολύ!

Δημοσ.

1. αμα ψαξεις για "math for computer science" θα βρεις πολλα pdf σαν αυτο

 

2. μαθηματα μαθηματικων που δινονται συνηθως σε σχολες πληροφορικης:

 

- discrete mathematics

- linear algebra

- cryptography

- analysis

- calculus

- probability

- statistics

 

3. μαθηματικα για γραφικα και επεξεργασια εικονας, παλι ψαχνεις για "math for computer graphics" και βρισκεις σαν και αυτο

  • Like 4
Δημοσ.

1. αμα ψαξεις για "math for computer science" θα βρεις πολλα pdf σαν αυτο

 

2. μαθηματα μαθηματικων που δινονται συνηθως σε σχολες πληροφορικης:

 

- discrete mathematics

- linear algebra

- cryptography

- analysis

- calculus

- probability

- statistics

 

3. μαθηματικα για γραφικα και επεξεργασια εικονας, παλι ψαχνεις για "math for computer graphics" και βρισκεις σαν και αυτο

 

 Ευχαριστώ πολύ.

Έψαξα λίγο πιο πολύ και είδα ότι έχει κάποια πολύ καλά βιβλία ο O'Reilly.

 

Δημοσ.

Πρώτη φορά ακούω για φίλτρα στον προγραμματισμό αλλά δεδομένου ότι το matlab χρησιμοποιείαι έρευνα πρέπει τα φίτλρα που είδες να έχουν εντελώς διαφορετική έννοια/ερμηνεία

Δημοσ.

Πρώτη φορά ακούω για φίλτρα στον προγραμματισμό αλλά δεδομένου ότι το matlab χρησιμοποιείαι έρευνα πρέπει τα φίτλρα που είδες να έχουν εντελώς διαφορετική έννοια/ερμηνεία

 

Κάτι τέτοιο είναι για το Accelometer  στο android.

 

 

 float x = values[0];
        float y = values[1];
        float z = values[2];
        

        float accelationSquareRoot = (x * x + y * y + z * z)
                / (SensorManager.GRAVITY_EARTH * SensorManager.GRAVITY_EARTH);
        long actualTime = System.currentTimeMillis();
        if (accelationSquareRoot >= 2) //
        { kane kati }

Αυτό ήταν η πρώτη φορά που το είδα. Για να μην καλείται το class με την παραμικρη κίνηση να θέλει αρκετό κούνημα.

 

edit. καταλαβαίνω πως είναι απλά μία if με σύγκριση αλλά η χρήση του (x*x+y*y+z*z) είναι το "μαθηματικό" που δεν μπορώ να καταλάβω.

Δημοσ.

Πρέπει να είναι το τετράγωνο της ευκλείδειας απόστασης του σημείου που προσδιορίζεται από τις συντεταγμένες x,y,z από το σημείο με συντεταγμένες (0,0,0)

 

Aυτό όμως θέλει φυσική όχι μαθηματικά επειδή έχει μέσα και την επιτάχυνση της βαρύτητας(φαντάζομαι αυτό είναι το SensorManager.GRAVITY_EARTH )  :-)

Δημοσ.

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

στέλνεις κάπου αλλού και να τα παρουσιάζεις. Προφανώς και εκεί είναι απαραίτητο κάποιο αξιοπρεπές επίπεδο μαθηματικών αλλά δεν πλησιάζει τον βαθμό παράδειγμα κάποιου που θέλει να ασχοληθεί με computer vision. To παν είναι να μάθεις να σκέφτεσαι αλγοριθμικά και αυτό αποκτάται με την εμπειρία και την εξάσκηση.

Δημοσ.

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

 

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

 

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

 

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

 

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

 

Αυτή είναι κι η γνώμη μου.

  • Like 4

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...