C++ Programmierung - Roboter und 50- und 10-Positionen-Plattform

FÜR eine Aussage

c ++ – Roboter und 50- und 10-Positionen-Plattform

Wir haben unseren Roboter auf einer beweglichen Plattform mit 50 Positionen. Der Roboter am Anfang des Algorithmus kann sich in jedem von ihnen befinden. Jedes Mal, wenn wir den Algorithmus starten, gibt es eine unbestimmte Anzahl von Blöcken (es kann nur einen Block für jede Position geben). Was wir wollen ist, dass der Roboter, nachdem er jede der Positionen (vorzugsweise von 1 bis 50) durchlaufen hat, uns mitteilt, ob es weitere Positionen mit Blöcken oder Positionen ohne Blöcke gibt.

#include<iostream.h>
#include<conio.h>
void main()
{int cb,sb;
char caja,op;
do
{cb=0;sb=0;
clrscr();
cout<<"Escirbir v si hay caja y escribir f si no hay caja en la plataforma"<<endl;
cout<<"********************************************************************"<<endl<<endl;
for(int c=1;c<51;c++)
{
do
{cout<<"Hay caja en posicion ["<<c<<"]=";
cin>>caja;
} while(caja!='f' && caja!='v');

 if(caja=='v')
 {cb++;
   }
 if(caja=='f')
 {sb++;
  }
 }
 cout<<"cantidad de posiciones que estan con bloques:"<<cb<<endl;
 cout<<"cantidad de posiciones que estan sin bloques:"<<sb<<endl;
 cout<<"desea continuar [s/n]:";
 cin>>op;
 }
 while(op=='s');
 }

2.- Roboterroute auf einer 10-Positionen-Plattform

#include<iostream.h>
#include<conio.h>

void main()
{char bloqueA,bloqueB;
 int pos1, pos2;
 clrscr();

 cout<<"Ingresar Primer bloque:";
 cin>>bloqueA;
 cout<<"Ingresar posicion del bloque"<<bloqueA<<":";
 cin>>pos1;
 cout<<"Ingresar segundo bloque:";
 cin>>bloqueB;
 cout<<"Ingresar posicion del bloque"<<bloqueB<<":";
 cin>>pos2;
 cout<<endl;

if(pos1!=10 && pos2!=10)
{
 if(pos1!=pos2)
 {
  if(bloqueA=='A' || bloqueA=='a')
   {if(pos1==1)
    cout<<"No hay cambios para hacer, porque robot A esta en:"<<pos1<<endl;
     else
       { while(pos1!=1)
         {pos1=pos1-1;
          {
          if(pos1==1)
            cout<<"El cambio se hizo, el bloque A esta en posicion:"<<pos1;
              else
               {if(pos1!=1)
                 {do
                   {
                     pos1=pos1-1;
                   }while(pos1!=1);
                   }
                    if(pos1==1)
                    cout<<"El cambio se hizo, el bloque A esta en posicion:"<<pos1<<endl;
               }
             }
            }
        }
   }

    if(bloqueB=='b' || bloqueB=='B')
   {if(pos2==2)
    cout<<"No hay cambios para hacer, porque robot B esta en:"<<pos2<<endl;
     else
       { while(pos2!=2)
         {pos2=pos2-1;
          {
          if(pos2==2)
            cout<<"El cambio se hizo, el bloque B esta en posicion:"<<pos2;
              else
               {if(pos2!=2)
                 {do
                   {
                     pos2=pos2-1;
                   }while(pos2!=2);
                   }
                    if(pos2==2)
                    cout<<"El cambio se hizo, el bloque B esta en posicion:"<<pos2<<endl;
               }
             }
            }
        }
   }
 }
 else
 cout<<"Hay un error, bloque A y bloque B tienen las mismas posiciones";
 }
else
cout<<"Tiene que ser menor de 10, porque la ultima posicion no se tiene en cuenta";

 getch();
 }

Weiter mit FOR, gebe ich folgenden Beitrag bekannt: Das Quadrat der ersten 20 Zahlen