M
mukesh tiwari
Hi everybody i want to know about array initialisation .
Today i was solving a problem and here is my code
#include<cstdio>
#include<cstring>
int l;
int div(char *a,int d)
{
int k;
char c[120];
k=a[0];
c[0]=a[0]/d;
for(int i=1;i<l;i++)
{
k=10*(k-d*c[i-1])+a;
c=k/d;
}
return(k%d);
}
int main()
{
char m[120],n[100];
int k,j,p;//value[10][10];
int value[10][10]={{0},{0},{6,2,4,8},{1,3,9,7},{6,4},{0},{0},
{1,7,9,3},{6,8,4,2},{1,9}};
while(scanf("%s%s",m,n) && (m[0]!='0' || n[0]!='0') )
{
l=strlen(m);
p=m[l-1]-'0';//last digit
l=strlen(n);
for(j=0;j<l;j++)
n[j]=n[j]-'0';
if(n[0]==0)
printf("1\n");
else if(p==0 || p==1 || p==5 || p==6)
printf("%d\n",p);
else if(p==2 || p==3 || p==7 || p==8)
{
k=div(n,4);
printf("%d\n",value[p][k]);
}
else
{
k=div(n,2);
printf("%d\n",value[p][k]);
}
}
}
now my problem is
int k,j,p,value[10][10];
value[10][10]={{0},{0},{6,2,4,8},{1,3,9,7},{6,4},{0},{0},{1,7,9,3},
{6,8,4,2},{1,9}};
was giving me compiler (gcc) error and when i initialise with
declaration it worked fine as in my program . Plz some one tell me
why is it so .
Today i was solving a problem and here is my code
#include<cstdio>
#include<cstring>
int l;
int div(char *a,int d)
{
int k;
char c[120];
k=a[0];
c[0]=a[0]/d;
for(int i=1;i<l;i++)
{
k=10*(k-d*c[i-1])+a;
c=k/d;
}
return(k%d);
}
int main()
{
char m[120],n[100];
int k,j,p;//value[10][10];
int value[10][10]={{0},{0},{6,2,4,8},{1,3,9,7},{6,4},{0},{0},
{1,7,9,3},{6,8,4,2},{1,9}};
while(scanf("%s%s",m,n) && (m[0]!='0' || n[0]!='0') )
{
l=strlen(m);
p=m[l-1]-'0';//last digit
l=strlen(n);
for(j=0;j<l;j++)
n[j]=n[j]-'0';
if(n[0]==0)
printf("1\n");
else if(p==0 || p==1 || p==5 || p==6)
printf("%d\n",p);
else if(p==2 || p==3 || p==7 || p==8)
{
k=div(n,4);
printf("%d\n",value[p][k]);
}
else
{
k=div(n,2);
printf("%d\n",value[p][k]);
}
}
}
now my problem is
int k,j,p,value[10][10];
value[10][10]={{0},{0},{6,2,4,8},{1,3,9,7},{6,4},{0},{0},{1,7,9,3},
{6,8,4,2},{1,9}};
was giving me compiler (gcc) error and when i initialise with
declaration it worked fine as in my program . Plz some one tell me
why is it so .