Advertisement
Stefan1999

Robot

May 29th, 2017
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.47 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include<string.h>
  4. /*
  5. Primer:
  6. Unesite komandu nizom velikih slova D,L i N:
  7. NNNLNN
  8. Unesite pocetne kordinate polozaja robota:
  9. x=2
  10. y=2
  11. KRAJNI POLOZAJ ROBOTA JE:
  12. x=5 y=4
  13. ROBOT<<GLEDA>>GORE:Y+
  14. */
  15. int main()
  16. {
  17.     int i;
  18.     int x,y,x1,y1;
  19.     int smerx=2,smery=2;
  20.     int smer,l=0,d=0;
  21.     char s[100];
  22.  
  23.  
  24.     printf("Unesite komandu nizom velikih slova D,L i N:\n\n");
  25.     scanf("%s", s);
  26.  
  27.  
  28.     printf("\nUnesite pocetne kordinate polozaja robota\n\n");
  29.     scanf("%d%d",&x,&y);
  30.  
  31.     printf("\nUlaz:\n\n%s\n",s);
  32.     printf("\nPocetne kordinate\n\nx=%d\ny=%d\n",x,y);
  33.  
  34.  
  35.     x1=x;
  36.     y1=y;
  37.     smer=0;
  38.  
  39.  
  40.     for(i=0;i<=strlen(s);i++){
  41.         if(s[i]=='N'){
  42.                 if(i==0){
  43.                      x1++;
  44.                 }
  45.                else{
  46.                     if(smer==0){
  47.                         if(smerx==2){
  48.                             x1++;
  49.                         }
  50.                         else if(smerx==-2){
  51.                             x1--;
  52.                         }
  53.                     }
  54.                     else if(smer==1){
  55.                         if(smery==2){
  56.                             y1++;
  57.                         }
  58.                         else if(smery==-2){
  59.                             y1--;
  60.                         }
  61.                     }
  62.                 }
  63.             }
  64.         else if(s[i]=='L'){
  65.                 if(l==0){
  66.                     l++;
  67.                     smer=1;
  68.                     smery=2;
  69.                 }
  70.                 else{
  71.                     if(smer==0){
  72.                         if(smerx==2){
  73.                             smer=1;
  74.                             smery=2;
  75.                         }
  76.                         else{
  77.                             smer=1;
  78.                             smery=-2;
  79.                         }
  80.                     }
  81.                     else if(smer==1){
  82.                          if(smery==2){
  83.                             smer=0;
  84.                             smerx=-2;
  85.                         }
  86.                         else{
  87.                             smer=0;
  88.                             smerx=2;
  89.                         }
  90.                     }
  91.                 }
  92.             }
  93.         else if(s[i]=='D'){
  94.             if(d==0){
  95.                     d++;
  96.                     smer=1;
  97.                     smery=-2;
  98.                 }
  99.             else{
  100.                     if(smer==0){
  101.                         if(smerx==2){
  102.                             smer=1;
  103.                             smery=-2;
  104.                         }
  105.                         else{
  106.                             smer=1;
  107.                             smery=2;
  108.                         }
  109.                     }
  110.                     else{
  111.                          if(smery==2){
  112.                             smer=0;
  113.                             smerx=2;
  114.                         }
  115.                         else{
  116.                             smer=0;
  117.                             smerx=-2;
  118.                         }
  119.                     }
  120.  
  121.                 }
  122.             }
  123.  
  124.     }
  125.  
  126.  
  127.     printf("\nKRAJNI POLOZAJ ROBOTA JE:\n\nx=%d y=%d\n",x1,y1);
  128.  
  129.  
  130.     if(smer==1){
  131.         if(smery==2)printf("\n\nROBOT<<GLEDA>>GORE:Y+");
  132.         if(smery==-2)printf("\n\nROBOT<<GLEDA>>DOLE:Y-");
  133.     }
  134.     else{
  135.         if(smerx==2)printf("\n\nROBOT<<GLEDA>>DESNO:X+");
  136.         if(smerx==-2)printf("\n\nROBOT<<GLEDA>>LEVO:X-");
  137.     }
  138.  
  139.  
  140.     getchar();
  141.     getchar();
  142. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement