#include <stdio.h>
void main(void)
{
int i;
double oldp, p, scale;
oldp = p = 1.0;
for(i=1;i<=52;i++)
{
scale = 1.0 / (double)(53-i);
p *= scale;
printf("card %d : prob = %g * ( 1 / %d ) = %g\n", i, oldp, (53-i), p );
oldp = p;
}
printf("prob of card sequence = %g\n", p);
}
The output from this code is:
card 1 : prob = 1 * ( 1 / 52 ) = 0.0192308
card 2 : prob = 0.0192308 * ( 1 / 51 ) = 0.000377074
card 3 : prob = 0.000377074 * ( 1 / 50 ) = 7.54148e-06
card 4 : prob = 7.54148e-06 * ( 1 / 49 ) = 1.53908e-07
card 5 : prob = 1.53908e-07 * ( 1 / 48 ) = 3.20641e-09
card 6 : prob = 3.20641e-09 * ( 1 / 47 ) = 6.82215e-11
card 7 : prob = 6.82215e-11 * ( 1 / 46 ) = 1.48308e-12
card 8 : prob = 1.48308e-12 * ( 1 / 45 ) = 3.29572e-14
card 9 : prob = 3.29572e-14 * ( 1 / 44 ) = 7.49028e-16
card 10 : prob = 7.49028e-16 * ( 1 / 43 ) = 1.74193e-17
card 11 : prob = 1.74193e-17 * ( 1 / 42 ) = 4.14744e-19
card 12 : prob = 4.14744e-19 * ( 1 / 41 ) = 1.01157e-20
card 13 : prob = 1.01157e-20 * ( 1 / 40 ) = 2.52893e-22
card 14 : prob = 2.52893e-22 * ( 1 / 39 ) = 6.48443e-24
card 15 : prob = 6.48443e-24 * ( 1 / 38 ) = 1.70643e-25
card 16 : prob = 1.70643e-25 * ( 1 / 37 ) = 4.61197e-27
card 17 : prob = 4.61197e-27 * ( 1 / 36 ) = 1.2811e-28
card 18 : prob = 1.2811e-28 * ( 1 / 35 ) = 3.6603e-30
card 19 : prob = 3.6603e-30 * ( 1 / 34 ) = 1.07656e-31
card 20 : prob = 1.07656e-31 * ( 1 / 33 ) = 3.2623e-33
card 21 : prob = 3.2623e-33 * ( 1 / 32 ) = 1.01947e-34
card 22 : prob = 1.01947e-34 * ( 1 / 31 ) = 3.2886e-36
card 23 : prob = 3.2886e-36 * ( 1 / 30 ) = 1.0962e-37
card 24 : prob = 1.0962e-37 * ( 1 / 29 ) = 3.78001e-39
card 25 : prob = 3.78001e-39 * ( 1 / 28 ) = 1.35e-40
card 26 : prob = 1.35e-40 * ( 1 / 27 ) = 5.00001e-42
card 27 : prob = 5.00001e-42 * ( 1 / 26 ) = 1.92308e-43
card 28 : prob = 1.92308e-43 * ( 1 / 25 ) = 7.69232e-45
card 29 : prob = 7.69232e-45 * ( 1 / 24 ) = 3.20513e-46
card 30 : prob = 3.20513e-46 * ( 1 / 23 ) = 1.39354e-47
card 31 : prob = 1.39354e-47 * ( 1 / 22 ) = 6.33425e-49
card 32 : prob = 6.33425e-49 * ( 1 / 21 ) = 3.01631e-50
card 33 : prob = 3.01631e-50 * ( 1 / 20 ) = 1.50816e-51
card 34 : prob = 1.50816e-51 * ( 1 / 19 ) = 7.93766e-53
card 35 : prob = 7.93766e-53 * ( 1 / 18 ) = 4.40981e-54
card 36 : prob = 4.40981e-54 * ( 1 / 17 ) = 2.59401e-55
card 37 : prob = 2.59401e-55 * ( 1 / 16 ) = 1.62125e-56
card 38 : prob = 1.62125e-56 * ( 1 / 15 ) = 1.08084e-57
card 39 : prob = 1.08084e-57 * ( 1 / 14 ) = 7.72026e-59
card 40 : prob = 7.72026e-59 * ( 1 / 13 ) = 5.93866e-60
card 41 : prob = 5.93866e-60 * ( 1 / 12 ) = 4.94888e-61
card 42 : prob = 4.94888e-61 * ( 1 / 11 ) = 4.49899e-62
card 43 : prob = 4.49899e-62 * ( 1 / 10 ) = 4.49899e-63
card 44 : prob = 4.49899e-63 * ( 1 / 9 ) = 4.99887e-64
card 45 : prob = 4.99887e-64 * ( 1 / 8 ) = 6.24859e-65
card 46 : prob = 6.24859e-65 * ( 1 / 7 ) = 8.92656e-66
card 47 : prob = 8.92656e-66 * ( 1 / 6 ) = 1.48776e-66
card 48 : prob = 1.48776e-66 * ( 1 / 5 ) = 2.97552e-67
card 49 : prob = 2.97552e-67 * ( 1 / 4 ) = 7.4388e-68
card 50 : prob = 7.4388e-68 * ( 1 / 3 ) = 2.4796e-68
card 51 : prob = 2.4796e-68 * ( 1 / 2 ) = 1.2398e-68
card 52 : prob = 1.2398e-68 * ( 1 / 1 ) = 1.2398e-68
prob of card sequence = 1.2398e-68