Advertisement
Pafnytiu

Практика 5 - 1 Доделать срочно

Jul 8th, 2016
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.62 KB | None | 0 0
  1. /*#include <fstream>
  2. #include <vector>
  3. #include <algorithm>
  4. #include <set>
  5. #include <iterator>
  6. #include <string>
  7. //17) Для каждой пары подряд идущих чисел найти такие цифры, которые есть в первом числе, но отсутствуют во втором.
  8. using namespace std;
  9. ifstream in ("input.txt");
  10. ofstream out ("output.txt");
  11. int main()
  12. {
  13. setlocale(0, "");
  14. int i, c = 0, a = 0, b = 0;
  15. vector < int > v;
  16. set < int > set;
  17. while (in >> i)
  18. {
  19. v.push_back(i);
  20. }
  21. copy (v.begin(), v.end(), ostream_iterator <int> (out, " "));
  22. out<<endl;
  23. for (int i = 0; i < v.size(); i++)
  24. {
  25. for (int j = 0; j < i; j++)
  26. {
  27. int m = abs (v[j]);
  28. while (m > 0)
  29. {
  30. b = m % 10;
  31. m = m / 10;
  32. set.insert(b);
  33. }
  34. }
  35. copy( set.begin(), set.end(), ostream_iterator<int>(out, " "));
  36. out << "Уникальные цифры для числа " << v[i] << ": ";
  37. int m = set.size();
  38. int k = abs (v[i]);
  39. while (k>0)
  40. {
  41. a = k % 10;
  42. k = k / 10;
  43. set. insert (a);
  44. if (set. size() > m)
  45. {
  46. out << a << " ";
  47. m = set.size();
  48. c++;
  49. }
  50. }
  51. if (c == 0) out << " - ";
  52. c = 0;
  53. out << endl;
  54. out << "цифры, которые есть в первом числе, но отсутствуют во втором ";
  55.  
  56. }
  57. return 0;
  58. }*/
  59. #include <fstream>
  60. #include <vector>
  61. #include <algorithm>
  62. #include <set>
  63. #include <iterator>
  64. using namespace std;
  65. ifstream in ("input.txt");
  66. ofstream out ("output.txt");
  67. int main()
  68. {
  69. setlocale (0,"");
  70. set <int> set;
  71. int i,a,b;
  72. while (in >> i)
  73. {
  74. set.insert(i);
  75. }
  76. copy( set.begin(), set.end(), ostream_iterator<int>(out, " "));
  77. out<<endl;
  78. for (auto iter = set.begin(); iter != set.end(); iter++)
  79. {
  80. out << "Цифры, которые есть в " << *iter <<", но отсутствуют в " << *iter+1 << endl;
  81. int n = set.size(); // размерность первоначального сета
  82. int x = abs (*iter);
  83. int y = abs (*iter++);
  84. while (x > 0)
  85. {
  86. a = x%10;
  87. x /= 10;
  88. set.insert(a);
  89. }
  90. while (y > 0)
  91. {
  92. b = y%10;
  93. y /= 10;
  94. set.insert(b);
  95. }
  96. if (set. size() > n && a == b)
  97. {
  98. out << "Цифра " << a << " " << endl;
  99. n = set.size();
  100. }
  101. }
  102. return 0;
  103. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement