New to pawn, trying to convert some C code to pawn
#1

I'm trying to convert this to pawn but i'm having troubles, its not returning the proper percentage, and doesn't change based on if there are more or less caps, does anyone know whats wrong?

Код:
CHC_IsUpper(ch) {
if(ch>64&&ch<91) return 1;
return 0;
}
//C
float TooManyCaps(char *name) {
int num=0;
char *x=name;
float final;
int size=strlen(name);
while(size--) {
if(CHC_IsUpper(*x++)) num++;
}
final=(float)num/(strlen(name)-1);
return (float)final*100;
}
//PAWN
TooManyCaps(name[]) {

new Float:caps,num,sz;
sz=strlen(name[0]);
while(sz--) {
if(CHC_IsUpper(name[sz])) num++;
}
caps=floatdiv(num,strlen(name[0]));//maybe it will work fine if we don't pass floats..?
caps=floatmul(caps,100);
//caps=(num/(strlen(name[0])-1));
printf("%f!!\n",caps);
if(caps>40) return 1; 
return 0;
}
Reply


Messages In This Thread
New to pawn, trying to convert some C code to pawn - by CHC - 29.01.2010, 19:18
Re: New to pawn, trying to convert some C code to pawn - by CHC - 30.01.2010, 19:37
Re: New to pawn, trying to convert some C code to pawn - by Dubya - 22.06.2012, 05:09

Forum Jump:


Users browsing this thread: 1 Guest(s)