Advertisement
Guest User

Untitled

a guest
Jul 17th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.63 KB | None | 0 0
  1. int je_li_palndrom(const char *str)
  2. {
  3.     const char *na_prvi1=str;
  4.     char *na_prvi2, *na_kraj, *pom;
  5.     int duzina1=0, duzina2=0, palindrom;
  6.     char novi[1000];
  7.     char *s=novi, *sp;
  8.     na_prvi2=s;
  9.     while(*str!='\0' && *s!='\0') {
  10.         *s=*str;
  11.         str++;
  12.         s++;
  13.     }
  14.     *s=*str;
  15.     str=na_prvi1;
  16.     s=na_prvi2;
  17.     //
  18.     int razmak=1, broj_rijeci=0, brojac=0;
  19.     while(*s!='\0') {
  20.         if(*s==' ') {
  21.             razmak=1;
  22.         } else if(razmak==1) {
  23.             razmak=0;
  24.             broj_rijeci++;
  25.         }
  26.         s++;
  27.     }
  28.     s=na_prvi2;
  29.  
  30.     if(broj_rijeci==0) {
  31.         return 0;
  32.     } else if(broj_rijeci>0) {
  33.         if(*s==' ') {
  34.             pom=s;
  35.             while(*pom==' ') {
  36.                 pom++;
  37.             }
  38.             while(*s!='\0' && *pom!='\0') {
  39.                 *s=*pom;
  40.                 s++;
  41.                 pom++;
  42.             }
  43.             *s=*pom;
  44.         }
  45.  
  46.         s=na_prvi2;
  47.         razmak=1;
  48.         while(*s!='\0') {
  49.             if(*s==' ') {
  50.                 razmak=1;
  51.             } else if(razmak==1) {
  52.                 razmak=0;
  53.                 brojac++;
  54.                 if(brojac==broj_rijeci) {
  55.                     pom=s;
  56.                     break;
  57.                 }
  58.             }
  59.             s++;
  60.         }
  61.         while((*pom>='a' && *pom<='z') || (*pom>='A' && *pom<='Z')) {
  62.             pom++;
  63.         }
  64.         *pom='\0';
  65.         s=na_prvi2;
  66.         if(broj_rijeci>1) {
  67.             while(*s!='\0') {
  68.                 if(*s==' ') {
  69.                     pom=s;
  70.                     sp=s;
  71.                 }
  72.                 while(*pom==' ' && *pom!='\0') {
  73.                     pom++;
  74.                 }
  75.                 while(*pom!='\0' &&  *sp!='\0') {
  76.                     *sp=*pom;
  77.                     sp++;
  78.                     pom++;
  79.                 }
  80.                 *sp=*pom;
  81.                 s++;
  82.             }
  83.  
  84.         }
  85.         s=na_prvi2;
  86.         while(*s!='\0') {
  87.             duzina2++;
  88.             s++;
  89.         }
  90.         s=na_prvi2;
  91.         na_kraj=s;
  92.         while(*na_kraj!='\0')  {
  93.             na_kraj++;
  94. }na_kraj--;
  95.     }
  96.    
  97.     palindrom=1;
  98.     for(int i=0; i<duzina2; i++) {
  99.         if(*s!=*na_kraj) {
  100.             palindrom=0;
  101.             break;
  102.         }
  103.         s++;
  104.         na_kraj--;
  105.     }
  106.     if(palindrom==1) {
  107.         return 1;
  108.     }
  109.     return 0;
  110. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement