Pagini recente » Cod sursa (job #497689) | Cod sursa (job #1846310) | Cod sursa (job #2270081) | Cod sursa (job #1032359) | Cod sursa (job #1152084)
#include <fstream>
using namespace std;
ifstream x ("multiplu.in");
ofstream y ("multiplu.out");
#define n 1000
int a,b,v[1011],nrc,i,j,flag,m[15],s,p;
void read()
{x>>a>>b;
a=a*b;
b=a;
}
void vector()
{i=0;
while(b)
{v[n-i]=b%10;
b=b/10;
i++;
}
nrc=i;
for(j=1;j<=n;j++)
if(v[j])
break;
for(i=1;i<=nrc;i++,j++)
m[i]=v[j];
}
void test1()
{flag=0;
for(i=1;i<=n;i++)
{if(v[i])
flag=1;
if(flag==1 || v[i])
y<<v[i];
}
y<<'\n';
}
void suma()
{for(i=0;i<=nrc;i++)
{v[n-i]=v[n-i]+m[nrc-i];
if(v[n-i]>9)
{v[n-i-1]++;
v[n-i]=v[n-i]%10;
}
}
}
void check()
{for(i=1;i<=n;i++)
if(v[i])
break;
j=i;
p=n-j+1;
s=0;
for(i=j;i<=n;i++)
s=s+v[i];
if(s>p) flag=1;
else flag=0;
//y<<s<<"-->"<<p<<" ";
}
void multiplu()
{flag=1;
while(flag)
{flag=0;
suma();
check();
//y<<flag<<"--->";
//for(i=j;i<=n;i++)
// y<<v[i];
// y<<'\n';
}
test1();
}
int main()
{read();
vector();
//test1();
multiplu();
return 0;
}