• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
pętla while
#1
Cześć, mam problem z wyjściem z pętli while:

Kod:
else if (bt == 's'){ //stop
digitalWrite(outPin,LOW);
digitalWrite(outPin2,LOW);
digitalWrite(outPin3,LOW);
digitalWrite(outPin4,LOW);
}

while (bt == 'z') // automatyczny
{
scan();

fDistance = distance;

if(fDistance < triggerDistance){

moveBackward();

delay(1000);
moveRight();

delay(500);
moveStop();

scan();

rDistance = distance;

moveLeft();
delay(1000);

moveStop();

scan();

lDistance = distance;

if(lDistance < rDistance){

moveRight();

delay(200);
moveForward();

}
else{
moveForward();

}
}
else{
moveForward();

}
}
przy zmianie while na if w ogóle nie działa pętla, też nie działa ten sposób:

if(bt=z){
while(bt=z){
.
.
.
}}
ma ktoś jakiś pomysł jak wyjść z pętli?
 
Odpowiedź
#2
Kod:
if(bt=z){
while(bt=z){
nie tak tylko
Kod:
if(bt==z){
while(bt=z){
b nie będzie działał

po drugie ty w while porównujesz literę 'z'
a w if wpisujesz z z tablicy asci czyli zmienna int.
W rezultacie otrzymujesz jesli 'z'==122 ten warunek się nie spełni.
[Obrazek: banerelektronika.jpg]



Jeśli pomogłem podziękuj punktem reputacji Wink
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości