Mathematik online lernen im Mathe-Forum. Nachhilfe online
Startseite » Forum » Informatik? Hamstersimulator?

Informatik? Hamstersimulator?

Schüler Gymnasium, 11. Klassenstufe

Tags: Hamstersimulator, informatik

 
Antworten Neue Frage stellen Im Forum suchen
Neue Frage
Blubberblase

Blubberblase aktiv_icon

17:06 Uhr, 10.06.2008

Antworten
Hallo Leute!
Meine Frage ist zwar nicht mathematischer Natur, aber trotzdem hoffe ich, dass hier vielleicht irgendjemand Ahnung von Informatik und dem Hamstersimulator hat!
Unsere Aufgabe ist: schreibe eine Funktion, die genau dann den Wert true liefert, wenn genau eines der beiden Felder neben dem Hamster mit einer Mauer belegt ist.
Leider weiß ich nicht einmal, wie ich anfangen soll... :(
Es muss ja auf jeden Fall mit einer booleschen Funktion abgehandelt werden, Der Hamster muss ja erst überprüfen,, ob rechts oder links neben ihm eine Mauer ist! Was soll ich machen? Brauche dringend HILFE.
Vielen Dank im Voraus,
Blubberblase
Online-Nachhilfe in Mathematik
Antwort
MBler07

MBler07 aktiv_icon

17:15 Uhr, 10.06.2008

Antworten
Hi

da mir der "Hamstersimulator" nichts sagt, kann ich auch nichts mit deiner Aufgabe anfangen.
Welches Programm?
Was für Felder? Schachbrett? Koordinatensystem?
Bewegt sich der hamster oder ändern sich die Inhalte der Felder?

Und so weiter. Schreib noch mal ein paar mehr Informationen.

Prinzipiell: If ... then Abfrage

Oder einfach mal bei google nach hamstersimulator suchen...

Grüße
Blubberblase

Blubberblase aktiv_icon

17:20 Uhr, 10.06.2008

Antworten
Hallo,
Danke schonmal für deine Antwort...;)

Also den Hamstersimulator kann man sich im Internet kostenlos herunterladen.

Der Hamster bewegt sich sozusagen in einem Schachbrett.

Am besten ich schicke ein Bild mit!

Liebe Grüße

Eca03ec4888dd9e047b3deb498feed40
Antwort
MBler07

MBler07 aktiv_icon

17:49 Uhr, 10.06.2008

Antworten
Womit sich immer noch die Frage stellt, mit was ihr programmiert. Java? Wenn ja kann ich dir leider nicht mehr weiterhelfen. Mit dem Programm kenne ich mich überhaupt nicht aus.

Zu der Abfrage: Mit Feldern neben dem hamster sind die rechts und links ( Blickrichtung) von ihm gemeint?!
Dann stellt sich die Frage, ob man schon weiß, wo links und wo rechts ist. Ansonsten muss das erst noch definiert werden.

Blubberblase

Blubberblase aktiv_icon

17:53 Uhr, 10.06.2008

Antworten
Ja, der Hamstersimulator soll uns auf das Programmieren von Java vorbereiten...
Mit den Feldern links und rechts sind die beiden Felder neben dem Hamster gemeint, also links und rechts in Blickrichtung...Weiß nicht, wie ich das erklären soll ;)
Trotzdem danke, dass du mir helfen wolltest! Ich werde es weiterversuchen...
Lieben Gruß

Antwort
fluffyisreal

fluffyisreal aktiv_icon

15:08 Uhr, 02.12.2016

Antworten
Hier wäre meine lösung für das Problem -

void main() {
frei();
}

void rechtsUm() {
linksUm();
linksUm();
linksUm();
}

boolean rechtsFrei() {
rechtsUm();
if (vornFrei()) {
linksUm();
return true;
}
else {
linksUm();
return false;
}
}

boolean linksFrei() {
linksUm();
if (vornFrei()) {
rechtsUm();
return true;
}
else {
rechtsUm();
return false;
}
}

boolean frei() {
if (linksFrei() && !rechtsFrei()){
return true;
}
else{

if (!linksFrei() && rechtsFrei()){
return true;
}

else {
return false;
}
}
}

Hoffe konnte helfen (wenn du das noch ließt :-D)
Antwort
Roman-22

Roman-22

19:47 Uhr, 02.12.2016

Antworten
Wie hast du denn diesen Uralt-Thread ausgegraben? Ich vermute stark, dass das Interesse der Fragestellerin an einer Beantwortung dieser Frage nach mehr als acht Jahren schon deutlich geringer ist.
Ich vermute ferner, dass eine Funktion geschrieben werden sollte, die keine weiteren UPe (abgesehen von jenen, die von Haus aus verfügbar sind) aufruft und in sich abgeschlossen ist.
Unklar ist, ob Variable und Schleifen verwendet werden durften. Falls ja, wäre eine einfache und kurze Lösung zB wie folgt:

boolean leftXORright() {
int mauern=0;
for (int i=0; i<2; i++) {
linksUm();
if (vornFrei())
mauern++;
linksUm();
}
return (mauern==1);
}


Falls nicht, wirds etwas mühsamer - siehe Anhang.


Bild1
Bild2