Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Die Analyzer
- * @version 1.0
- * @author Cale McNulty
- *
- * This little program perferms some minor
- * statistical analysis on die roles to see
- * what's most preferable.
- */
- import java.util.*;
- import java.lang.Math;
- public class DieAnalyzer
- {
- public static void main (String[] args)
- {
- final int DICE_ROLLED = 5;
- final int GAMES_PLAYED = 10000;
- final int DIE_SIDES = 6;
- final int MODIFIER = 6;
- double stdDevAvg = 0;
- double dmgAvg = 0;
- for (int j = 0; j < GAMES_PLAYED; j++)
- {
- int nums[] = new int[DICE_ROLLED];
- int sum = 0;
- //Populate
- for (int i = 0; i < DICE_ROLLED; i++)
- {
- nums[i] = (int)((Math.random() * DIE_SIDES) + 1);
- sum += nums[i];
- //Format output - useful for rolling many dice
- switch ((i + 1) % 10)
- {
- case 0: System.out.println(nums[i]);
- break;
- default: System.out.print(nums[i]);
- }
- }
- sum += MODIFIER;
- System.out.println("\n----------");
- double avg = (double)(sum / DICE_ROLLED);
- double devSum = 0.0;
- //Compute standard deviation
- for (int k = 0; k < DICE_ROLLED; k++)
- {
- devSum += Math.pow((avg - nums[k]), 2);
- }
- double stdDev = Math.sqrt((devSum/avg));
- stdDevAvg += stdDev;
- System.out.println("Damage for game " + j + ": " + sum);
- System.out.println("Average for game " + j + ": " + avg);
- System.out.println("Standard Deviation for game "
- + j +": " + stdDev + "\n\n");
- dmgAvg += sum;
- }
- dmgAvg /= GAMES_PLAYED;
- stdDevAvg /= GAMES_PLAYED;
- System.out.println(DICE_ROLLED + "d" + DIE_SIDES + "+" + MODIFIER);
- System.out.println("Average damage dealt: " + dmgAvg);
- System.out.println("Average standard deviation: " + stdDevAvg + "\n");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement