code_junkie

Can I calculate the average of these numbers?

Nov 12th, 2011
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. int currentCount = 12;
  2. float currentScore = 6.1123 (this is a range of 1 <-> 10).
  3.  
  4. int currentCount now equals 13
  5. float currentScore now equals ?????
  6.  
  7. currentScore = (currentScore * currentCount + newValue) / (currentCount + 1)
  8. currentCount = currentCount + 1
  9.  
  10. +--------+-------+----------------------+----------------------+
  11. | Number | Count | Actual average | Calculated average |
  12. +--------+-------+----------------------+----------------------+
  13. | 7 | 1 | (7)/1 = 7 | (0 * 0 + 7) / 1 = 7 |
  14. | 9 | 2 | (7+9)/2 = 8 | (7 * 1 + 9) / 2 = 8 |
  15. | 11 | 3 | (7+9+11)/3 = 9 | (8 * 2 + 11) / 3 = 9 |
  16. | 1 | 4 | (7+9+11+1)/4 = 7 | (9 * 3 + 1) / 4 = 7 |
  17. | 12 | 5 | (7+9+11+1+12)/5 = 8 | (7 * 4 + 12) / 5 = 8 |
  18. +--------+-------+----------------------+----------------------+
  19.  
  20. current_sum += input;
  21. current_count++;
  22. current_average = current_sum/current_count;
  23.  
  24. newScore = (currentScore * currentCount + someNewValue)/(currentCount + 1)
  25.  
  26. current_average = (current_sum = current_sum + newValue) / ++current_count;
Add Comment
Please, Sign In to add comment