Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (GNU/Linux, *NIX, *BSD und Co) » probleme mit while-schleife

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
21.10.2016, 17:13 Uhr
~brotbrotbrot
Gast


Guten Tag zusammen,

ich habe ein kleines, aber nerviges Problem mit einer while-schleife. Aus einem array mit abständen soll ein hindernis detektiert werden, sobald es zwischen 100 und 500 liegt (angabe in mm). ich habe folgende schleife dafür geschrieben:

C++:
vorhanden = false;
while(i<n && b!=2)
     {
      if(length_data[i]>=100 && length_data[i]<=500)
      {
         vorhanden = true;
         b = 2;
      }
      else
      {
          vorhanden = false;
          i++;
      }
     } ;

     if(vorhanden == true)
     {
         printf("obstacle detected");
     }
     else
     {
         printf("no obstacle detected");
     }


int n ist dabei die anzahl der abstandsdaten. b ist ein integer, den ich für den abbruch der schleife eingefügt habe...
die ausgabe zeigt leider immer "no obstacle detected".. ich weiß leider nicht was ich falsch gemacht habe.. wäre toll, wenn mir jemand helfen kann!
-----
Edit: cpp-Tags eingefügt.

Dieser Post wurde am 22.10.2016 um 18:17 Uhr von Hans editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
22.10.2016, 13:13 Uhr
~Julia_w
Gast


warum postest du den den kompletten Code?
in abhängigkeit von "n" und "b" kann es vorkommen, dass die while-Schleife nie ausgeführt wird. Also bleibt "vorhanden=FALSE" und somit wird immer die else-Verzweigung

C++:
else
{
printf("no obstacle detected");
}


ausgeführt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
22.10.2016, 15:34 Uhr
ao

(Operator)


Warum testest du nicht so:

C++:
while (i < n && !vorhanden)


Dieses b scheint mir überflüssig zu sein.

Wie wird i initialisiert, wie groß ist n, wie lang ist das Array length_data und was für Daten stehen da drin?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (GNU/Linux, *NIX, *BSD und Co) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: