All pastes #232799 Raw Edit

Stuff

public c v1 · immutable
·published 2006-11-01 15:34 UTC
rendered paste body
  #include <stdlib.h>char    *calcul(char *exph, char *expb, int b, int c){  int   ret;  char  *resul;  int   a;  ret = 48;  a = my_strlen(exph) <= my_strlen(expb) ? my_strlen(expb) : my_strlen(exph);  a = my_strlen(exph) > my_strlen(expb) ? my_strlen(exph) : my_strlen(expb);resul = malloc(sizeof (*resul) * (a + 2));  resul[a + 1] = '\0';  a -= 1;  while (a >= -1)    {      resul[a + 1] = (a + c >= 0) ? exph[a + c] - 48 : 0;      resul[a + 1] += (a + b >= 0) ? expb[a + b] - 48 : 0;      resul[a + 1] += ret;      ret = 48;      if ((resul[a + 1]) > 57)        {          ret = 49;          resul[a + 1] -= 10;        }      a--;    }  return (resul);}void    my_add(char *exph, char *expb, int taille1, int taille2){  int   b;  int   c;  char  *resul;  c = 0;  b = 0;  if (taille1 <= taille2)    c = taille1 - taille2;  else if (taille1 > taille2)    b = taille2 - taille1;  resul = calcul(exph, expb, b, c);  free(resul);  printf("%s\n", resul);}int     main(int argc, char **argv){  char  *exph;  char  *expb;  int   taille1;  int   taille2;  if (argc == 3)    {      exph = argv[1];      expb = argv[2];      taille1 = my_strlen(exph);      taille2 = my_strlen(expb);      my_add(exph, expb, taille1, taille2);    }  else    write(1, "Une addition a besoin de 2 nombres !\n", 38);}