Problem mit Java Hamster

Guten Tag,
seit einigen Monaten habe ich das Fach Informatik in der Schule. Heute haben wir folgende Hausaufgabe bekommen, mit der überhaupt nicht zurecht komme:

  1. deklariere die Variabel „c“
    c bekommt die Summe aus a+b.
    gib c zurück.

  2. Der Rumpf (int) (ausgeben) bleibt gleich.
    gib die größere der beiden Zahlen zurück.
    Wenn beide gleich sind irgendeine zurückgeben.

______________
Außerdem hat uns unser Lehrer folgendes gegeben, was bei mir ebenfalls nicht funktioniert. Immer kommt eine Fehlermeldung:

int zusammenrechnen (int a, int b){
return a+b;
}

Fehlermeldungen:
‚;‘ expected int zusammenrechnen (int a, int b){
expected int zusammenrechnen (int a, int b){
not a statement int zusammenrechnen (int a, int b){
‚;‘ expected int zusammenrechnen (int a, int b){
___________

Ich wäre sehr erfreut darüber, wenn mir einer etwas zu meinem Problem sagen könnte!

Ein schönes Wochenende
Gruß Nik

Es wäre hilfreich, wenn Du Deinen kompletten Sourcecode postest. Also inklusive Main-Methode mit dem Aufruf von zusammenrechnen(int,int) und Klassenrumpf.

Die Methode

int zusammenrechnen (int a, int b){
 return a+b;
}

ist ansonsten ohne Fehler.

Hallo,
ich habe leider überhaupt keine Ahnung davon, unser Leher hat uns einfach nur diese methode gegeben und uns danach die Aufgaben gestellt.
Das addieren von irgendwelchen zahlen hatten wir vorher noch nicht…

Gruß Nik

Hallo,
ich habe leider überhaupt keine Ahnung davon, unser Leher hat
uns einfach nur diese methode gegeben und uns danach die
Aufgaben gestellt.
Das addieren von irgendwelchen zahlen hatten wir vorher noch
nicht…

Das problem ist, daß Du vermutlich nicht weißt, wie Du die Methode benutzen sollst. Löse Dich vom prozeduralen Denken:

Class Testgewinsel {
 public static void main (String[] args) {
 //mainmethode, die wird angestoßen, wenn das Programm gestartet wird.
 int a = 4;
 int b = 6;
 int c = this.addieren(a, b); //aufruf der unten beschriebenen 
 //methode addieren
 System.out.println("Ergebnis: " + c);
 } 

 int addieren (int bla, int blubb) {
 return bla + blubb;
 }
 //die mehtode addieren wird von allein nicht aufgerufen...nur dort,
 //wo sie an anderer stelle referenziert wird, in diesem fall in der 
 //main methode 
}

Hi Lorgarn,

ein weiteres Problem dürfte sein, das selbst dein Beispiel kein legales Java ist. Ich hab das mal etwas korrigiert:

class Testgewinsel {
 public static void main (String[] args) {

 int a = 4;
 int b = 6;

 Testgewinsel instance = new Testgewinsel();

 int c = instance.addieren(a, b);
 System.out.println("Ergebnis: " + c);
 } 

 int addieren (int bla, int blubb) {
 return bla + blubb;
 }
 }

Gruss
norsemanna

Vielen dank erstmal,
aber da wir noch nichts mit „class“ hatten, versteh ich immer noch nicht worum es geht…
Wo muss man das genau einfügen? In den void main Block?

viele liebe Grüße Nik

Also, hab es jetzt geschafft, dass di Kompilierung erfolgreich ist.
wenn ich aber auf abspielen drücke, steht nirgendwo etwas…
muss ich noch etwas in den void-main-block schreiben?

vlg nik

Hi Nik,

obiges Beispiel ist richtiges Java. In JH musst du so vorgehen

  1. Neues Projekt, imperatives Programm

  2. Dann wird dort main vorgeben

  3. Alles ersetzen durch

    void main () {

    int a = 4;
    int b = 6;

    int c = addieren(a, b);
    System.out.println("Ergebnis: " + c);
    }

    int addieren (int bla, int blubb) {
    return bla + blubb;
    }

  4. Compilieren

  5. Debugger / Ausfuehren

Gruss
norsemanna

Vielen, vielen Dank… ich hab es endlich verstanden!!
DANKESCHÖN

Ein wunderschönes Wochenende
Euer Nik :smile:

Hi Lorgarn,

ein weiteres Problem dürfte sein, das selbst dein Beispiel
kein legales Java ist. Ich hab das mal etwas korrigiert:

Du hat völlig recht, ich habe kein Objekt der Klasse erstellt. Ich danke für die Verbesserung.