CS 145 Lecture 15 – Arrays
Agenda
- calculating a histogram
- serializing data with arrays
- turning a month number into a month name
- turning a month/day into a day of the year
TODO
- Read sections 7.1 and 7.2.
Program This
You are given a month and day, both as numbers. What day of the year is it? Write down your algorithm in pseudocode.
Code
Histogram.java
package preexam2; import java.util.Scanner; public class Histogram { public static void main(String[] args) { Scanner in = new Scanner(System.in); // int nZeroes = 0; // int nOnes = 0; // int nTwos = 0; // int nThrees = 0; // int nFours = 0; // int nFives = 0; // int nSixes = 0; // int nSevens = 0; // int nEights = 0; // int nNines = 0; // int nTens = 0; int[] counters = new int[7]; System.out.print("# of kids in family: "); while (in.hasNextInt()) { int nSiblings = in.nextInt(); counters[nSiblings]++; System.out.print("# of kids in family: "); // if (nSiblings == 0) { // nZeroes++; // } else if (nSiblings == 1) { // nOnes++; // } else if (nSiblings == 2) { // nTwos++; // } else if (nSiblings == 3) { // nThrees++; // } else if (nSiblings == 4) { // nFours++; // } else if (nSiblings == 5) { // nFives++; // } else if (nSiblings == 6) { // nSixes++; // } else if (nSiblings == 7) { // nSevens++; // } } for (int i = 0; i < counters.length; ++i) { System.out.println(i + ": " + counters[i]); } } }
Date.java
package preexam2; public class Date { public static void main(String[] args) { for (int i = 1; i <= 12; ++i) { System.out.println(monthNumberToName(i)); } } public static String monthNumberToName(int i) { // make an array // first element is January // last element is December String[] monthNames = new String[12]; monthNames[0] = "January"; monthNames[1] = "February"; monthNames[2] = "March"; monthNames[3] = "April"; monthNames[4] = "May"; monthNames[5] = "June"; monthNames[6] = "July"; monthNames[7] = "August"; monthNames[8] = "September"; monthNames[9] = "October"; monthNames[10] = "November"; monthNames[11] = "Fooember"; return monthNames[i - 1]; } }
Haiku
New is much like birth.
Arrays, fertility drugs.
You’ll number those kids.
Arrays, fertility drugs.
You’ll number those kids.