Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class BirthdaySimulation {
- public static void main(String[] args) {
- int[] dupilcateBirthdayCount = new int[1000];
- for(int i = 0; i < dupilcateBirthdayCount.length; i++){
- dupilcateBirthdayCount[i] = countNumberOfTimesUntilDuplicateBirthday();
- }
- int totalCount;
- int averageCount;
- totalCount = 0;
- for (int i = 0; i < dupilcateBirthdayCount.length; i++ ) {
- totalCount = totalCount + dupilcateBirthdayCount[i];
- }
- averageCount = totalCount / dupilcateBirthdayCount.length;
- int largestCount;
- largestCount = dupilcateBirthdayCount[0];
- for ( int i = 1; i < dupilcateBirthdayCount.length; i++ ) {
- if (dupilcateBirthdayCount[i] > largestCount) {
- largestCount = dupilcateBirthdayCount[i];
- }
- }
- int smallestCount;
- smallestCount = dupilcateBirthdayCount[0];
- for(int i = 1; i < dupilcateBirthdayCount.length; i++) {
- if (dupilcateBirthdayCount[i] < smallestCount) {
- smallestCount = dupilcateBirthdayCount[i];
- }
- }
- System.out.println("The largest number of birthday counts until a duplicate birthday is reached: " + largestCount + " birthdays.");
- System.out.println();
- System.out.println("The smallest number of birthday counts until a duplicate birthday is reached: " + smallestCount + " birthdays.");
- System.out.println();
- System.out.println("The average number of birthday counts until a duplicate birthday is reached: " + averageCount + " birthdays.");
- }
- public static int countNumberOfTimesUntilDuplicateBirthday() {
- boolean[] used;
- int count;
- used = new boolean[365];
- count = 0;
- while (true) {
- int birthday;
- birthday = (int) (Math.random() * 365);
- count++;
- if (used[birthday]) {
- break;
- }
- used[birthday] = true;
- }
- return count;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement