Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #define _USE_MATH_DEFINES
- #include <math.h>
- #include <vector>
- #include <algorithm>
- int main()
- {
- using namespace std;
- setlocale(LC_ALL, "Russian");
- long n;
- char ex = 'n';
- do {
- cout << "Введите номер задания: " << endl;
- char task;
- /*cin.ignore(100, '\n');*/
- cin >> task;
- switch (task)
- {
- case '1': {
- int n;
- cout << "Enter n:" << endl;
- cin >> n;
- double* mas;
- mas = new double[n];
- for (int i = 0; i < n; i++)
- {
- cin >> mas[i];
- }
- double min = mas[0];
- int imin;
- for (int i = 0; i < n; i++)
- {
- if (mas[i] < min)
- {
- min = mas[i];
- imin = i;
- }
- }
- double t = mas[1];
- for (int i = 1; i < imin; i++)
- {
- mas[i] = mas[i + 1];
- }
- mas[imin - 1] = t;
- cout << "new: " << endl;
- for (int i = 0; i < n; i++)
- {
- cout << mas[i] << endl;
- }
- delete[] mas;
- break;
- }
- case '2': {
- int n, imin, imax, t;
- cout << "Enter n: " << endl;
- cin >> n;
- double* mas = new double[n];
- for (int i = 0; i < n; i++)
- {
- cin >> mas[i];
- }
- double max = mas[0];
- double min = mas[0];
- for (int i = 0; i < n; i++)
- {
- if (mas[i] <= min)
- {
- min = mas[i];
- imin = i;
- }
- if (fabs(mas[i]) >= max)
- {
- max = fabs(mas[i]);
- imax = i;
- }
- }
- if (imax < imin)
- {
- t = imin;
- imin = imax;
- imax = t;
- }
- if (imin == imax)
- {
- cout << "mas was not changed " << endl;
- for (int i = 0; i < n; i++)
- {
- cout << mas[i];
- }
- }
- else
- {
- int b;
- for (int i = imin; i <= imax - 3; i++)
- {
- for (int j = imin + 1; j <= imax - 2 - b; j++)
- if (mas[j] < mas[j + 1])
- {
- int k = mas[j];
- mas[j] = mas[j + 1];
- mas[j + 1] = k;
- }
- b++;
- }
- cout << "new: " << endl;
- cout << imin << endl << imax << endl;
- for (int i = 0; i < n; ++i)
- {
- cout << mas[i];
- }
- }
- delete[] mas;
- break;
- }
- case '3': {
- int k = 0;
- int* mas = nullptr, *mas2 = nullptr;
- int n;
- cout << "Enter n: " << endl;
- cin >> n;
- int t;
- cout << "Enter t: " << endl;
- cin >> t;
- mas = new int[n];
- cout << "Enter mas: " << endl;
- for (int i = 0; i < n; i++)
- {
- cin >> mas[i];
- if (mas[i] % 5 == 0)
- {
- k++;
- }
- }
- mas2 = new int[n + k];
- for (int i = 0, j = 0; i < (n + k); i++)
- {
- mas2[j++] = mas[i];
- if (mas[i] % 5 == 0)
- {
- mas2[j++] = t;
- }
- }
- cout << "New:" << endl;
- for (int i = 0; i < (n + k); i++)
- {
- cout << mas2[i] << endl;
- }
- delete[] mas;
- break;
- }
- case '12': {
- int n;
- cout << "enter n:" << endl;
- cin >> n;
- int imin;
- vector <double> v(n);
- for (int i = 0; i < v.size(); i++)
- {
- cin >> v[i];
- }
- double min = v[0];
- for (int i = 0; i < v.size(); i++)
- {
- if (v[i] < min)
- {
- min = v[i];
- imin = i;
- }
- }
- double t = v[1];
- v.erase(v.begin() + 1);
- v.insert(v.begin() + imin - 1, t);
- for (int i = 0; i < v.size(); i++)
- {
- cout << v[i] << " ";
- }
- break;
- }
- case '22': {
- int n;
- cout << "enter n:" << endl;
- cin >> n;
- int imin, imax;
- vector <double> v(n);
- for (int i = 0; i < v.size(); i++)
- {
- cin >> v[i];
- }
- double min = v[0];
- double max = v[0];
- for (int i = 0; i < v.size(); i++)
- {
- if (v[i] < min)
- {
- min = v[i];
- imin = i;
- }
- if (fabs(v[i]) > max)
- {
- max = v[i];
- imax = i;
- }
- }
- int t;
- if (imin > imax)
- {
- t = imin;
- imin = imax;
- imax = t;
- }
- if (imin == imax)
- {
- cout << "(mas was not changed)" << endl;
- for (int i = 0; i < v.size(); i++)
- {
- cout << v[i] << " ";
- }
- }
- else
- {
- sort(v.begin() + imin + 1, v.end() - (v.size() - imax), greater<double>());
- cout << "new: " << endl;
- for (int i = 0; i < v.size(); i++)
- {
- cout << v[i] << " ";
- }
- }
- break;
- }
- case '32': {
- int n, t;
- cout << "enter n:" << endl;
- cin >> n;
- cout << "enter t:" << endl;
- cin >> t;
- int imin;
- vector <int> v(n);
- for (int i = 0; i < v.size(); i++)
- {
- cin >> v[i];
- }
- for (int i = 0; i < v.size(); i++)
- {
- if (v[i] % 5 == 0)
- {
- v.insert(v.begin() + i + 1, t);
- }
- }
- for (int i = 0; i < v.size(); i++)
- {
- cout << v[i] << " ";
- }
- return 0;
- break;
- }
- default: {cout << "Нет такой задачи.\n"; } break;
- }
- cout << "Если вы хотите выйти, нажмите \'y\', в противном случае-любую другую клавишу" << endl;
- cin.ignore(100, '\n');
- cin >> ex;
- } while (ex != 'y');
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement