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

Описать класс, делающий сортировку целочисленного одномерного массива, с использованием всего 5-ти операторов

06.06.2012, 10:14. Показов 782. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задача:
Описать класс, делающий сортировку целочисленного одномерного массива, с использованием всего 5-ти операторов (т.е. кол-во операторов ограничено всего пятью).

Как сделать такой класс? Использовать сторонние библиотеки вроде как нельзя. Все мои идеи требуют значительно больше, чем пять операторов
Буду очень признателен помощи и объяснениям по коду.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.06.2012, 10:14
Ответы с готовыми решениями:

Вычислить значения 31 элементов одномерного целочисленного массива F в интервале (-9,6) с использованием ГСЧ
Помогите пожалуйста с задачей завтра защита курсовой а в этой теме не чего понять не могу ...

Выполнить сортировку целочисленного массива
Выполнить сортировку целочисленного массива (поиск в массиве) из n элементов. Алгоритм сортировки...

Удаление элементов целочисленного одномерного массива, кратных первому элементу этого массива
Составьте программу удаления элементов целочисленного одномерного массива A(N),кратных первому...

Функция, которая удаляет из целочисленного одномерного массива все, и возвращает новый размер массива
Разработать и испытать функцию, которая удаляет из целочисленного одномерного массива все, и...

3
348 / 269 / 128
Регистрация: 14.11.2010
Сообщений: 482
06.06.2012, 16:54 2
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
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <ctime>
using namespace std;
class Mass
{
private:
    static const int size=15;
    int mas[size];
public:
    Mass();
    void Output();
    void Sort();
};
Mass::Mass()
{
    srand((unsigned)time(NULL));
    for(int i=0;i<size;i++)
    {
        mas[i]=rand()%100;
    }
}
void Mass::Output()
{
    cout<<"Massiv: "<<endl;
    for(int i=0;i<size;i++)
    {
        cout<<mas[i]<<" ";
    }
}
void Mass::Sort() // пузырьковая сортировка, самая короткая и простая. Что использовать ещё меньше операторов, нужно подключать библиотеки.
{
    for(int i=0;i<size;i++)
    {
        for(int j=0;j<size-1;j++)
        {
            if(mas[j]>mas[j+1])
            {
                int temp=mas[j];
                mas[j]=mas[j+1];
                mas[j+1]=temp;
            }
        }
    }
}
int main()
{
    Mass obj;
    obj.Output();
    obj.Sort();
    cout<<endl;
    obj.Output();
    getch();
    return 0;
}
0
0 / 0 / 0
Регистрация: 10.01.2012
Сообщений: 8
06.06.2012, 20:49  [ТС] 3
Большое спасибо за помощь, Андрей!
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
07.06.2012, 08:52 4
Цитата Сообщение от Andrey.K Посмотреть сообщение
for(int i=0;i<size;i++) { for(int j=0;j<size-1;j++) { if(mas[j]>mas[j+1]) { int temp=mas[j]; mas[j]=mas[j+1]; mas[j+1]=temp; } } }
Сичтаем: for, =, <, >, ++, +, []. Итого 7.
Для сортировки необъодимы:
1. Опретор цикла.
2. Оператор присваивания.
3. Опретор сложения, инкремента, декремента, или вычитания.
4. Оператор индексации, или размыенования.
5. Опретор сравнения.
Всё, пять штук уже есть. Два разных сравнения исключаются, также исключается одновременное применение и сложения, и инкремента.

Добавлено через 8 минут
По такому условию будет:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void Mass::Sort()
{
    for(int i=0;i<size-1;i=i+1)
    {
        for(int j=i+1;j<size;j=j+1)
        {
            if(mas[j]<mas[i])
            {
                int temp=mas[i];
                mas[i]=mas[j];
                mas[j]=temp;
            }
        }
    }
}
Вот теперь их 5.
0
07.06.2012, 08:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.06.2012, 08:52
Помогаю со студенческими работами здесь

Удаление элементов из целочисленного одномерного массива
Доброго времени суток! У меня возникла небольшая проблема и после нескольких дней безуспешных...

Реализовать сортировку выбором (в порядке убывания значений) для целочисленного массива
Реализовать сортировку выбором (в порядке убывания значений) для целочисленного массива arr...

Вычислить значения 36 элементов одномерного целочисленного массива
программу записал, но нужно проверить, есть ошибка в нахождении максимального значения ...

Вычислить значения 42 элементов одномерного целочисленного массива
Вычислить значения 42 элементов одномерного целочисленного массива Y в интервале (-10, 6) с...


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

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