Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <conio.h>
- #include <locale>
- #include <time.h>
- #include <cstdlib>
- using namespace std;
- void vvod(int a[], int n);
- void generac(int a[], int n);
- void vivod(int a[], int n);
- void vivod1(int a[], int n);
- void vivod2(int a[], int n);
- void vivod3(int a[], int n);
- void vivod4(int a[], int n);
- void vivod5(int a[], int n);
- void vivod6(int a[], int n);
- void vivod7(int a[], int n);
- void vivod8(int a[], int n);
- void vivod9(int a[], int n);
- void vivod10(int a[], int n);
- void vivod11(int a[], int n);a
- void main()
- {
- srand((unsigned)time(NULL));
- setlocale(0, "");
- int a[20];
- int n, k;
- signed int y = 0, u = 0, p, summ = 0;
- cout << "введите количество элементов массива";
- cin >> n;
- do {
- cout << "1. Ввод массива a" << endl;
- cout << "2. Генетация элементов массива a" << endl;
- cout << "3. Вычисление среднего арифметического значения элементов массива и замена положительных элементов массива целой частью от среднего арифметического значения" << endl;
- cout << "4. Вычисление минимального элемента. Вычисление максимального элемента. Замена всех элементов равных максимальному элементу значением минимального элемента." << endl;
- cout << "5.Найти минимальный элемент. Найти максимальный элемент. Заменить все элементы, стоящие между минимальным и максимальным элементом - нулями" << endl;
- cout << "6. Найти количество положительных элементов в массиве. Заменить все четные элементы массива на их индексы." << endl;
- cout << "7. Найти минимальный элемент. Найти количество элементов имеющих минимальное значение. Удалить все минимальные элементы из массива" << endl;
- cout << "8.Найти первый отрицательный элемент в массиве. Найти сумму отрицательных элементов. Заменить все элементы, стоящие перед первым отрицательным элементом на сумму отрицательных элементов." << endl;
- cout << "9. Найти минимальный элемент среди элементов, имеющих четный индекс. Найти минимальный элемент среди элементов, имеющих нечетный индекс. Заменить все элементы, стоящие между этими минимальными элементами на их индексы" << endl;
- cout << "10. Найти минимальный элемент среди положительных элементов массива. Заменить все отрицательные элементы массива на этот минимальный элемент элементов массива" << endl;
- cout << "11. Найти второй по порядку минимальный элемент. Заменить все элементы, кратные трем, на этот элемент" << endl;
- cout << "12. Найти минимальный элемент. Вставить после минимального элемента его индекс" << endl;
- cout << "13. Найти максимальный элемент. Найти количество элементов имеющих максимальное. Удалить все максимальные элементы из массива" << endl;
- cout << "14.Найти количество элементов, стоящих после последнего отрицательного элемента в массиве. Вставить после этого элемента найденное количество." << endl;
- cout << "15. Конец работы" << endl;
- cout << "Укажите номер пункта меню";
- cin >> k;
- switch (k) {
- case 1:
- vvod(a, n);
- break;
- case 2:
- vivod(a, n);
- break;
- case 3:
- generac(a, n);
- break;
- case 4:
- vivod1(a, n);
- break;
- case 5:
- vivod2(a, n);
- break;
- case 6:
- vivod3(a, n);
- break;
- case 7:
- vivod4(a, n);
- break;
- case 8:
- vivod5(a, n);
- break;
- case 9:
- vivod6(a, n);
- break;
- case 10:
- vivod7(a, n);
- break;
- case 11:
- vivod8(a, n);
- break;
- case 12:
- vivod9(a, n);
- break;
- case 13:
- vivod10(a, n);
- break;
- case 14:
- vivod11(a, n);
- break;
- case 15:
- cout << "Конец работы" << endl;
- break;
- default:
- cout << "Такого пункта нет" << endl;
- }
- if (k == 15)
- break;
- } while (true);
- _getch();
- }
- //ВВОД
- void vvod(int a[], int n)
- {
- cout << "Введите элементы массива" << endl;
- for (int i = 0; i < n; i++)
- cin >> a[i];
- }
- //ВЫВОД
- void vivod(int a[], int n)
- {
- cout << "Массив a" << endl;
- for (int i = 0; i < n; i++)
- cout << a[i] << "\t";
- cout << endl;
- }
- // 3Вычисление среднего арифметического значения элементов массива и замена положительных элементов массива целой частью от среднего арифметического значения
- void generac(int a[], int n)
- {
- }
- //4Вычисление минимального элемента. Вычисление максимального элемента. Замена всех элементов равных максимальному элементу значением минимального элемента.
- // ycnex
- void vivod1(int a[], int y, int u, int n)
- {
- cout << "Введите элементы массива" << endl;
- for (int i = 0; i < n; i++)
- cin >> a[i];
- for (int i = 0; i < n; i++) {
- if (a[i] > y) {
- y = a[i];
- }
- else if (a[i] < y) {
- u = a[i];
- }
- else if (a[i] = y) {
- a[i] = u;
- }
- cout << a[i] << "\t";
- }
- }
- //5Найти минимальный элемент. Найти максимальный элемент. Заменить все элементы, стоящие между минимальным и максимальным элементом - нулями.
- //ycnex
- void vivod2(int a[], int y, int u, int n)
- {
- for (int i = 0; i < n; i++) {
- if (a[i] > y) {
- y = a[i];
- }
- else if (a[i] = y) {
- a[i] = 0;
- }
- else if (a[i] < y) {
- u = a[i];
- }
- cout << a[i] << "\t";
- }
- }
- //6Найти количество положительных элементов в массиве. Заменить все четные элементы массива на их индексы.
- void vivod3(int a[], int n)
- {
- for (int i = 0; i < n; i++) {
- if (a[i] % 2 == 0) {
- cout << i;
- }
- else {
- cout << a[i] << "\t";
- }
- }
- }
- //7Найти минимальный элемент. Найти количество элементов имеющих минимальное значение. Удалить все минимальные элементы из массива
- void vivod4(int a[], int p, int u, int n)
- {
- for (int i = 0; i < n; i++) {
- if (a[i] <= u) {
- p++;
- u = a[i];
- cout << u << "\n";
- }
- u = 0;
- cout << p << "\n";
- cout << a[i] << "\t";
- }
- }
- //8Найти первый отрицательный элемент в массиве. Найти сумму отрицательных элементов. Заменить все элементы, стоящие перед первым отрицательным элементом на сумму отрицательных элементов.
- //hemhai
- void vivod5(int a[], int n, int u, int summ)
- {
- }
- //9Найти минимальный элемент среди элементов, имеющих четный индекс. Найти минимальный элемент среди элементов, имеющих нечетный индекс. Заменить все элементы, стоящие между этими минимальными элементами на их индексы.
- void vivod6(int a[], int i, int u, int n)
- {
- for (int i = 0; i < n; i++) {
- if (i % 2) {
- if (a[i] <= u) {
- a[i] = u;
- }
- }
- else {
- if (a[i] <= u) {
- a[i] = u;
- }
- }
- }
- cout << a[i] << "\t";
- }
- //10Найти минимальный элемент среди положительных элементов массива. Заменить все отрицательные элементы массива на этот минимальный элемент.
- void vivod7(int a[], int i, int n, int y)
- {
- for (int i = 0; i < n; i++) {
- if (a[i] <= y && a[i] >= 0) {
- y = a[i];
- }
- {
- if (a[i] < 0)
- a[i] = y;
- }
- }
- cout << a[i] << "\t";
- }
- //11Найти второй по порядку минимальный элемент. Заменить все элементы, кратные трем, на этот элемент.
- void vivod8(int a[], int u, int n, int p, int)
- {
- for (int i = 0; i < n; i++) {
- if (a[i] <= u) {
- u = a[i];
- p++;
- if (p == 2) {
- if (a[i] % 3) {
- a[i] = u;
- }
- }
- }
- cout << a[i] << "\t";
- }
- }
- //12Найти минимальный элемент. Вставить после минимального элемента его индекс.
- void vivod9(int a[], int u, int n)
- {
- for (int i = 0; i < n; i++) {
- if (a[i] <= u) {
- u = a[i];
- }
- else {
- a[i] = 0;
- }
- cout << a[i] << "\t";
- }
- }
- //13Найти максимальный элемент. Найти количество элементов имеющих максимальное. Удалить все максимальные элементы из массива
- void vivod10(int a[], int u, int i, int n)
- {
- for (int i = 0; i < n; i++) {
- if (a[i] >= u) {
- u = a[i];
- }
- }
- if (a[i] = u) {
- a[i] = 0;
- }
- cout << a[i] << "\t";
- }
- //14Найти количество элементов, стоящих после последнего отрицательного элемента в массиве. Вставить после этого элемента найденное количество.
- void vivod11(int a[], int n)
- {
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement