From efe6b2e06ba24308f3875580b540783f5f16b0c0 Mon Sep 17 00:00:00 2001 From: David Vazgenovich Shakaryan Date: Fri, 10 Jun 2022 14:28:43 -0700 Subject: test 95% within radius --- dartboat.c | 37 +++++++++++++++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-) (limited to 'dartboat.c') diff --git a/dartboat.c b/dartboat.c index 952b5b7..dcd523d 100644 --- a/dartboat.c +++ b/dartboat.c @@ -157,16 +157,49 @@ void test_averages() } } +int comp_95(const void *a, const void *b) +{ + if (*(double *)a > *(double *)b) + return 1; + if (*(double *)a < *(double *)b) + return -1; + return 0; +} + +#define ROUNDS 1000000 +void test_95() +{ + for (int i = 8; i <= 88; i += 8) { + comp_set_difficulty(i); + + struct ccoords cc; + struct pcoords target = {0, 0}; + + double dists[ROUNDS]; + for (int i = 0; i < ROUNDS; ++i) + dists[i] = throw_dart(target, &cc).r; + qsort(dists, ROUNDS, sizeof(*dists), comp_95); + + int index = (int)(ROUNDS * 0.95) - 1; + + printf("%3d %5.2f %5.2f\n", + 10 * (i/8 + 1), + horizontal_stdev, + dists[index]); + } +} + int main() { srand(time(NULL)); init_board(); //cvc_curses_match(501); - pvc_curses_match(501); + //pvc_curses_match(501); //pvp_curses_match(501); - test_match(501); + //test_match(501); //test_averages(); + test_95(); return 0; } -- cgit v1.2.3-70-g09d2