سلام
از دوستان لطفا هر کی بلده این کدها رو برای من توضیح بده لطفاً
کد:
#include<iostream.h>
#include<conio.h>
#include<string.h>
 
#define max 200
 
class bi
{
int a[max];
public:
bi();
bi(char []);
bi add(bi);
bi zarb(bi);
void print();
};
 
bi::bi()
{
for(int i=max;i>=0;i--)
a[i]=0;
}
 
bi::bi(char b[])
{
int str,k=0,i;
str=strlen(b);
for(i=max-str;i<max;i++)
a[i]=(int)b[k++]-48;
for(i=0;i<max-str;i++) a[i]=0;
 
}
 
bi bi::add(bi z)
{
bi t("000");
for(int i=max-1;i>=0;i--)
{
t.a[i-1]=(a[i]+z.a[i]+t.a[i])/10;
t.a[i]=(a[i]+z.a[i]+t.a[i])%10;
}
return t;
}
 
 
bi bi::zarb(bi z)
{
bi t("0000");
int i,j,k=max-1;
for(i=max-1;i>=0;i--)
{
for(j=max-1;j>=0;j--)
{
t.a[k-1]=(a[i]*z.a[j]+t.a[k])/10+t.a[k-1];
t.a[k]=(a[i]*z.a[j]+t.a[k])%10;
k--;
}
k=i-1;
}
return t;
}
 
 
 
void bi::print()
{
int j;
for(int i=0;i<max;i++)
if(a[i]) {j=i;break;}
for(i=j;i<max;i++)
cout<<a[i];
cout<<endl<<"*************************************  **********\n";
}
 
 
void main()
{
clrscr();
char *int1,*int2;
cin>>int1>>int2;
bi a(int1),b(int2),c("000");
cout<<"Sum: ";
c=a.add(b);c.print();
cout<<"Mul: ";
c=a.zarb(b);c.print();
getch();
}
این برنامه اعداد بزرگ رو جمع و ضرب میکنه
میخوام بدونم روال کارش چطوریه و چطور محاسبات رو انجام میده دقیقاً با اشاره به کد
هر تابع کارش چیه؟
ممنون