Oryginalna strona colobot.cba.pl umarła, gdy cba.pl przestało oferować darmowy hosting. To jest statyczny mirror, pobrany w 2018. ~krzys_h
|
Forum - Polski Portal COLOBOTa |
|
|
Zagwostka |
Autor |
Wiadomość |
Gasparzinho
Dołączył: 15 Lut 2010 Posty: 4 Skąd: Rumia, 3City
|
Wysłany: 17-02-2010, 18:16 Zagwostka
|
|
|
W ramach przypomnienia sobie języka CBot ,postanowiłem przejść sobie całą grę, ćwiczenia, wyzwania itd. No i narodził się pewien problem - napisałem program:
Cytat: | extern void object::Informacje()
{
float dir, len;
while ( true );
{ dir = receive("DIRECTION");
if ( dir == nan ) break;
len = recieve("LENGHT");
if ( len == nan ) break;
turn (dir);
move (len);
}
} |
Ale przy kompilowaniu pisze "Polecenie break na zewnątrz pętli". Pokombinowałem - nic...
Zajrzałem do rozwiązania ,a tam:
Cytat: | extern void object::Rozwi¹zanie( )
{
float dir, len;
while ( true )
{
dir = receive("Direction");
if ( dir == nan ) break;
len = receive("Length");
if ( len == nan ) break;
turn(dir);
move(len);
}
}
|
Jak dostrzegłem, programy się niczym nie różnią ,a ten pod nazwą Rozwiązanie działa... Ktoś mi podpowie ,czy błąd jest w programie czy grze?
Z góry dziękuję i pozdrawiam |
|
|
|
|
FE4R
Twoja ulubiona misja: Saari - Inwazja
Pomógł: 4 razy Wiek: 24 Dołączył: 21 Paź 2009 Posty: 144
|
Wysłany: 17-02-2010, 18:32
|
|
|
Może umieść break; w nawiasie klamrowym po if. |
|
|
|
|
adiblol
Administrator forum FLOSS FTW!
Twoja ulubiona misja: porównywanie formatów audio
Pomógł: 18 razy Dołączył: 21 Kwi 2008 Posty: 1313 Skąd: pokój odsłuchowy
|
|
|
|
|
Gasparzinho
Dołączył: 15 Lut 2010 Posty: 4 Skąd: Rumia, 3City
|
Wysłany: 17-02-2010, 21:47
|
|
|
adiblol napisał/a: | @up: nie;
@topic: nie dawaj średnika po while(true) |
Faktycznie, dziękuję.
Program się już skompilował, jednak po otrzymaniu informacji robot nic nie robi i program się wyłącza...
O, sam znalazłem ! Kolejna literówka - pisałem "Lenght" zamiast "Length"
Taki prosty program, a się namęczyłem |
|
|
|
|
:}
Gość
|
Wysłany: 25-02-2010, 21:42 eureka!
|
|
|
chyba wiem w czym problem
gdy taka wartos nie istnieje nie jest =nan, tylko Not a number a jak chcesz sprawdzic czy istnieje to zrob tak:
bool a;
a=testinfo("Lenghto")
if(a=false)//jesli istnieje to true
{
break;
}
pisalem od renki wienc sprawdz czy nie ma literowek |
|
|
|
|
bbiidduull
Dołączył: 09 Lut 2009 Posty: 140
|
Wysłany: 21-03-2010, 14:13
|
|
|
Są literówki.... renki, wienc, Lenghto... trudno skopiować i wkleić ?
ręki więc Length |
|
|
|
|
kolas
Dołączył: 13 Mar 2010 Posty: 8
|
Wysłany: 22-03-2010, 17:34
|
|
|
Ja też raz w swobodnej grze się męczyłem, dlaczego robot mi nie wykonuje programu kilka razy, a tu się okazało, że dałem średnik po while |
|
|
|
|
bbiidduull
Dołączył: 09 Lut 2009 Posty: 140
|
Wysłany: 22-03-2010, 17:48
|
|
|
A ja poległem na złym wpisaniem Length |
|
|
|
|
|
|
| |
|
|
|
|
Polski Portal COLOBOTa © 2008 - 2012 |
|
|