Level 2.3.2 - findTeddyBear | Karel Programmierung

preview_player
Показать описание
Kleine Info zu der am Ende erwähnten Umfrage, habe nach einer kurzen Recherche herausgefunden, die Abstimmungsmöglichkeit wurde seitens YouTube abgeschafft.
Daher schreibt einfach einen Kommentar mit eurer Meinung zur neuen Aufnahme (Bildausschnitt und Audioqualität).

Vielen Dank für die kostenlose Bereitstellung des Programms :D

00:00 Intro
00:44 2.3.2 findTeddyBear - erster Versuch
04:42 2.3.2 findTeddyBear - neuer Code
06:08 2.3.2 findTeddyBear - Erläuterung
07:28 Schlussworte
08:44 Outro

Danke für die Inspiration @NiklasSteenfatt
Рекомендации по теме
Комментарии
Автор

8:04 Diese Abstimmungsfunktion hat YouTube gelöscht. Muss über einen externen Link gemacht werden.

CalamityFreddi
Автор

Habs genau so. Ist vermutlich der beste Code :D

CalamityFreddi
Автор

Meine Lösung ist so.
Wirkt etwas einfacher

void findTeddyBear()
{while (!beeperAhead())

{if (frontIsClear())
{moveForward();}
else {
turnLeft();}

}moveForward();}

Finde es gut, dass du die diese Videos machst. Bei AddSlow bin ich verzweifelt.

Hans_Bauer
Автор

Kannst du bitte 3.1.1 partyAgain machen, danke

liamhenn
Автор

Hallo Christian,
anbei meine Lösung, da auch Karel in der unteren linken Ecke nach links schauend starten kann (wurde über Goal vorgegeben.

void findTeddyBear()
{

{
findBear();
}
}
void findBear()
{
if(!leftIsClear())
{
turnAround();
}

{
moveForward();
}
if(!frontIsClear())
{
turnLeft();
}
}

tirolrider
Автор

Hm, vielleicht etwas eleganter als meine 75 Zeilen Code :D

ericschobel
Автор

Ich hab's so gelöst, da Karel auch mal vor die Wand läuft u.ä.

void findTeddyBear()
{
while (frontIsClear() && !onBeeper()) {
moveForward();
while (!frontIsClear()) {
turnLeft();
}
}
}

MegaAngelx
Автор

Ich habs auch so gelöst:

void findTeddyBear()
{
while (!onBeeper()){
if (frontIsClear()){
moveForward();
}
else if (!frontIsClear()){
turnLeft();
}
}
}

Bleifrosch
Автор

void findTeddyBear()
{
while(frontIsClear() && !onBeeper())
{
moveForward();
if(!frontIsClear())
{
turnLeft();
}
}
}
f

fined das sieht am elegantesten aus

thore
Автор

Meine Lösung:

void findTeddyBear()
{while(!onBeeper()){
moveForward();
if(!frontIsClear()){
turnLeft();
}}}

PEXEntertainment
Автор

void findTeddyBear(){
if (!onBeeper()) {
teddySuchen();
findTeddyBear();
}



}

void teddySuchen() {
if (frontIsClear()) {
moveForward();
}
else
{
turnLeft();
}

}

vll nicht so optimiert, dafür funktionierts immer ;)

saikimtb
Автор

nicht so elegant, habs mir irgendwie zu kompliziert gedacht.
//2.3.2
void findTeddyBear(){
while(!onBeeper()){
if(!beeperAhead() && (frontIsClear())){
moveForward();
}
else{
moveForward();
}
if(!frontIsClear() && (rightIsClear() && (!onBeeper()))){
turnRight();
}
}
}

sbwjvnx