У меня есть задание
1. "Упорядочить элементов массива по возрастанию модулей элементов"
2. "Найти количество элементов массива, равных 0"
помогите с постройкой пожалуйста...
в голову ничего не приходить. напишите ключевые места...
Другие языки программирования и технологии
C++ задание по массивам
#include < iostream >
#include < algorithm >
#include < vector >
#include < cstdlib >
#include < ctime >
#include < cmath >
using namespace std;
void main()
{
setlocale(LC_ALL, "rus");
srand(time(NULL));
system("color 0A");
cout << "Введите число элементов в контейнере ";
unsigned n;
cin >> n;
vector < pair < int,unsigned > > v(n);
auto in = []()
{
int t = -50 + rand() % 101;
pair < int, unsigned > pr(t, abs(t));
return pr;
};
generate(v.begin(), v.end(), in);
cout << "Исходное содержание контейнера" << endl;
for (auto t : v)
cout << t.first << " ";
cout << endl;
sort(v.begin(), v.end(), [](pair < int, unsigned > d1, pair < int, unsigned > d2) {return d1.second < d2.second; });
cout << "Содержание контейнера после упорядочивания элементов по модулю по возрастанию" << endl;
for (auto t : v)
cout << t.first << " ";
cout << endl;
unsigned sum = 0;
for_each(v.begin(), v.end(), [&sum](pair < int, unsigned > t) {if (t.first == 0) ++sum; });
cout << "Количество элементов равных нулю " << sum << endl;
cin.get(); cin.get();
}
#include < algorithm >
#include < vector >
#include < cstdlib >
#include < ctime >
#include < cmath >
using namespace std;
void main()
{
setlocale(LC_ALL, "rus");
srand(time(NULL));
system("color 0A");
cout << "Введите число элементов в контейнере ";
unsigned n;
cin >> n;
vector < pair < int,unsigned > > v(n);
auto in = []()
{
int t = -50 + rand() % 101;
pair < int, unsigned > pr(t, abs(t));
return pr;
};
generate(v.begin(), v.end(), in);
cout << "Исходное содержание контейнера" << endl;
for (auto t : v)
cout << t.first << " ";
cout << endl;
sort(v.begin(), v.end(), [](pair < int, unsigned > d1, pair < int, unsigned > d2) {return d1.second < d2.second; });
cout << "Содержание контейнера после упорядочивания элементов по модулю по возрастанию" << endl;
for (auto t : v)
cout << t.first << " ";
cout << endl;
unsigned sum = 0;
for_each(v.begin(), v.end(), [&sum](pair < int, unsigned > t) {if (t.first == 0) ++sum; });
cout << "Количество элементов равных нулю " << sum << endl;
cin.get(); cin.get();
}
#include <iostream>
#include <iterator>
#include <algorithm>
using namespace std;
int main() {
int box[] = { 1, 2, 0, 3, -5, 7, -4, 8, 0, -9, 6, 0 };
copy(begin(box), end(box), ostream_iterator<int>(cout, " "));
cout.put('\n');
const auto lambda = [](int a, int b) { return abs(a) < abs(b); };
sort(begin(box), end(box), lambda);
copy(begin(box), end(box), ostream_iterator<int>(cout, " "));
cout.put('\n');
const auto zero = count(begin(box), end(box), 0);
cout << "Zero: " << zero << '\n';
system("pause");
}
#include <iterator>
#include <algorithm>
using namespace std;
int main() {
int box[] = { 1, 2, 0, 3, -5, 7, -4, 8, 0, -9, 6, 0 };
copy(begin(box), end(box), ostream_iterator<int>(cout, " "));
cout.put('\n');
const auto lambda = [](int a, int b) { return abs(a) < abs(b); };
sort(begin(box), end(box), lambda);
copy(begin(box), end(box), ostream_iterator<int>(cout, " "));
cout.put('\n');
const auto zero = count(begin(box), end(box), 0);
cout << "Zero: " << zero << '\n';
system("pause");
}
Похожие вопросы
- C++ задача про массив
- С++ Задание на массив
- С++. Задание на массив строк
- C#. Элементы одномерного массива размером 7, которые больше среднего значения элементов массива, заменить на 0.
- C++ Шаблоны с массивами
- задание с массивом в С++
- Помогите выполнить задание с массивами на С++
- C++ поэлементное соденение массивов
- Помогите пожалуйста написать программу на c++. Циклически сдвинуть массив на k элементов влево.
- Что делаю не так? C++.Удаление элемента массива
auto in = []() вот здесь выдает ошибку.... можете просмотреть эту часть