Cetin,
Thanks but more importantly I need to know if I'm doing this the right way:
c:
digit = *(tempCustStr + i) - '0'
foxpro:
digit = VAL(SUBST(tempCustStr,i,1))
Thanks
Gil
>>>
>>>*Sample value:
>>>tempCustStr = '50400000019'
>>>
>>>****C++ code:******
>>>rhs = 0
>>>for (i = strlen(tempCustStr)-1;i>=0;i--){
>>> digit = *(tempCustStr + i) - '0'
>>> if (i % 2 == 0) {
>>> rhs += digit;
>>> //odd digits
>>> } else {
>>> rhs += (2 * digit) /10 + (2 * digit) % 10;
>>> }
>>>}
>>>
>>>rhs = 99 - rhs
>>>checkdigit = rhs / 10
>>>lastdigit = rhs % 10
>>>
>>>****My FP code: (It's not working properly)******
>>>rhs = 0
>>>i = LEN(tempCustStr) - 1
>i = LEN(tempCustStr)
>>>DO WHILE i >= 0
>DO WHILE i > 0 && C counting starts with 0, Fox 1
>>> digit = VAL(SUBST(tempCustStr,i,1))
>>> IF i % 2 = 0
>>> rhs = rhs + digit
>>> ELSE
>>> rhs = rhs + ((2 * digit)/10) + ((2 * digit) % 10)
>>> ENDIF
>>> i = i - 1
>>>ENDDO
>>>
>>>rhs = 99 - rhs
>>>checkdigit = rhs /10
>>>lastdigit = rhs % 10
>>>
>>>Thanks a lot, I really appreciate any help
>
>>>
>>>Have a good day,
For every bug fixed, there is a bigger bug not yet discovered.