Keresés

Ú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