Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "pch.h"
- #include <iostream>
- #include <time.h>
- #include <stdlib.h>
- using namespace std;
- void bubblesort(int *arr, int n)
- {
- cout << "Отсортированный по убыванию массив: " << endl;
- for (int i = 1; i < n; ++i)
- {
- for (int j = 0; j < n - i; j++)
- {
- if (arr[j] < arr[j + 1])
- {
- int temp = arr[j];
- arr[j] = arr[j + 1];
- arr[j + 1] = temp;
- }
- }
- }
- for (int i = 0; i < n; i++)
- {
- cout << arr[i] << " ";
- }
- }
- int bsearch(int *arr, int X, int n)
- {
- int index=0;
- cout << "Индекс первого элемента массива, строго меньшего Х: " << endl;
- for (int j = 0; j < n; j++)
- {
- if (arr[j] < X)
- {
- index = j;
- cout << endl;
- break;
- }
- }
- if (index < 0)
- return -1;
- return index;
- }
- int main()
- {
- setlocale(LC_ALL, "Rus");
- int *arr;
- int n, x, m;
- srand(time(0));
- cout << "Введите размерность массива: " << endl;
- cin >> n;
- if (n <= 0) {
- cerr << "Неверное значение размерности массива!" << endl;
- return 1;
- }
- arr = new int[n];
- cout << "Выберите вариант заполнения массива: " << endl;
- cout << " 1. Случайными числами." << endl;
- cout << " 2. Ввод значений вручную. " << endl;
- cin >> m;
- switch (m)
- { case 1:
- for (int i = 0; i < n; i++)
- {
- arr[i] = rand() % 100;
- }
- bubblesort(arr, n);
- cout << endl;
- break;
- case 2:
- cout << "Введите элементы массива: " << endl;
- for (int i = 0; i < n; i++)
- {
- cin >> arr[i];
- }
- bubblesort(arr, n);
- cout << endl;
- default:
- break;
- }
- cout << "Введите число X: " << endl;
- cin >> x;
- for (int i=0; i<n; i++)
- if (arr[i] > x)
- {
- break;
- }
- cout<<bsearch(arr, x, n)<<endl;
- delete[] arr;
- system("pause > NULL");
- }
Add Comment
Please, Sign In to add comment