sfida.h
Kodi PHP:
/* Programues : Josif Grabocka
< e140862 ET metu PIKË edu.tr >
* Emri i Programit: Kontrolli i 'wild char-s', (perfshi '?') */
int gjeje(char * model, char * varg){
int l_m=strlen(model), l_s=strlen(varg), i_m=0, i_s=0, k=0;
for( ; (i_s < l_s) && (i_m < l_m) ; i_s++)
if( varg[i_s]!='*' && varg[i_s]!='?' ){
if(varg[i_s]==model[i_m]) i_m++;
else return 0;
}
else if( varg[i_s]=='*' ) {
for(k=i_m ; k<l_m ; k++)
if(model[i_m++]==varg[i_s+1]) break;
i_m=k;
}
else if( varg[i_s]=='?' ) { if(model[i_m++ + 1] != varg[i_s + 1]) return 0; }
return i_m != l_m ? 0 : 1;
}
Programi Kryesor:
Kodi PHP:
#include <stdio.h>
#include <string.h>
#include "sfida.h"
int main(void){
printf("\nSakte=1 Gabim=0\n\n");
printf("%d\n", gjeje("abcdef", "?b*f") ); /* sakte */
printf("%d\n", gjeje("abcdef", "?b*d*f") ); /* sakte */
printf("%d\n", gjeje("abcdef", "?b*df") ); /* gabim */
printf("%d\n", gjeje("abcdef", "?b?d?f") ); /* sakte */
printf("%d\n", gjeje("abcdef", "ab?cdef") );/* gabim */
printf("%d\n\n", gjeje("abcdef", "*c?e*") ); /* sakte */
return 0;
}
Krijoni Kontakt