Advertisement
Guest User

probability riddle simulation

a guest
Jul 31st, 2015
232
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // install nodejs
  2. // npm seedrandom
  3. // node prog.js
  4.  
  5. var seedrandom = require('seedrandom');
  6.  
  7. var map = {};
  8. var sums = {};
  9.  
  10. var M = 100;
  11.  
  12. rng = seedrandom();
  13. for (i = 0; i < 10000000; i++) {
  14.     var n = Math.floor((rng() * M) + 1);
  15.     var x = Math.floor((rng() * n) + 1);
  16.  
  17.     if (!(x in map)) {
  18.         map[x] = {};
  19.     }
  20.  
  21.     if (!(n in map[x])) {
  22.         map[x][n] = 0;
  23.     }
  24.  
  25.     if (!(x in sums)) {
  26.         sums[x] = 0;
  27.     }
  28.  
  29.  
  30.     map[x][n] += 1;
  31.     sums[x] += 1;
  32.  
  33.     if (i % 1000000 == 0) {
  34.         console.log("calculating...");
  35.     }
  36. }
  37.  
  38. for (var x = 1; x <= M; x++) {
  39.     console.log("x = " + x + ": ratio (n=x): " + map[x][x] * 1.0 / sums[x]
  40.         + " ratio (n=x+1): " + map[x][x+1] * 1.0 / sums[x] + " ratio (n=x+2): " + map[x][x+2] * 1.0 / sums[x]);
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement