24.11.2014 Views

Программирование на С++ - eDrive

Программирование на С++ - eDrive

Программирование на С++ - eDrive

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

9<br />

void MySwap (double &a, double &b)<br />

3. Сортировка строк методом «пузырька». Реорганизовать сортировку расчетного<br />

массива в сортировку строк, в ходе которой элементы первого и<br />

второго массивов следуют за соответствующими элементами расчетного<br />

массива. Для этого функция перестановки вызывается трижды, и при каждом<br />

вызове ей передаются данные следующего массива.<br />

4. Быстрая сортировка массива. Дополнить форму четвертой кнопкой с обработчиком,<br />

выполняющим сортировку расчетного массива в убывающем<br />

порядке с использованием библиотечной функции qsort:<br />

qsort ((void*) myVector2, gridRows, sizeof (double), MySortFunc);<br />

Текст функции сравнения элементов массива, предусмотренный синтаксисом<br />

qsort, может быть, <strong>на</strong>пример, таким:<br />

int MySortFunc( const void *a, const void *b)<br />

{ return *(double*) a > *(double*) b ? –1 : 1; }<br />

Задачи<br />

1. Разработать функцию сортировки методом «пузырька» по убыванию з<strong>на</strong>чений<br />

массива.<br />

2. Разработать функцию сортировки qsort по возрастанию з<strong>на</strong>чений массива.<br />

3. Разработать функцию сортировки qsort произвольно выбираемого<br />

пользователем массива.<br />

4. Разработать функцию сравнения элементов массива qsort, возвращающую<br />

один из трех результатов: 1 при a > b, –1 при a < b, 0 при a = b.<br />

5. Разработать функции поиска минимального и максимального элементов<br />

массива без использования файла заголовка Math.hpp.<br />

Работа 3. Классы<br />

Задание<br />

Чтобы <strong>на</strong>учиться создавать и использовать авторский класс, разработать проект<br />

с формой, а<strong>на</strong>логичной предыдущей работе. В этом проекте все действия<br />

<strong>на</strong>д массивами – их формирование, выполнение групповых операций и сортировка<br />

с использованием функции qsort – должны выполняться средствами<br />

авторского класса.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!