Skip to content

Instantly share code, notes, and snippets.

@dested
Created June 30, 2015 07:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dested/ef7ed9ab0101481feb50 to your computer and use it in GitHub Desktop.
Save dested/ef7ed9ab0101481feb50 to your computer and use it in GitHub Desktop.
import java.io.*;
import java.util.*;
public class Names {
public static void main(String[] args) throws FileNotFoundException {
Scanner console = new Scanner(System.in);
Scanner input = new Scanner(new File("names.txt"));
String text = "";
intro();
menu(input, text, console);
}
public static void intro() {
System.out.println("This program allows you to search through the");
System.out.println("data from the Social Security Administration");
System.out.print("name popularity since 1900.");
}
public static void menu(Scanner input, String text, Scanner console) {
boolean done = false;
do {
switch (getMenuSelection()) {
case '1':
String nameInput = userInput(console);
testInput(input, text, nameInput);
break;
case '2': done = true;
break;
default: System.out.println("Invalid menu selection. Enter a value between 1 and 4...\n");
break;
}
} while( !done );
System.out.println("Aplication terminating.");
}
public static char getMenuSelection() {
Scanner console2 = new Scanner(System.in);
System.out.println( "\nEnter a number, 1.. 4:" );
System.out.println( "\t 1 - See histogram of name's popularity" );
System.out.println( "\t 2 - Exit program" );
return console2.next().charAt(0);
}
public static String userInput(Scanner console) {
System.out.print("What name: ");
String nameInput = console.nextLine();
System.out.println("Name: " + nameInput);
return nameInput;
}
public static void testInput(Scanner input, String text, String nameInput) {
while (input.hasNextLine()) {
text = input.nextLine();
processLine(text, nameInput);
}
}
public static void processLine(String text, String nameInput) {
Scanner data = new Scanner(text);
String name = data.next();
int popularity = 0;
while (data.hasNextInt()) {
if (name.equals(nameInput)) {
popularity = data.nextInt();
nameOutput(popularity);
} else {
break;
}
}
}
public static void nameOutput(int popularity) {
if (popularity == 0) {
System.out.print(" " + popularity + "-");
System.out.println();
} else if (popularity > 0 && popularity <= 9) {
System.out.print(" " + popularity + "-");
System.out.println("******************************************************************");
} else if (popularity > 9 && popularity <= 15) {
System.out.print(" " + popularity + "-");
System.out.println("******************************************************************");
} else if (popularity > 15 && popularity <= 30) {
System.out.print(" " + popularity + "-");
System.out.println("*****************************************************************");
} else if (popularity > 30 && popularity <= 45) {
System.out.print(" " + popularity + "-");
System.out.println("****************************************************************");
} else if (popularity > 45 && popularity <= 60) {
System.out.print(" " + popularity + "-");
System.out.println("***************************************************************");
} else if (popularity > 60 && popularity <= 75) {
System.out.print(" " + popularity + "-");
System.out.println("**************************************************************");
} else if (popularity > 75 && popularity <= 90) {
System.out.print(" " + popularity + "-");
System.out.println("*************************************************************");
} else if (popularity > 90 && popularity <= 99) {
System.out.print(" " + popularity + "-");
System.out.println("************************************************************");
} else if (popularity > 99 && popularity <= 105) {
System.out.print(popularity + "-");
System.out.println("************************************************************");
} else if (popularity > 105 && popularity <= 120) {
System.out.print(popularity + "-");
System.out.println("***********************************************************");
} else if (popularity > 120 && popularity <= 135) {
System.out.print(popularity + "-");
System.out.println("**********************************************************");
} else if (popularity > 135 && popularity <= 150) {
System.out.print(popularity + "-");
System.out.println("*********************************************************");
} else if (popularity > 150 && popularity <= 165) {
System.out.print(popularity + "-");
System.out.println("********************************************************");
} else if (popularity > 165 && popularity <= 180) {
System.out.print(popularity + "-");
System.out.println("*******************************************************");
} else if (popularity > 180 && popularity <= 195) {
System.out.print(popularity + "-");
System.out.println("******************************************************");
} else if (popularity > 195 && popularity <= 210) {
System.out.print(popularity + "-");
System.out.println("*****************************************************");
} else if (popularity > 210 && popularity <= 225) {
System.out.print(popularity + "-");
System.out.println("****************************************************");
} else if (popularity > 225 && popularity <= 240) {
System.out.print(popularity + "-");
System.out.println("***************************************************");
} else if (popularity > 240 && popularity <= 255) {
System.out.print(popularity + "-");
System.out.println("**************************************************");
} else if (popularity > 255 && popularity <= 270) {
System.out.print(popularity + "-");
System.out.println("*************************************************");
} else if (popularity > 270 && popularity <= 285) {
System.out.print(popularity + "-");
System.out.println("************************************************");
} else if (popularity > 285 && popularity <= 300) {
System.out.print(popularity + "-");
System.out.println("***********************************************");
} else if (popularity > 300 && popularity <= 315) {
System.out.print(popularity + "-");
System.out.println("**********************************************");
} else if (popularity > 315 && popularity <= 330) {
System.out.print(popularity + "-");
System.out.println("*********************************************");
} else if (popularity > 330 && popularity <= 345) {
System.out.print(popularity + "-");
System.out.println("********************************************");
} else if (popularity > 345 && popularity <= 360) {
System.out.print(popularity + "-");
System.out.println("*******************************************");
} else if (popularity > 360 && popularity <= 375) {
System.out.print(popularity + "-");
System.out.println("******************************************");
} else if (popularity > 375 && popularity <= 390) {
System.out.print(popularity + "-");
System.out.println("*****************************************");
} else if (popularity > 390 && popularity <= 405) {
System.out.print(popularity + "-");
System.out.println("****************************************");
} else if (popularity > 405 && popularity <= 420) {
System.out.print(popularity + "-");
System.out.println("***************************************");
} else if (popularity > 420 && popularity <= 435) {
System.out.print(popularity + "-");
System.out.println("**************************************");
} else if (popularity > 435 && popularity <= 450) {
System.out.print(popularity + "-");
System.out.println("*************************************");
} else if (popularity > 450 && popularity <= 465) {
System.out.print(popularity + "-");
System.out.println("************************************");
} else if (popularity > 465 && popularity <= 480) {
System.out.print(popularity + "-");
System.out.println("***********************************");
} else if (popularity > 480 && popularity <= 495) {
System.out.print(popularity + "-");
System.out.println("**********************************");
} else if (popularity > 495 && popularity <= 510) {
System.out.print(popularity + "-");
System.out.println("*********************************");
} else if (popularity > 510 && popularity <= 525) {
System.out.print(popularity + "-");
System.out.println("********************************");
} else if (popularity > 525 && popularity <= 540) {
System.out.print(popularity + "-");
System.out.println("*******************************");
} else if (popularity > 540 && popularity <= 555) {
System.out.print(popularity + "-");
System.out.println("******************************");
} else if (popularity > 555 && popularity <= 570) {
System.out.print(popularity + "-");
System.out.println("*****************************");
} else if (popularity > 570 && popularity <= 585) {
System.out.print(popularity + "-");
System.out.println("****************************");
} else if (popularity > 585 && popularity <= 600) {
System.out.print(popularity + "-");
System.out.println("***************************");
} else if (popularity > 600 && popularity <= 615) {
System.out.print(popularity + "-");
System.out.println("**************************");
} else if (popularity > 615 && popularity <= 630) {
System.out.print(popularity + "-");
System.out.println("*************************");
} else if (popularity > 630 && popularity <= 645) {
System.out.print(popularity + "-");
System.out.println("************************");
} else if (popularity > 645 && popularity <= 660) {
System.out.print(popularity + "-");
System.out.println("***********************");
} else if (popularity > 660 && popularity <= 675) {
System.out.print(popularity + "-");
System.out.println("**********************");
} else if (popularity > 675 && popularity <= 690) {
System.out.print(popularity + "-");
System.out.println("*********************");
} else if (popularity > 690 && popularity <= 705) {
System.out.print(popularity + "-");
System.out.println("********************");
} else if (popularity > 705 && popularity <= 720) {
System.out.print(popularity + "-");
System.out.println("*******************");
} else if (popularity > 720 && popularity <= 735) {
System.out.print(popularity + "-");
System.out.println("******************");
} else if (popularity > 735 && popularity <= 750) {
System.out.print(popularity + "-");
System.out.println("*****************");
} else if (popularity > 750 && popularity <= 765) {
System.out.print(popularity + "-");
System.out.println("****************");
} else if (popularity > 765 && popularity <= 780) {
System.out.print(popularity + "-");
System.out.println("***************");
} else if (popularity > 780 && popularity <= 795) {
System.out.print(popularity + "-");
System.out.println("**************");
} else if (popularity > 795 && popularity <= 810) {
System.out.print(popularity + "-");
System.out.println("*************");
} else if (popularity > 810 && popularity <= 825) {
System.out.print(popularity + "-");
System.out.println("************");
} else if (popularity > 825 && popularity <= 840) {
System.out.print(popularity + "-");
System.out.println("***********");
} else if (popularity > 840 && popularity <= 855) {
System.out.print(popularity + "-");
System.out.println("**********");
} else if (popularity > 855 && popularity <= 870) {
System.out.print(popularity + "-");
System.out.println("*********");
} else if (popularity > 870 && popularity <= 885) {
System.out.print(popularity + "-");
System.out.println("********");
} else if (popularity > 885 && popularity <= 900) {
System.out.print(popularity + "-");
System.out.println("*******");
} else if (popularity > 900 && popularity <= 915) {
System.out.print(popularity + "-");
System.out.println("******");
} else if (popularity > 915 && popularity <= 930) {
System.out.print(popularity + "-");
System.out.println("*****");
} else if (popularity > 930 && popularity <= 945) {
System.out.print(popularity + "-");
System.out.println("*****");
} else if (popularity > 945 && popularity <= 960) {
System.out.print(popularity + "-");
System.out.println("****");
} else if (popularity > 960 && popularity <= 975) {
System.out.print(popularity + "-");
System.out.println("***");
} else if (popularity > 975 && popularity <= 990) {
System.out.print(popularity + "-");
System.out.println("**");
} else if (popularity > 990 && popularity <= 1000) {
System.out.print(popularity + "-");
System.out.println("*");
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment