pomoc pri zadani Karel

Programovacie jazyky, rady, poradňa...
patko9696
Novice
Novice
Príspevky: 1
Registrovaný: 10 dec 2013, 21:07

pomoc pri zadani Karel

Príspevok od používateľa patko9696 »

potrebujem kus pomoct neviem co v tom mam zle ...stale sa mi len toci na stiroch polickach a uklada beepre na seba
Robot Karel vyjde zo stredu sveta a presunie sa do pravého horného rohu po špirále. Prejdenú cestu (vytvorenú špirálu) označí robot Karel značkami.
Počiatočná situácia:

Karel sa nachádza v strede sveta. Svet neobsahuje žiadne steny.

Kód: Vybrať všetko

. . . . . . .
. . . . . . . 
. . . . . . .
. . . > . . .
. . . . . . . 
. . . . . . .
. . . . . . . 
Koncová situácia:

Karel sa nachádza po vykreslení špirály v pravom hornom rohu. Pokiaľ sa Karel pri vykresľovaní ocitne na konci sveta skôr, ako dosiahne pravý horný roh, prestane kresliť a presunie sa na koncovú polohu.

Kód: Vybrať všetko

. . . . . . ^
. . . . . . *
. . * * * . *
. . * * * . *
. . * . . . *
. . * * * * *
. . . . . . .

Kód: Vybrať všetko

#include<stdio.h>
#include<karel.h>

void turnRight()
{
turnLeft();
turnLeft();
turnLeft();
}

void turnEast()
{
while(notFacingEast())
 {
  turnLeft(); 
 }
}

void goToEnd()
{
turnEast();
while(frontIsClear())
 {
  movek();
 }
 turnLeft();
 while(frontIsClear())
 {
  movek();
 }
 turnEast();
}

int main()
{

int i,c;
c=1
putBeeper();
movek();
putBeeper();
turnLeft();
while(frontIsClear()&&leftIsClear())
{
  for(i=1;i==c;i++)
   {
    if(frontIsClear())
     {
      movek();
      putBeeper();
      c++;
     }
      
     else 
     {
      goToEnd(); 
     }
     turnLeft();
   }
}
turnRight();
return 0;
}
Napísať odpoveď