# Java Verzweigungen, finde den fehler nicht.



## Simon100 (3. Dez 2011)

Guten Tag,

das Theama ist Verzweigungen

habe hier eine Aufgabe vor mir liegen die lautet zusammengefasst, das ich übereine Eingabeaufforderung zwei ganze Zahlen einlesen muss und sie multiplizieren muss.

Das Ergebniss muss ich dann ausgeben aber wenn das Ergebniss größer als 100 ist muss ich das Egbeniss um 100 subtrahieren und dann ausgeben.



Habe da paar fehler und bin mir nicht sicher ob ich die if Bedingung richtig hingeschrieben habe.

Ich hoffe ihr könnt mir weiter helfen.

[JAVA=1]

import java.io.*;

class Verzweigung1  {

public static void main (String args[]) throws IOException  {

//Variablen

int a,b,c,d;

InputStreamReader in = new InputStreamReader(System.in);
	BufferedReader br = new BufferedReader(in);

//Umwandlung

 	System.out.print("a:");
	 a = Intger.parseInt(br.readLine()) ;

	 	System.out.print("b:");
	 b = Intger.parseInt(br.readLine()) ;

//Rechenschritt

c = a * b;

//Bedingung

if ( c > 100 ) {
d = c - 100;
}

System.out.println("Das Egebniss ist kleiner als 100 und lautet" + c );
	 System.out.println("Das Egebniss ist größer als 100 und daher wird 100 subtrahiert und lautet dann" + d );

	  System.exit(0) ;	 
	   }
	 }
[/code]


lg Simon


----------



## Fab1 (3. Dez 2011)

Hi Simon,

im Großen und Ganzen sieht das schon ganz gut aus, ich hab aber trotzdem mal ein paar Teile abgeändert.

Die If-Anweisung war zwar richtig (Syntax), aber von der Logik für die Ausgabe verkehrt. Schau es dir einfach mal an.

Außerdem hast du beim Parsen einen Fehler gemacht in der Syntax, den hab ich jetzt auch mal abgeändert.

Ich hab anstatt der 2 Variablen c und d lieber eine Variable ergebnis genommen. Ich würde dir raten, deine Variablen besser zu benennen, am Anfang hat man zwar noch den Überblick, aber später...

Sollte nun soweit funktionieren.


```
import java.io.*;

public class Test{
    
 
    public static void main(String args[]) throws NumberFormatException, IOException {
     
    //Variablen
     
    int a,b;
    
    int ergebnis;
     
    InputStreamReader in = new InputStreamReader(System.in);
        BufferedReader br = new BufferedReader(in);
     
    //Umwandlung
     
        System.out.print("a:");
         a = Integer.parseInt(br.readLine()) ;
         
            System.out.print("b:");
         b = Integer.parseInt(br.readLine()) ;
         
    //Rechenschritt
     
         ergebnis = a * b;
     
    //Bedingung
     
    if ( ergebnis < 100 ) {
    
    System.out.println("Das Egebniss ist kleiner als 100 und lautet: " + ergebnis );
    }else{
    	ergebnis = ergebnis - 100;
    System.out.println("Das Egebniss ist größer als 100 und daher wird 100 subtrahiert und lautet dann: " + ergebnis );
    }
     
          System.exit(0) ;   
           }
         }
```


----------



## Simon100 (3. Dez 2011)

ah super danke ! mir sind paar sachen hinterher auch noch aufgefallen.

muss jetzt sowas änliches machen,  ich muss eine zahl einlesen und  wenn die zahl 1-4 ist sollen unterschliedliche farben ausgegeben werden (also der name der farbe)  und alles was größer ist soll als weiß ausgegeben werden.

Werde das später auch mal posten wenn ein fehler drinn ist dann kannst du vielleicht auch noch mal rübergucken


----------



## Fab1 (3. Dez 2011)

Ach das schaffst du schon, hat man das einmal kapiert, dann flutscht es :toll:


----------



## Simon100 (3. Dez 2011)

Ist ja an sich fast immer das gleiche schema. Müsste klappen, komme aber erst morgen dazu '=)


----------

