Java Java Basics Perfecting the Prototype Parsing Integers

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,062 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
2,882 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);
}}

}