Java Java Basics Perfecting the Prototype Parsing Integers

Harrison Cassedy
Harrison Cassedy
Java Web Development Techdegree Graduate 12,031 Points

regardless of the age input of the user the code will not let me get passed the age portion.

Code: import java.io.Console;

public class TreeStory {

public static void main(String[] args) {
    Console console = System.console();
    /*  Some terms:
        noun - Person, place or thing
        verb - An action
        adjective - A description used to modify or describe a noun
        Enter your amazing code here!
    */
  // __Name__is a __adjective__ __noun__. They are always __adverb__verb__
String ageAsString = console.readLine("How old are you?");
 int age = Integer.parseInt(ageAsString);
 if (age < 13); {
   //Insert exit code
   console.printf("Sorry you must be atleast 13 to use this program./n");
   System.exit(0);
 }
 String name = console.readLine("Enter a name:  ");
 String adjective = console.readLine("Enter and adjective:  ");
 String noun = console.readLine("Enter a noun:  ");
 String adverb = console.readLine("Enter an adver:  ");
 String verb = console.readLine("Enter a verb:  ");

  console.printf("Your TreeStory:\n------------\n");
  console.printf("%s is a %s %s.  ", name, adjective, noun);
  console.printf("They are always %s %s.\n", adverb, verb);

}

}

Message:

treehouse:~/workspace$ javac TreeStory.java && java TreeStory
Picked up JAVA_TOOL_OPTIONS: -Xmx128m
Picked up _JAVA_OPTIONS: -Xmx128m
Picked up JAVA_TOOL_OPTIONS: -Xmx128m
Picked up _JAVA_OPTIONS: -Xmx128m
How old are you? 20
Sorry you must be atleast 13 to use this program./n

3 Answers

Mustafa Alordowny
Mustafa Alordowny
4,493 Points

the problem is on this line

if (age < 13); { there shouldn't be a semicolon after the if statement closing bracket

should be like this if (age < 13) {

Kurt Daisley
PRO
Kurt Daisley
Pro Student 3,724 Points

I also notice that on this line:

console.printf("Sorry you must be atleast 13 to use this program./n");

you're using the wrong slash. On the Windows keyboard, it's right above the ENTER key. (Incidentally, I tried running this code with the wrong slash, and it still compiled and executed. So maybe the compiler ignores it. Not sure.)

Jon Prosser
Jon Prosser
3,283 Points

I have same problem can anyone see where I am going wrong?

import java.io.Console;

public class TreeStory {

public static void main(String[] args) {
    Console console = System.console();

    String ageAsString = console.readLine("How old are you? ");

    int age = Integer.parseInt(ageAsString);
    if (age <13) {    
    console.printf("Sorry you must be at least 13 to use this program.\n");
       System.exit(0);

String name = console.readLine("Enter a name: "); String adjective = console.readLine("Enter an adjective: "); String noun = console.readLine("Enter a noun: "); String adverb = console.readLine("Enter an adjective: "); String verb = console.readLine("Enter a verb ending in -ing: ");

    console.printf("Your TreeStory:\n--------------\n");
    console.printf("%s is a %s %s   ", name, adjective, noun);
    console.printf("They are always %s %s.\n", adverb,verb);
}}

}