Вопрос по информатике:
Не проходите мимо)
Нужно написать программу на С++ (консоль) .Использовать двумерный вектор,а не обычный массив.
Дано динамичный двумерный массив (вектор) который заполняется случайными числами.И выводит их на экран.Ищет максимальное число и удаляет строку в которой оно находиться и выводит на экран что осталось.
Пример :
Входные:
1 2 3
4 5 6
7 8 9
Выходные:
1 2 3
4 5 6
Буду очень благодарен за решение)
- 14.01.2016 05:04
- Информатика
- remove_red_eye 980
- thumb_up 12
Ответы и объяснения 1
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int main()
{
mt19937 gen{ random_device()() };
uniform_int_distribution uid(1, 100);
vector
int max_i;
for_each(v2d.begin(), v2d.end(), [&max_i, &uid, &gen](vector& v) {
generate(v.begin(), v.end(), [&uid, &gen]() { return uid(gen); });
max_i = max(*max_element(v.begin(), v.end()), max_i);
});
cout << endl;
v2d.erase(remove_if(v2d.begin(), v2d.end(), [&max_i](vector& v) {
return find(v.begin(), v.end(), max_i) != v.end();
}), v2d.end());
for (const auto& i : v2d)
{
copy(i.begin(), i.end(), ostream_iterator(cout, " "));
cout << endl;
}
}
- 15.01.2016 09:30
- thumb_up 50
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.