Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > C/C++/С#


Ответ
 
Опции темы Опции просмотра
Старый 02.04.2018, 21:57   #1 (permalink)
Олександра
Новичок
 
Регистрация: 02.04.2018
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Exclamation Помогите доделать задание на C++

1. Данная последовательность из 20 целых чисел, заполненная в промежутке [1; 20].
a. Отсортировать первые 10 элементов последовательности по возрастанию, последние 10 - наоборот (используя алгоритм быстрой сортировки).
b. Организовать поиск введенного пользователем числа в получении последовательности с помощью алгоритма бинарного поиска.
Вот что смогла написать
Код:
#include <iostream>
#include <ctime>
using namespace std;
 
void Set(int array[], int n);
void Print(int array[], int n);
void quickSort(int mas[], int n);
 
int main()
{
    const int s = 20;
    srand(time(NULL));
    int a[s];
    Set(a, s);
    Print(a, s);
    cout << "\n";
    quickSort(a, s);
    Print(a, s);
    system("pause");
    return 0;
}
 
void Set(int array[], int n)
{
    for (int i = 0; i < n; i++)
        array[i] = rand() % 20 + 1;
}
 
void Print(int array[], int n)
{
    for (int i = 0; i < n; i++)
    {
        cout << array[i] << " | ";
    }
}
 
void quickSort(int mas[], int n)
{
    int m = mas[n / 2], i = 0, j = n - 1;
    do
    {
        while (mas[i] < m)
            i++;
        while (mas[j] > m)
            j--;
        if (i <= j)
        {
            int temp = mas[i];
            mas[i] = mas[j];
            mas[j] = temp;
            i++;
            j--;
        }
    } while (i <= j);
    if (i < n)
        quickSort(mas + i, n - i);
    if (j > 0)
        quickSort(mas, j);
}
Олександра вне форума   Ответить с цитированием

Старый 02.04.2018, 21:57
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Пожалуйста, внимательно пролистайте данные посты

Помогите доделать программу
Помогите доделать код
Помогите доделать
Помогите доделать задание на массив

Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 03:41.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.