Hallo zusammen.
Ich soll für eine Übung ein Java Hamster Programm schreiben, welches Dualzahlen addiert.
Ein Korn repräsentiert eine 1, kein Korn dementsprechend eine 0.
Die Umgebung soll mind. drei Zeilen haben: Zwei für die Eingabezahlen und eine für die Ausgabezahl.
Das Programm funktioniert soweit gut, allerdings gelingt es mir nicht eine Methode zu schreiben, die den Übertrag als returnValue in die mainfunktion zurückgibt.
Habe den Teil zwischen den Trennlinien einfach kopiert und x mal eingefügt. Damit läuft das Programm zwar, aber wirklich zufrieden bin ich damit nicht.
Ich möchte eigentlich eine Methode (rechner()) einfügen, die mir den Uebertrag (ueber) als ruturnValue zurückgibt. Dieser Wert soll dann wieder in die Methode (rechner()) usw.
Muss ich ueber in der main und rechner Methode definieren bzw. wie ?
Sitz jetzt schon 2 Stunden dran und würde mich sehr über Tipps und Anregungen freuen.
Danke im vorraus.
Dave
Ich soll für eine Übung ein Java Hamster Programm schreiben, welches Dualzahlen addiert.
Ein Korn repräsentiert eine 1, kein Korn dementsprechend eine 0.
Die Umgebung soll mind. drei Zeilen haben: Zwei für die Eingabezahlen und eine für die Ausgabezahl.
Das Programm funktioniert soweit gut, allerdings gelingt es mir nicht eine Methode zu schreiben, die den Übertrag als returnValue in die mainfunktion zurückgibt.
Java:
//hamster startet oben rechts mit Blick nach unten.
void main() {
int i = 0;
int ueber = 0;
int rest = 0;
//----------------------------------------//
i = ueber;
ueber = 0;
rest = 0;
if(kornDa()) i++;
vor();
if(kornDa()) i++;
vor();
if(kornDa()) i++;
vor();
if(kornDa()) i++;
vor();
ueber = i / 2;
rest = i % 2;
if (rest == 1) gib();
moveback(); // Bringt Hamster wieder in Zeile Eins, eine Spalte weiter links
//--------------------------------------//
Habe den Teil zwischen den Trennlinien einfach kopiert und x mal eingefügt. Damit läuft das Programm zwar, aber wirklich zufrieden bin ich damit nicht.
Ich möchte eigentlich eine Methode (rechner()) einfügen, die mir den Uebertrag (ueber) als ruturnValue zurückgibt. Dieser Wert soll dann wieder in die Methode (rechner()) usw.
Java:
public int rechner() {
int i = 0;
int rest = 0;
i = ueber;
if(kornDa()) i++;
vor();
if(kornDa()) i++;
vor();
if(kornDa()) i++;
vor();
if(kornDa()) i++;
vor();
ueber = i / 2;
rest = i % 2;
if (rest == 1) gib();
return ueber;
}
um dann einfach sagen zu können:
void main() {
int ueber;
while (sonstwas) {
rechner();
moveback();
}
Sitz jetzt schon 2 Stunden dran und würde mich sehr über Tipps und Anregungen freuen.
Danke im vorraus.
Dave
Zuletzt bearbeitet von einem Moderator: