damper Δημοσιεύτηκε Νοέμβριος 30 , 2009 Share Δημοσιεύτηκε Νοέμβριος 30 , 2009 Φίλε μου αν αυξήσεις τα δεκαδικά θα δεις ότι η διαφορά ισούται με 0,00300000000011 Κάνε χρήση της Round στα 3 δεκαδικά που θέλεις. ...Καλή συνέχεια... Link to comment Share on other sites More sharing options...
cna Δημοσιεύτηκε Νοέμβριος 30 , 2009 Share Δημοσιεύτηκε Νοέμβριος 30 , 2009 Και για να σε βοηθήσουμε ακόμα περισσότερο ο τύπος γίνεται: =round(ABS((D5-C5)-(C5-B5));3) Link to comment Share on other sites More sharing options...
kostaspde Δημοσιεύτηκε Νοέμβριος 30 , 2009 Share Δημοσιεύτηκε Νοέμβριος 30 , 2009 Χίλια ευχαριστώ ρε παιδιά. Να είσαστε καλά. Έχασα όλο τον ύπνο μου με το να παιδεύομαι με αυτό το πράγμα. Αν και δε καταλαβαίνω το λόγο που γίνεται αυτό, εφόσον οι μετρήσεις μου είναι με τρία δεκαδικά μόνο, και ακόμα και αν τις βάλω 20 δεκαδικά, όλα τα υπόλοιπα μηδενάρια είναι, καθώς επίσης όταν δοκίμασα να κάνω MOD(((D5-C5)-(C5-B5));0,003) μου έβγαλε αποτέλεσμα 1. Επίσης σε άλλες περιπτώσεις που η διαφορά ήταν πάλι ακριβώς 0,003 δεν έβγαλε πρόβλημα το πρόγραμμα, όπως και όταν αφαίρεσα μια μονάδα από όλα. Αν δε σας κάνει κόπο, θα μπορούσατε να μου εξηγήσετε γιατί συμβαίνει αυτό; Και πάλι ευχαριστώ! Link to comment Share on other sites More sharing options...
Παναγιώτης Δημοσιεύτηκε Νοέμβριος 30 , 2009 Share Δημοσιεύτηκε Νοέμβριος 30 , 2009 Κώστα δες αυτά: http://en.wikipedia.org/wiki/Floating_point http://en.wikipedia.org/wiki/Round-off_error Link to comment Share on other sites More sharing options...
kostaspde Δημοσιεύτηκε Νοέμβριος 30 , 2009 Share Δημοσιεύτηκε Νοέμβριος 30 , 2009 Ευχαριστώ πολύ Παναγιώτη. Αν κατάλαβα καλά, το λάθος είναι του προγράμματος και δεν οφείλεται σε κάποια ρύθμιση που έχω κάνει εγώ. Δηλαδή και με το excel ακόμα, πρέπει να φυλάμε τον κ*%#ο μας. Και μετά παραπονιόμαστε που τα στατικά προγράμματα, τα οποία είναι 10^ν πιο πολύπλοκα, βγάζουν λάθη. Link to comment Share on other sites More sharing options...
cna Δημοσιεύτηκε Νοέμβριος 30 , 2009 Share Δημοσιεύτηκε Νοέμβριος 30 , 2009 Κώστα δεν είναι ακριβώς λάθος ρύθμιση του excel. Το excel όταν κάνει πράξεις χρησιμοποιεί (αν θυμάμαι καλά) 10 ορατά ψηφία και περί τα 200 στην μνήμη. Το σφάλμα στρογγυλοποίησης που σου έδειξε ο Παναγιώτης είναι άλλο πράγμα και έχει να κάνει με το γεγονός ότι όταν στρογγυλοποιείς στα 2 δεκαδικά ο αριθμός μπορεί να είναι οποιοσδήποτε από -0,0005 έως +0,004 της μονάδας (π.χ. και ο 0,0015 και ο 0,024 στρογγυλοποιούνται στο 0,02). Στο δικό σου φύλλο λοιπόν δεν του είχες ορίσει στρογγυλοποίηση στην μια στήλη με αποτέλεσμα το 11ο δεκαδικό ψηφίο να μην είναι μηδέν αλλά 1. Αυτό προκαλούσε το σφάλμα. Αν στρογγυλοποιούσες εξ αρχής στα 3 δεκαδικά το πρόγραμμα θα θεωρούσε όλα τα υπόλοιπα δεκαδικά 0 οπότε θα σου το έβγαζε σωστό... Ανέτρεξε στο μάθημα των Εφαρμοσμένων Μαθηματικών για περαιτέρω στοιχεία γύρω από τα σφάλματα στρογγυλοποίησης. [offtopic] Το κάνει ακόμα ο Παπαϊωάννου ή το πήρε άλλος;[/offtopic] Link to comment Share on other sites More sharing options...
kostaspde Δημοσιεύτηκε Νοέμβριος 30 , 2009 Share Δημοσιεύτηκε Νοέμβριος 30 , 2009 Αν εννοείς αριθμητική ανάλυση, ναι αυτός την κάνει. Θα τον ρωτήσω αύριο. Link to comment Share on other sites More sharing options...
Geoddr Δημοσιεύτηκε Νοέμβριος 30 , 2009 Share Δημοσιεύτηκε Νοέμβριος 30 , 2009 kostaspde, αν και οι από πάνω απαντήσεις θα πρέπει να σε καλύπτουν πλήρως, δες και αυτό http://blogs.msdn.com/excel/archive/2008/04/10/understanding-floating-point-precision-aka-why-does-excel-give-me-seemingly-wrong-answers.aspx Link to comment Share on other sites More sharing options...
Παναγιώτης Δημοσιεύτηκε Δεκέμβριος 1 , 2009 Share Δημοσιεύτηκε Δεκέμβριος 1 , 2009 κώστα, δες στο πρώτο link που σου έδωσα, την ενότητα : Representable numbers, conversion and rounding. Στην ουσία είναι το ίδιο ακριβώς με αυτό που σου δίνει ο geoddr σχετικά με την αξιοπιστία του excel δες και αυτό:http://www.joelonsoftware.com/items/2007/09/26b.html Τώρα πια το έχουν πατσάρει αλλά σκέψου πόσο εύκολα μπορούσες να τρελαθείς στο ψάξιμο... Link to comment Share on other sites More sharing options...
kostaspde Δημοσιεύτηκε Δεκέμβριος 1 , 2009 Share Δημοσιεύτηκε Δεκέμβριος 1 , 2009 Ευχαριστώ πάρα πολύ παιδιά. Sorry για τις πολλές ερωτήσεις, αλλά αν δε ρωτήσεις, δε μαθαίνεις... Link to comment Share on other sites More sharing options...
Recommended Posts
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε προκειμένου να αφήσετε κάποιο σχόλιο
Πρέπει να είστε μέλος για να μπορέσετε να αφήσετε κάποιο σχόλιο
Δημιουργία λογαριασμού
Κάντε μια δωρεάν εγγραφή στην κοινότητά μας. Είναι εύκολο!
Εγγραφή νέου λογαριασμούΣύνδεση
Εάν έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα