glam Geschrieben 5. Dezember 2010 Geschrieben 5. Dezember 2010 (bearbeitet) Wir haben im Unterricht vor kurzem mit bluej angefangen und ich komm nicht ganz klar damit. Wir sollen die Klasse BRUCH erstellen, u.a. mit der Methode umkehren. Was mache ich falsch? (wenn ich auf compile klicke, wird die Zeile temp=zähler; makiert) public class BRUCH { protected int zähler; protected int nenner; public BRUCH (){ int a = zähler; int b = nenner; } public int umkehren (){ temp=zähler; zähler=nenner; nenner=temp; } } Danke für jede Hilfe! Bearbeitet 5. Dezember 2010 von flashpixx Code-Tags Zitieren
abi2010 Geschrieben 5. Dezember 2010 Geschrieben 5. Dezember 2010 N'abend, hast Du vllt. vergessen die Variable "temp" zu deklarieren? Zudem solltest du bei deiner Methode "tauschen" Parameter haben, damit Du Zahlen zum Tauschen übergeben kannst. Genau das gleiche beim Konstruktor. Deine tauschen-methode sollte somit folgendermaßen lauten: public void Tauschen(int a, int { int temp = a; a = b; b = a; }[/code] gruß abi2010 Zitieren
glam Geschrieben 5. Dezember 2010 Autor Geschrieben 5. Dezember 2010 Danke schonmal! Ich hab jetzt die von dir genannte Methode eingefügt und es kommt schonmal keine Fehlermeldung was bedeutet deklarieren? Muss ich noch irgendwie kennzeichnen, dass a der Zähler ist und b der Nenner? Wenn ja, wie? :confused: Zitieren
glam Geschrieben 5. Dezember 2010 Autor Geschrieben 5. Dezember 2010 (bearbeitet) Habe jetzt nochmal versucht, das ganze zu verbessern. public class BRUCH { protected int zähler; protected int nenner; protected int temp; public BRUCH (int a,int { zähler=a; nenner=b; } public void Tauschen(int a, int { int temp = a; a = b; b = a; } } [/code] Stimmt das so? Meine Problem jetzt: Wie kann ich die Methode ausführen? Also zunächst a und b Zahlenwerte zuordnen, dann wenn ich ein neues Objekt der Klasse Bruch erstelle und dann auf void tauschen klicke, kommen nur zwei Eingabefelder. Bearbeitet 5. Dezember 2010 von flashpixx Code-Tags Zitieren
flashpixx Geschrieben 5. Dezember 2010 Geschrieben 5. Dezember 2010 Verwende bitte die Code-Tags, ich habe sie nachträglich eingefügt. Zu Deinem Code: Ich würde Dir raten Variablen ohne Umlaute zu verwenden. Zitieren
glam Geschrieben 5. Dezember 2010 Autor Geschrieben 5. Dezember 2010 Werde ich das nächste mal machen. Also zaehler statt zähler. Unser Lehrer meinte, dass sei ok. Wie kann ich a und b Zahlenwerte zuordnen? Zitieren
lupo49 Geschrieben 6. Dezember 2010 Geschrieben 6. Dezember 2010 Wie kann ich a und b Zahlenwerte zuordnen? Einfach anstelle der Variablen eine Zahl schreiben. int temp = 10; Zitieren
Der_Lampe Geschrieben 6. Dezember 2010 Geschrieben 6. Dezember 2010 ... int temp = a; a = b; b = a; ... bin ich der einzige der merkt, dass so niemals a und b vertauscht werden? mit diesem Code tauschst du nicht a und b sondern setzt a wie auch b auf den Wert von a. wenn dann solltest du schreiben: int temp = a; a = b; b = temp; so findet dann auch wirklich der Tausch statt. Zitieren
abi2010 Geschrieben 6. Dezember 2010 Geschrieben 6. Dezember 2010 bin ich der einzige der merkt, dass so niemals a und b vertauscht werden? mit diesem Code tauschst du nicht a und b sondern setzt a wie auch b auf den Wert von a. wenn dann solltest du schreiben: Code: so findet dann auch wirklich der Tausch statt. stimmt...die eile immer :-D Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.