Advertisement
Sammy24

SumaXL

Mar 22nd, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.09 KB | None | 0 0
  1. #include <fstream>
  2. #include <vector>
  3. #include <iostream>
  4.  
  5. using namespace std;
  6.  
  7. ifstream fin("sumaxl.in");
  8. ofstream fout("sumaxl.out");
  9.  
  10. vector < int > v;
  11. vector < int > v2;
  12.  
  13. int n, b;
  14.  
  15. void citire(vector < int > &v)
  16. {
  17. cin >> n;
  18.  
  19. for(int i = 1; i <= n; i++)
  20. {
  21. int t;
  22.  
  23. cin >> t;
  24.  
  25. v.insert(v.begin(), t);
  26. }
  27.  
  28. cin >> b;
  29. }
  30.  
  31. void adaugare(vector < int > v2)
  32. {
  33. while(b)
  34. {
  35. v2.insert(v2.begin(), b % 10);
  36. b /= 10;
  37. }
  38. }
  39.  
  40. void adunare(vector < int > v, vector < int > v2)
  41. {
  42. int e = 0;
  43.  
  44. if(v.size() < v2 .size())
  45. {
  46. v.resize(v2.size());
  47. }
  48.  
  49. for(int i = 0; i < v.size(); i++)
  50. {
  51. e += (v[i] + v2[i]);
  52. v[i] = e % 10;
  53. e /= 10;
  54. }
  55.  
  56. if(e)
  57. {
  58. v.resize(v.size() + 1);
  59. v[v.size() + 1] = e;
  60. }
  61. }
  62.  
  63.  
  64. void scriere(vector < int > v)
  65. {
  66. for(int i = v.size() - 1; i >= 0; i--)
  67. {
  68. cout << v[i];
  69. }
  70. }
  71.  
  72. int main()
  73. {
  74. citire(v);
  75. adaugare(v2);
  76. adunare(v, v2);
  77. scriere(v);
  78.  
  79. return 0;
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement