С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 24.12.2020
Сообщений: 6
1

Метод Шейкера и динамические массивы

23.05.2021, 21:23. Показов 1116. Ответов 1

Author24 — интернет-сервис помощи студентам
Помогите, пожалуйста, написать код программы которая создает динамический массив с количеством элементов на выбор пользователя. Метод сортировки - Метод Шейкера, Тип данных массива - char, Принцип сортировки - по убыванию.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.05.2021, 21:23
Ответы с готовыми решениями:

Метод Шейкера
Препод дал вот такой вот алгоритм решения методом Шейкера для Си. Другой препод дал мне задание...

Динамические массивы и функции. Динамические массивы.
Дана матрица 6х8 целого типа. Создать одномерный массив, содержащий элементы матрицы, кратные...

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц)
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник...

Структуры, массивы, указатели, динамические массивы структур
Помогите с решением задачи (прикрепляю условие). Заранее спасибо.

1
319 / 216 / 114
Регистрация: 14.05.2020
Сообщений: 890
23.05.2021, 21:36 2
Лучший ответ Сообщение было отмечено Mika4ka как решение

Решение

Mika4ka,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
using namespace std;
 
void cocktailSort(char* arr, size_t size)
{
    if(!arr) return; 
    int l = 0, r = size - 1;
    bool swapped = true;
    
    while(swapped)
    {
        swapped = false;
        for(int i = l; i < r; ++i)
        {
            if(arr[i] < arr[i + 1])
            {
                std::swap(arr[i], arr[i + 1]);
                swapped = true;
            }
        }
        if(!swapped) break;
        swapped = false;
        --r;
        for(int i = r - 1; i >= l; --i)
        {
            if(arr[i] < arr[i + 1])
            {
                std::swap(arr[i], arr[i + 1]);
                swapped = true;
            }
        }
        ++l;
    }
}
 
int main(void)
{
    size_t size; std::cin >> size;
    char* arr = new char[size];
    
    
    for(size_t i = 0; i < size; ++i) std::cin >> arr[i];
    
    
    cocktailSort(arr, size);
    
    for(size_t i = 0; i < size; ++i)
    {
        std::cout << arr[i] << " ";
    
    }
    
    
    delete[] arr;
    arr = nullptr;
 
 
    std::cin.get();
    return EXIT_SUCCESS;
}
0
23.05.2021, 21:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.05.2021, 21:36
Помогаю со студенческими работами здесь

«Структуры, массивы, указатели. Динамические массивы структур»
«Покупатель»: фамилия; имя; отчество; пол; национальность; рост; вес; дата рождения (год, месяц...

Массивы и Динамические массивы: организовать ввод квадратной матрицы размера nxn из целых чисел и выполнить дополнительные задания
Добрый день) Помогите, пожалуйста, вновь. Делаю начало..а дальше уже не выходит (2 и 3 задания) ...

Переделать программу таким образом, чтобы использовались не статичные массивы и константы для их объявления, а динамические массивы (Сумма матриц)
#include &quot;stdafx.h&quot; #include &lt;conio.h&gt; #include &lt;locale.h&gt; #include &lt;time.h&gt; #include...

Статические массивы,Динамические массивы,строки
1)Создать двумерный массив A(N,M) целых положительных и отрицательных чисел с помощью функции...

Динамические массивы
Есть программа. Не получается переделать статические массивы в динамические. Можете помочь? ...

Динамические массивы.
Дан одномерный массив, состоящий из 30 целых чисел. Создать другой массив, содержащий элементы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru