2016-12-12 4 views
1

Ich habe eine Menge Probleme mit den if und else-Anweisungen in Java. Ich folge this basic tutorial, aber ich benutze Eclipse, da NetBeans mit TMC nicht für mich funktioniert.Haben viele Probleme mit den If und Else-Anweisungen

Was ich versuche zu tun ist Übung 15, die fragt, wie alt du bist, und wenn du über 17 Jahre alt bist, bist du volljährig, und wenn du 17 oder jünger bist, bist du nicht . Hier

ist das Programm, das ich gerade geschrieben haben:

import java.util.Scanner; 

public class ifelse { 
    public static void main (String args[]){ 
    Scanner reader = new Scanner(System.in); 
    System.out.println("Enter your age: "); 
    int num1 = 100; 
    int num3 = 17; 
    int num2 = Integer.parseInt(reader.nextLine()); 
    boolean isGreater = num1 > num3; 
    boolean isLesser = num1 < num3; 

    if (isLesser) { 
     System.out.println("You have not reached the age of majority yet!"); 
    } 

    if (isGreater) { 
     System.out.println("You have reached the age of majority!"); 
    } else { 
     System.out.println("You have not reached the age of majority yet!"); 
    } 
    } 
} 

Ich war zu verwirren versucht, um mit booleans und andere nummerierte int s usw., aber ich konnte es nicht zur Arbeit kommen. Zurzeit kann ich das Programm ausführen, aber was immer ich tippe, endet damit, dass Sie das Alter der Volljährigkeit erreicht haben.

habe ich die boolean isLesser und verwenden es in der if Aussage dachte, dass es helfen würde, aber es scheint, die erste if Aussage oder etwas zu übersehen.

Ich schaute auf die ähnlichen Fragen und diejenigen, die meine Antwort haben können, aber keiner von ihnen hat genau das gleiche Problem wie ich.

+0

Sie scheinen auch ein Problem zu haben, Java und JavaScript zu unterscheiden. – Xufox

+0

yeah Ich bin neu in Programmierung und Programmierung etc Ich habe vor ein paar Tagen angefangen, aber ich bin sehr daran interessiert, tut mir leid: P –

+0

Ihr aktueller Code vergleicht nur num1 und num3, die Sie in hartcoded haben irgendetwas in Bezug auf num2, das Sie für die Eingabe verwenden. – Eric

Antwort

0

Versuchen Sie, an alle Bedingungen zu denken, die erfüllt sein könnten, bevor Sie Ihre if-Anweisungen codieren. In diesem Fall gibt es 3 ...

if (num2 < num3) 
{ 
    //less than the age of majority 
} 
else if (num 2 > num3) 
{ 
    //greater than the age of majority 
} 
else if (num2 == num3) 
{ 
    //less than the age of majority 
} 

Alternativ könnten wir dies viel einfacher machen:

if (num2 > num3) 
{ 
    // greater than the age of majority 
} 
else 
{ 
    // less than the age of majority 
} 
+0

Ja, ich habe nicht wirklich über andere, wenn Aussagen noch gelernt –

+0

Was passiert, wenn ich 17 eingeben? – Eric

+0

Wenn Sie 17 eingeben, sollten Sie nicht das Alter der Mehrheit sein, zumindest in meiner Codierung. Ich bin mir nicht sicher, ob Sie das als eine rhetorische Frage oder eine legitime Frage meinten –