Prozeduren

TPKey

Mitglied
Hallo :)

Bezüglich meines Studiums bin ich dabei, mich näher mit der Java-Programmierung zu beschäftigen.
Nun stellt sich mir das Problem der Strukturierung des Programms.
So möchte ich jegliche Rechenoperationen in separate Prozeduren gliedern, allerdings funktioniert das bei mir nicht so. :D

Über Eure Hilfe bin ich sehr dankbar.



Java:
public static void main (String[]args) {
        int z1= Integer.parseInt(args[1]);
        int n1= Integer.parseInt(args[2]);
        int z2= Integer.parseInt(args[3]);
        int n2= Integer.parseInt(args[4]);


        if(args[2].equals("0") || args[4].equals("0")){
                        System.out.println("Division durch 0 nicht
möglich!");
        }

        else{
            if(args[0].equals("add")){
                int neuZ=(z1*n2)+(z2*n1);
                int neuN=n1*n2;
                System.out.println(neuZ + "/" + neuN);
            }

            else{
                if(args[0].equals("sub")){
                    int neuZ=(z1*n2)-(z2*n1);
                    int neuN=n1*n2;
                    System.out.println(neuZ + "/" + neuN);
                }



                    else{
                        if(args[0].equals("mul")){
                            int neuZ = z1*z2;
                            int neuN = n1*n2;
                            System.out.println(neuZ + "/" + neuN);
                        }

                        else{
                            if(args[1].equals("0") ||
args[2].equals("0") || args [3].equals("0") || args[4].equals("0")){
                                System.out.println("Fehler");
                            }

                            else{
                                if(args[0].equals("div")){
                                    int neuZ = z1*n2;
                                    int neuN = n1*z2;
                                    System.out.println(neuZ + "/" +
neuN);
                                }
                                else{
                                    System.out.println("Fehler");
                                }
                            }
                        }
                    }

            }
        }
    }
}
 

TPKey

Mitglied
Ich bräuchte Hilfe bei der Ausgliederung der Rechenoperationen in einzelne Prozeduren und dessen Einbindung in die Main-Methode.

Meine bisherige Prozedur war

Java:
static void addition(int z1, int n1, int z2, int n2){

   int neuZ=(z1*n2)+(z2*n1);
   int neuN=n1*n2;
   return int neuZ;
   return int neuN;
}
 

Robat

Top Contributor
1) Wenn deine Methode einen return-Wert haben soll musst du auch einen angeben (void bedeutet ohne Rückgabewert)
2) Man kann nur ein was zurück geben. Wenn du mehrere Zahlen zurückgeben willst musst du eine geeignete Struktur nutzen (Array, Collection, eigene Datenstruktur)
 

Robat

Top Contributor
Beispielsweise so.

Java:
public static void main(String args[]) {
     addition(5,10);
}

private static void addition(int a, int b) {
      // Berechnung
      // Ausgabe
}
 

TPKey

Mitglied
Bei folgendem code
Java:
class Bruch {
    public static void main (String[]args) {
        int z1= Integer.parseInt(args[1]);
        int n1= Integer.parseInt(args[2]);
        int z2= Integer.parseInt(args[3]);
        int n2= Integer.parseInt(args[4]);

        if(args[2].equals("0") || args[4].equals("0")){
                        System.out.println("Division durch 0 nicht möglich!");
        }
            else{
                if(args[0].equals("add")){
                addition( z1, n1, z2, n2);
           
                }
            }
    }       
     static void addition( int z1, int n1, int z2, int n2){
       
        int neuZ=(z1*n2)+(z2*n1);
        int neuN=n1*n2;
        System.out.println(neuZ+ " / "+ neuN);
       
    }
}

kommt als Ausgabe nur "Willkommen im World Wide Web!"
 

Robat

Top Contributor
Und wo kommt die Ausgabe her? Der Code passt nicht zu der Ausgabe...
Übergibst du denn überhaupt Parameter wenn du das Programm ausführst?

Kommen Fehlermeldungen?
 

TPKey

Mitglied
C:\Users\Benutzer\Java>java Kurz add 2 4 2 4
Willkommen im World Wide Web!
damit wird es ausgeführt und es gibt keine Fehlermeldungen aus
 

Robat

Top Contributor
Dennoch ist in deinem, hier geposteten, Code keine Zeile zu sehen wo du das Literal "Willkommen im World Wide Web!" ausgibst.
Sicher dass du das aktuelle Programm ausführst?
 

Ähnliche Java Themen

Neue Themen


Oben