Új hozzászólás Aktív témák
-
Dirty_Pio
csendes tag
válasz Dirty_Pio #791 üzenetére
Nos, a problemanak azt a felet megoldottam, amiert eredetileg ide irtam, de a javitott programban problemaim vannak a vektor ertekeinek a beolvasasaval, azaz minden esetben az vektor erteke -47 lesz. Beirom a javitott programot mert kozben voltak meg kissebb hibak a fentebbiben:
//program 5.6 (lab)
#define MAX 81
#include <stdio.h>
#include <stdlib.h>
int reading(int x[],int max)
{
int i=0,k,c;
while ((c=getchar()!=EOF)&&(i<max))
{
x[i]=c-'0';
i++;
}
i--;
return i;
}
int add(int a, int b, int r)
{
int s;
s=(a+b+r)%10;
return s;
}
int reminder(int a, int b, int r)
{
int s;
s=(a+b+r)/10;
return s;
}
int main(void)
{
int i,j,k,r;
int x[MAX],y[MAX],z[MAX];
for (k=0;k<80;k++)
{
x[k]=0;
y[k]=0;
}
i=reading(x,MAX);
j=reading(y,MAX);
printf("%i %i\n",i,j);
r=0;
for (k=0; (k<=i) && (k<=j); k++)
{
z[k]=add(x[k],y[k],r);
r=reminder (x[k],y[k],r);
}
if (i<j) for (i=k; i<=j; i++)
{
z[i]=add(0,y[i],r);
r=reminder(0,y[i],r);
}
else
for (j=k; j<=i; j++)
{
z[j]=add(0,x[j],r);
r=reminder (0,x[j],r);
}
z[k++]=r;
for (i=0;i<(k+1);i++)
printf("%i \n",z[i]);
system("pause");
return(0);
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!