[ create a new paste ] login | about

Link: http://codepad.org/92XB2m6o    [ raw code | output | fork ]

Perl, pasted on Apr 14:
#!/usr/bin/perl -w

use warnings;
use strict;

my $players = 1000; # Anzahl Spieler
my $p_precursor = 0.001; # Precursorwahrscheinlichkeit
my $num_tries = 25000; # Anzahl Versuche pro Spieler

my @player; # Precursor-Zähler pro Spieler

srand;

for (my $i=0; $i<$players; $i++) {

	$player[$i] = 0;

	# führe $num_tries Versuche durch

	for (my $try=0; $try < $num_tries; $try++) {
		my $is_precursor = rand() < $p_precursor;
		$player[$i]++ if $is_precursor; # Zähler eins hoch, falls Precursor gedroppt
	}

}

# gehe alle Spieler durch und zähle wie oft wieviele Precursor gedroppt wurden

my @precursor_count;
$precursor_count[$_]++ for @player;
my $sum = 0;

for (my $i=0; $i<scalar @precursor_count; $i++) {

	print "" . ($precursor_count[$i] || 0) . " Spieler haben " . $i . " Precursor erhalten\n";
	$sum += $precursor_count[$i] * $i if $precursor_count[$i];

}

print "Precursor insgesamt: $sum\n";


Output:
0 Spieler haben 0 Precursor erhalten
0 Spieler haben 1 Precursor erhalten
0 Spieler haben 2 Precursor erhalten
0 Spieler haben 3 Precursor erhalten
0 Spieler haben 4 Precursor erhalten
0 Spieler haben 5 Precursor erhalten
0 Spieler haben 6 Precursor erhalten
0 Spieler haben 7 Precursor erhalten
0 Spieler haben 8 Precursor erhalten
0 Spieler haben 9 Precursor erhalten
0 Spieler haben 10 Precursor erhalten
1 Spieler haben 11 Precursor erhalten
4 Spieler haben 12 Precursor erhalten
4 Spieler haben 13 Precursor erhalten
4 Spieler haben 14 Precursor erhalten
10 Spieler haben 15 Precursor erhalten
8 Spieler haben 16 Precursor erhalten
26 Spieler haben 17 Precursor erhalten
40 Spieler haben 18 Precursor erhalten
53 Spieler haben 19 Precursor erhalten
54 Spieler haben 20 Precursor erhalten
52 Spieler haben 21 Precursor erhalten
67 Spieler haben 22 Precursor erhalten
88 Spieler haben 23 Precursor erhalten
82 Spieler haben 24 Precursor erhalten
86 Spieler haben 25 Precursor erhalten
75 Spieler haben 26 Precursor erhalten
60 Spieler haben 27 Precursor erhalten
66 Spieler haben 28 Precursor erhalten
56 Spieler haben 29 Precursor erhalten
31 Spieler haben 30 Precursor erhalten
38 Spieler haben 31 Precursor erhalten
24 Spieler haben 32 Precursor erhalten
19 Spieler haben 33 Precursor erhalten
20 Spieler haben 34 Precursor erhalten
9 Spieler haben 35 Precursor erhalten
9 Spieler haben 36 Precursor erhalten
4 Spieler haben 37 Precursor erhalten
5 Spieler haben 38 Precursor erhalten
3 Spieler haben 39 Precursor erhalten
0 Spieler haben 40 Precursor erhalten
2 Spieler haben 41 Precursor erhalten
Precursor insgesamt: 24803


Create a new paste based on this one


Comments: