17.07.2008, 02:32
Код:
add(a[],b[])
{
new i;
new a_str[256];
new a_len;
new a_digit[100];
format(a_str,255,"%s",a);
a_len = strlen(a_str);
for(i = 1;i <= a_len;i++)
{
strdel(a_str,a_len-i+1,a_len);
strdel(a_str,0,a_len-i);
a_digit[i] = strval(a_str);
format(a_str,255,"%s",a);
}
new b_str[256];
new b_len;
new b_digit[100];
format(b_str,255,"%s",b);
b_len = strlen(b_str);
for(i = 1;i <= b_len;i++)
{
strdel(b_str,b_len-i+1,b_len);
strdel(b_str,0,b_len-i);
b_digit[i] = strval(b_str);
format(b_str,255,"%s",b);
}
new c_digit[100] = 0;
new c[256];
c = "0";
new e;
for(i = 1;i <= 99;i++)
{
new tmp[256];
c_digit[i] = a_digit[i] + b_digit[i] + e;
e = 0;
if((c_digit[i] >= 10))
{
new e_str[256];
valstr(e_str,c_digit[i]);
new e_len;
e_len = strlen(e_str);
strdel(e_str,e_len-1,e_len);
e = strval(e_str);
c_digit[i] = c_digit[i] - e*10;
}
valstr(tmp,c_digit[i]);
strins(c,tmp,1);
}
return c;
}

