fork(2) download
  1. #include <iostream>
  2. typedef long long int type;
  3. using namespace std;
  4.  
  5. const type size = 10;
  6.  
  7. type mod (type a) // a%10
  8. {
  9. type next=a/10;
  10. return a-10*next;
  11. }
  12.  
  13. void silnia (type n)
  14. {
  15. cout << "nie ma mnie";
  16. unsigned int * const T = new unsigned int [size];
  17.  
  18. for(type i = 1; i!=size; ++i)
  19. *(T + i) = 0;
  20. *T = 1;
  21.  
  22. type i;
  23. type liczba_cyfr = 1;
  24.  
  25. for(type k = 2; k<=n; ++k) // 2, 3, 4,..., n
  26. {
  27. for(i = 0; i<liczba_cyfr; ++i) // mnozymy kazdą cyfre
  28. *(T+i)*= k;
  29.  
  30. for(i = 0; i<liczba_cyfr || T[i]>0; ++i)
  31. {
  32. T[i+1]+= T[i];
  33. T[i] = mod(T[i]);
  34. }
  35. liczba_cyfr = i;
  36. }
  37.  
  38. for(unsigned int *wsk = T+size-1; wsk>=T ; --wsk)
  39. cout<<*wsk;
  40.  
  41. return;
  42. }
  43.  
  44. int main()
  45. {
  46. type n;
  47. cin >> n;
  48. silnia (n);
  49. return 0;
  50. }
Runtime error #stdin #stdout 0s 3432KB
stdin
5
stdout
Standard output is empty