Advertisement
Guest User

dlaczego :(

a guest
Apr 19th, 2015
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.05 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #define size 81
  5. int main(void)
  6. {
  7.     int i=0, j=0;
  8.     char *tab;
  9.     char *tab_p;
  10.     char *tab_e;
  11.     //alokuje pamiec dla tablic
  12.     tab  =(char*)malloc(sizeof *tab *(size+1));
  13.     tab_p=malloc(sizeof *tab_p *(size+1));
  14.     tab_e=malloc(sizeof *tab_e *(size+1));
  15.     //wypelniam tablice
  16.     memset(tab, '-', size);
  17.     *(tab+20)='x';
  18.  
  19.     memset(tab_p, '-', size);
  20.    
  21.     for(i=0; i<size; i++)
  22.     {
  23.         if(i%2==0)
  24.             *(tab_e+i)='-';
  25.         else
  26.             *(tab_e+i)='x';
  27.     }
  28.     printf("%s \n", tab); //wypisuje tablice
  29.    
  30.     while(1)
  31.     {
  32.         for(i=0; i<size; i++)
  33.         {
  34.             if(tab[i-1]=='x' && tab[i]=='x' && tab[i+1]=='x')
  35.                 tab_p[i]='-';
  36.             if(tab[i-1]=='x' && tab[i]=='x' && tab[i+1]=='-')
  37.                 tab_p[i]='-';
  38.             if(tab[i-1]=='x' && tab[i]=='-' && tab[i+1]=='x')
  39.                 tab_p[i]='-';
  40.             if(tab[i-1]=='x' && tab[i]=='-' && tab[i+1]=='-')
  41.                 tab_p[i]='x';
  42.             if(tab[i-1]=='-' && tab[i]=='x' && tab[i+1]=='x')
  43.                 tab_p[i]='x';
  44.             if(tab[i-1]=='-' && tab[i]=='x' && tab[i+1]=='-')
  45.                 tab_p[i]='x';
  46.             if(tab[i-1]=='-' && tab[i]=='-' && tab[i+1]=='x')
  47.                 tab_p[i]='x';
  48.             if(tab[i-1]=='-' && tab[i]=='-' && tab[i+1]=='-')
  49.                 tab_p[i]='-';
  50.             /*
  51.             if(i=0) //graniczne warunki dla poczatku ale nie działają
  52.             {
  53.                 if(tab[i]=='x' && tab[i+1]=='x')
  54.                     tab_p[i]='x';
  55.                 if(tab[i]=='x' && tab[i+1]=='-')
  56.                     tab_p[i]='-';
  57.                 if(tab[i]=='-' && tab[i+1]=='-')
  58.                     tab_p[i]='x';
  59.                 if(tab[i]=='-' && tab[i+1]=='x')
  60.                     tab_p[i]='-';
  61.             }
  62.             if(i=size-1)
  63.             {
  64.                 if(tab[i-1]=='x' && tab[i]=='x')
  65.                     tab_p[i]='x';
  66.                 if(tab[i+1]=='x' && tab[i]=='-')
  67.                     tab_p[i]='-';
  68.                 if(tab[i+1]=='-' && tab[i]=='-')
  69.                     tab_p[i]='x';
  70.                 if(tab[i+1]=='-' && tab[i]=='x')
  71.                     tab_p[i]='-';
  72.             }*/
  73.         }
  74.         //kopiuje tablice
  75.         memcpy(tab, tab_p, size);
  76.         printf("%s", tab);
  77.         if(strcmp(tab, tab_e)==0)  //sprawdzam czy sa takie same
  78.         {
  79.             printf("\n Licza krokow to %d \n", j);
  80.             free(tab);
  81.             free(tab_e);
  82.             free(tab_p);
  83.             return 0;
  84.         }
  85.            
  86.    
  87.     printf("\n");
  88.     j++;    //jesli if nie jest spelniony to inkrementuje
  89.     }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement