Νομιζω εχει να κανει με το πως αποθηκευονται οι αριθμοι στην μνημη. Οσο μεγαλωνει το n, τοσο μεγαλυτερη ακριβεια εχεις (ή μαλλον ζητας). Ουσιαστικα μπορεις να εχεις μεχρι καποιο αριθμο ψηφιων. Νομιζω ο double ειναι 16 ψηφια. Οποτε το 1 ειναι 1.0...0 οπου το "0...0" ειναι 15 μηδενικα. Οτιδηποτε μικροτερο απο το 16ο δεκαδικο ψηφιο, πετιεται. Παρα οτι αυτα ειναι πολυ μικρα, το αθροισμα τους μπορει να κανει τη διαφορα σωστου-λαθους αν θες μεγαλη ακριβεια.
Αν ομως ξεκινησεις απο το n, ξεκινας αποθηκευοντας εναν (αριθμο με 16 ψηφια) επι 10^(αρνητικος αριθμος). Οποτε μετα μεγαλωνοντας τον αριθμο "κοβεις" σιγα σιγα ακριβεια κρατοντας ενα πιο σωστο αποτελεσμα
Aν βαλεις το προγραμμα σου να σου εκτυπωνει τον υπολογισμο και το sum σε καθε επαναληψη (και με τους 2 τροπους) και θα το δεις απο μονος σου. Ισως να βαλεις μετα και 2 γραφικες με την "προοδο" του sum
(δεν ξερω πως να το ψαξω στο google για να σου βρω μια καλυτερη απαντηση)