printЗанятие 16

printВвод и вывод длинных целых чисел

Вывод
void print(const lint &a)
{
  printf("%d",a[a.size()-1]);
  for(int i=a.size()-2; i>=0; --i)
    printf("%04d",a[i]);
}
Ввод
void input(lint &a)
{ char s[10001], buf[5];  
  scanf(" %10000[0-9]",s);
  a.clear();
  for(int i=strlen(s)-1;i>=0;i-=4)
  { int j;
    buf[4]=0;
    for(j=0;j<4 && i-j>=0;++j)
      buf[3-j]=s[i-j];
    a.push_back(atoi(buf+4-j));
  }
}
loading