Здравствуйте, Vampire, Вы писали:
V>Что здесь не правильно ???
V>Что то туплю конкретно ((((((((((((\ V> vector <int, vector<int> > pos;
1. vector<int> — не аллокатор.
V> cout << " Заполнение массива ";
V> for (int x = 0, int i = 0; ;i++)
ужос. два раза инт нельзя.
остальное не ошибки, но поспать явно надо
рабочий вариант, в смысле компилируемый и не падающий, логику работы не смотрел, пять утра всё таки
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(void)
{
vector <int>::iterator Iter;
vector <int> mass_a;
cout << " Заполнение массива ";
for (int x = 0, i = 0; ;i++)
{
cout << "'\n Введите " << i << " элемент массива ";
cin >> x;
mass_a.push_back(x);
if (x == -1) break;
}
for (size_t j = 0; j < mass_a.size(); j++)
{
cout << count(mass_a.begin(), mass_a.end(), mass_a[j]);
}
return 0;
}
таки посмотрел слегка логику
хотя задание: "Нийти наиболее повторяющиеся числа и вывести на экран" несколько неформально звучит... особенно со смешной опечаткой Наверно надо что то похитрее приведенного автором кода сделать. ну отсортировать количество повторений или что похитрее... да и guard на вводе не "-1" делать, а букву, какую-нить.
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector <int> mass_a;
cout << " Заполнение массива ";
//тут наверно имелось ввиду, что -1 в вектор всё-таки не попадет, хотя бы, потому, что оно вообще не повторяется ;)for (int x = 0, i = 0; ;i++)
{
cout << "\n Введите " << i << ". элемент массива: ";
cin >> x;
if (x == -1) break;
mass_a.push_back(x);
}
for (size_t j = 0; j < mass_a.size(); j++)
cout << count(mass_a.begin(), mass_a.end(), mass_a[j]);
}
Здравствуйте, dotidot, Вы писали:
D>Здравствуйте, dotidot, Вы писали:
D>хотя задание: "Нийти наиболее повторяющиеся числа и вывести на экран" несколько неформально звучит... особенно со смешной опечаткой Наверно надо что то похитрее приведенного автором кода сделать. ну отсортировать количество повторений или что похитрее... да и guard на вводе не "-1" делать, а букву, какую-нить.
D>
Дык такое не находит, а просто выводит... Причем, для одинаковых чисел одно и то же количество выведется несколько раз...
Наверное, нужно отсортировать, а потом самому в цикле посчитать...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>Дык такое не находит, а просто выводит... Причем, для одинаковых чисел одно и то же количество выведется несколько раз... LVV>Наверное, нужно отсортировать, а потом самому в цикле посчитать...
Или сразу в map класть.
#include <algorithm>
#include <iostream>
#include <map>
using namespace std;
int main()
{
map<int, int> mass_a;
int i = 0;
while (true)
{
cout << "Enter " << ++i << " element: ";
int x = 0;
cin >> x;
if (-1 == x) break;
++mass_a[x];
}
map<int, int>::const_iterator iter = mass_a.begin();
for (; iter != mass_a.end(); ++iter)
cout << iter->first << " - " << iter->second << endl;
cout << endl;
}