Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Program 15 40 points (see Grading Notes for details Due April 3th 11:59 PM The C

ID: 3806549 • Letter: P

Question

Program 15 40 points (see Grading Notes for details Due April 3th 11:59 PM The CenturyLink Center can seat 18,975 people for anevent. If the arena was full and you were to poll everyone for which day of the year (1-365) they were born, determine which days had the most birthdays and which days had the fewest birthdays. Write a program that will generate 18,975 random birthdays (numbers) between 1 and 365 and count how many people have that same birthday. Output a display of each day of the year (1-365) followed by the number of people with that birthday, and then a listing of the days that have the most birthdays and the days that have the fewest birthdays. You do not need to convert a number like 32 to an actual date (February 1 Goals Use your knowledge of arrays and random number generation to solve a problem. Use looping structures to determine the largest and smallest values in an array and then find each occurrence of that value Class and File Namin Name your class NetID Birthdays and source file Net ID Birthdays.java, using your UNO NetID. For example, for Loki account jsmith, they would create a class jsmith Birthdays Points to Think About Asolution with just a main0 method would likely contain five looping structures. The first would fill an array of counters based on random numbers between 1 and 365. The next two would first identify the largest value (count) stored in the array and then go back through the array and identify the positions (days) that contained that value, outputting the positions. The last two would first identify the smallest value (count) stored in the array and then go back through the array and identify the positions (days) that contained that value, outputting the positions. Grading Notes Your program will not be graded without complete header and Honor Pledge documentation You may not use any material from beyond chapter 6 of the Deitel book. Name your class according to the Class and File Name" section above. You don't need to use methods for this program, though if you'd like to practice you certainly can. It's just as easy to write the code for this particular assignment in a slightly larger main method as it is to pass an array around to various methods

Explanation / Answer

Source Code:

public class NetID_Birthdays {
public static void main(String[] args) {
int total = 18975;
int bday;
// Java automatically initializes the int to 0.
int birthday_count[] = new int[365];
  
// generate random number and increment that day's counter
for(int i=1; i<=total; i++)
{
bday = (int) (Math.random() * 365);
  
birthday_count[bday]++;
}
  
//displaying for every day
for(int i=0; i<365; i++)
{
System.out.println("Day " + (i+1) + " : " + birthday_count[i] + " People");
}
  
//finding largest count of people
int largest = birthday_count[0];
  
for(int i=1; i<365; i++)
{
if(birthday_count[i] > largest)
largest = birthday_count[i];
}
  
//now printing that largest value as per the format given in the question..
  
System.out.println("The following days have " + largest + " people:");
//finding the days having max people count and printing that number
for(int i=0; i<365; i++)
{
if(birthday_count[i]==largest)
{
System.out.print((i+1) + " ");
}
}
  
System.out.println("");
  
//finding smallest count of people
int smallest = birthday_count[0];
  
for(int i=1; i<365; i++)
{
if(birthday_count[i] < smallest)
smallest = birthday_count[i];
}
  
//now printing that smallest value as per the format given in the question..
  
System.out.println("The following days have " + smallest + " people:");
//finding the days having min people count and printing that number
for(int i=0; i<365; i++)
{
if(birthday_count[i]==smallest)
{
System.out.print((i+1) + " ");
}
}
}
}

Output:

Day 1 : 40 People
Day 2 : 48 People
Day 3 : 42 People
Day 4 : 64 People
Day 5 : 62 People
Day 6 : 56 People
Day 7 : 49 People
Day 8 : 58 People
Day 9 : 69 People
Day 10 : 36 People
Day 11 : 44 People
Day 12 : 46 People
Day 13 : 48 People
Day 14 : 48 People
Day 15 : 54 People
Day 16 : 59 People
Day 17 : 62 People
Day 18 : 52 People
Day 19 : 58 People
Day 20 : 56 People
Day 21 : 46 People
Day 22 : 62 People
Day 23 : 51 People
Day 24 : 45 People
Day 25 : 48 People
Day 26 : 48 People
Day 27 : 41 People
Day 28 : 42 People
Day 29 : 51 People
Day 30 : 55 People
Day 31 : 52 People
Day 32 : 47 People
Day 33 : 53 People
Day 34 : 56 People
Day 35 : 51 People
Day 36 : 49 People
Day 37 : 51 People
Day 38 : 45 People
Day 39 : 59 People
Day 40 : 63 People
Day 41 : 68 People
Day 42 : 56 People
Day 43 : 60 People
Day 44 : 49 People
Day 45 : 49 People
Day 46 : 51 People
Day 47 : 57 People
Day 48 : 49 People
Day 49 : 58 People
Day 50 : 38 People
Day 51 : 56 People
Day 52 : 57 People
Day 53 : 70 People
Day 54 : 50 People
Day 55 : 37 People
Day 56 : 49 People
Day 57 : 59 People
Day 58 : 53 People
Day 59 : 41 People
Day 60 : 48 People
Day 61 : 45 People
Day 62 : 62 People
Day 63 : 48 People
Day 64 : 41 People
Day 65 : 51 People
Day 66 : 50 People
Day 67 : 49 People
Day 68 : 46 People
Day 69 : 54 People
Day 70 : 46 People
Day 71 : 39 People
Day 72 : 48 People
Day 73 : 55 People
Day 74 : 51 People
Day 75 : 46 People
Day 76 : 51 People
Day 77 : 54 People
Day 78 : 57 People
Day 79 : 50 People
Day 80 : 39 People
Day 81 : 55 People
Day 82 : 36 People
Day 83 : 41 People
Day 84 : 58 People
Day 85 : 65 People
Day 86 : 56 People
Day 87 : 47 People
Day 88 : 58 People
Day 89 : 53 People
Day 90 : 64 People
Day 91 : 55 People
Day 92 : 42 People
Day 93 : 41 People
Day 94 : 44 People
Day 95 : 62 People
Day 96 : 54 People
Day 97 : 45 People
Day 98 : 44 People
Day 99 : 52 People
Day 100 : 45 People
Day 101 : 46 People
Day 102 : 52 People
Day 103 : 52 People
Day 104 : 61 People
Day 105 : 59 People
Day 106 : 48 People
Day 107 : 54 People
Day 108 : 53 People
Day 109 : 52 People
Day 110 : 57 People
Day 111 : 58 People
Day 112 : 45 People
Day 113 : 51 People
Day 114 : 49 People
Day 115 : 60 People
Day 116 : 59 People
Day 117 : 44 People
Day 118 : 67 People
Day 119 : 46 People
Day 120 : 53 People
Day 121 : 42 People
Day 122 : 71 People
Day 123 : 53 People
Day 124 : 50 People
Day 125 : 50 People
Day 126 : 45 People
Day 127 : 61 People
Day 128 : 47 People
Day 129 : 49 People
Day 130 : 64 People
Day 131 : 57 People
Day 132 : 36 People
Day 133 : 44 People
Day 134 : 52 People
Day 135 : 46 People
Day 136 : 60 People
Day 137 : 56 People
Day 138 : 53 People
Day 139 : 52 People
Day 140 : 46 People
Day 141 : 56 People
Day 142 : 52 People
Day 143 : 53 People
Day 144 : 53 People
Day 145 : 38 People
Day 146 : 56 People
Day 147 : 57 People
Day 148 : 57 People
Day 149 : 43 People
Day 150 : 55 People
Day 151 : 47 People
Day 152 : 67 People
Day 153 : 40 People
Day 154 : 41 People
Day 155 : 59 People
Day 156 : 50 People
Day 157 : 52 People
Day 158 : 61 People
Day 159 : 37 People
Day 160 : 47 People
Day 161 : 44 People
Day 162 : 48 People
Day 163 : 58 People
Day 164 : 46 People
Day 165 : 40 People
Day 166 : 54 People
Day 167 : 52 People
Day 168 : 55 People
Day 169 : 42 People
Day 170 : 55 People
Day 171 : 42 People
Day 172 : 59 People
Day 173 : 51 People
Day 174 : 53 People
Day 175 : 65 People
Day 176 : 61 People
Day 177 : 57 People
Day 178 : 51 People
Day 179 : 51 People
Day 180 : 65 People
Day 181 : 47 People
Day 182 : 52 People
Day 183 : 42 People
Day 184 : 58 People
Day 185 : 54 People
Day 186 : 51 People
Day 187 : 54 People
Day 188 : 68 People
Day 189 : 61 People
Day 190 : 55 People
Day 191 : 65 People
Day 192 : 51 People
Day 193 : 61 People
Day 194 : 57 People
Day 195 : 59 People
Day 196 : 47 People
Day 197 : 55 People
Day 198 : 49 People
Day 199 : 56 People
Day 200 : 55 People
Day 201 : 58 People
Day 202 : 53 People
Day 203 : 42 People
Day 204 : 55 People
Day 205 : 45 People
Day 206 : 49 People
Day 207 : 52 People
Day 208 : 43 People
Day 209 : 56 People
Day 210 : 40 People
Day 211 : 62 People
Day 212 : 38 People
Day 213 : 51 People
Day 214 : 45 People
Day 215 : 49 People
Day 216 : 46 People
Day 217 : 48 People
Day 218 : 50 People
Day 219 : 67 People
Day 220 : 52 People
Day 221 : 46 People
Day 222 : 51 People
Day 223 : 44 People
Day 224 : 62 People
Day 225 : 51 People
Day 226 : 48 People
Day 227 : 56 People
Day 228 : 44 People
Day 229 : 37 People
Day 230 : 58 People
Day 231 : 58 People
Day 232 : 47 People
Day 233 : 58 People
Day 234 : 56 People
Day 235 : 46 People
Day 236 : 68 People
Day 237 : 43 People
Day 238 : 75 People
Day 239 : 66 People
Day 240 : 45 People
Day 241 : 53 People
Day 242 : 63 People
Day 243 : 49 People
Day 244 : 48 People
Day 245 : 54 People
Day 246 : 55 People
Day 247 : 54 People
Day 248 : 72 People
Day 249 : 62 People
Day 250 : 61 People
Day 251 : 61 People
Day 252 : 33 People
Day 253 : 53 People
Day 254 : 56 People
Day 255 : 55 People
Day 256 : 54 People
Day 257 : 52 People
Day 258 : 49 People
Day 259 : 62 People
Day 260 : 51 People
Day 261 : 65 People
Day 262 : 39 People
Day 263 : 36 People
Day 264 : 58 People
Day 265 : 56 People
Day 266 : 58 People
Day 267 : 53 People
Day 268 : 43 People
Day 269 : 54 People
Day 270 : 54 People
Day 271 : 51 People
Day 272 : 62 People
Day 273 : 60 People
Day 274 : 61 People
Day 275 : 53 People
Day 276 : 58 People
Day 277 : 55 People
Day 278 : 57 People
Day 279 : 59 People
Day 280 : 53 People
Day 281 : 57 People
Day 282 : 40 People
Day 283 : 58 People
Day 284 : 49 People
Day 285 : 33 People
Day 286 : 46 People
Day 287 : 48 People
Day 288 : 53 People
Day 289 : 64 People
Day 290 : 59 People
Day 291 : 39 People
Day 292 : 47 People
Day 293 : 54 People
Day 294 : 55 People
Day 295 : 44 People
Day 296 : 67 People
Day 297 : 42 People
Day 298 : 64 People
Day 299 : 49 People
Day 300 : 59 People
Day 301 : 48 People
Day 302 : 52 People
Day 303 : 57 People
Day 304 : 52 People
Day 305 : 45 People
Day 306 : 50 People
Day 307 : 46 People
Day 308 : 52 People
Day 309 : 52 People
Day 310 : 56 People
Day 311 : 46 People
Day 312 : 57 People
Day 313 : 41 People
Day 314 : 49 People
Day 315 : 52 People
Day 316 : 52 People
Day 317 : 43 People
Day 318 : 40 People
Day 319 : 52 People
Day 320 : 45 People
Day 321 : 53 People
Day 322 : 48 People
Day 323 : 50 People
Day 324 : 43 People
Day 325 : 53 People
Day 326 : 50 People
Day 327 : 63 People
Day 328 : 36 People
Day 329 : 53 People
Day 330 : 52 People
Day 331 : 56 People
Day 332 : 49 People
Day 333 : 61 People
Day 334 : 51 People
Day 335 : 60 People
Day 336 : 57 People
Day 337 : 64 People
Day 338 : 49 People
Day 339 : 58 People
Day 340 : 39 People
Day 341 : 54 People
Day 342 : 47 People
Day 343 : 55 People
Day 344 : 49 People
Day 345 : 52 People
Day 346 : 46 People
Day 347 : 50 People
Day 348 : 57 People
Day 349 : 64 People
Day 350 : 46 People
Day 351 : 56 People
Day 352 : 51 People
Day 353 : 54 People
Day 354 : 38 People
Day 355 : 40 People
Day 356 : 52 People
Day 357 : 43 People
Day 358 : 50 People
Day 359 : 69 People
Day 360 : 50 People
Day 361 : 45 People
Day 362 : 62 People
Day 363 : 49 People
Day 364 : 63 People
Day 365 : 45 People
The following days have 75 people:
238
The following days have 33 people:
252 285

Description:

Here, I have developed the code as per the requirements given. First, using a loop, I have created 18975 random numbers and made an array of size 365 which is used to count the particular number. This counter is initialized to 0 for every entry by default and added 1 every time that number is generated.

Math.random() gives values between 0 and 1. So, multiplying it with 365 gives a value between 0 and 364 both inclusive. Converting them to int as random() returns double value. Now, the array index is also 0 to 364 so you consider 0 means day 1 and so on so that no need to do any modifications. Just increment the counter of array at that index and you are ready to continue.

Then, for every number 1 to 365, how many times it came is printed in the for loop.

After that, the largest is found and the next for loop prints the day(s) where number of people is maximum.

To find the maximum, use a for loop. Assign the first value of birthday_count i.e. birthday_count[0] to a variable called largest which keeps track of largest value, compare it with all the elements of the array and if the value is greater than previously stored largest value, save it as the new largest one. So, when this loop is completed, we have the largest count from this array. Using the next for loop, the days having this 'largest' value is printed.

Then the same thing of assigning birthday_count[0] and compare it to every other and ... is repeated to find the smallest number from the array and it is printed then.

I have also written the comments in the code which will help you for sure, see the output also. It is in the same format as you need.

Please comment if there is any query. Thank you. ;)

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote