Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.02.2020, 20:58   #1
sasha1504
 
Регистрация: 20.10.2019
Сообщений: 9
Восклицание C++,сортировки,анимация

Есть код программы.На рандом в Memo 1 формируется массив из 7 элементов(нажатием на Button1). Нажатием на Button2 массив шейкер-сортировкий сортируется по возрастанию в Memo2. Нужно сделать анимацию этой сортировки(прямоугольниками например.что-то вроде гифки).Помогите,пожалуйста.
Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
const int N=7;
int array1[N],array2[N];
void ShakerSort(int *mas) {

int left=0;
int right=N-1;
while (left<=right) {
for (int i=right;i>left; --i) {
if (mas[i-1]>mas[i]) {
int a =mas[i-1];mas[i-1]=mas[i];mas[i]=a;
}
}
++left;
for (int i=left;i<right;++i) {
if (mas[i]>mas[i+1]) {
int a =mas[i];mas[i]=mas[i+1];mas[i+1]=a;
}
}
--right;
}

}



//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
srand(time(NULL));
for (int i=0; i < N; i++) {
array1[i]=rand()%100;
Memo1->Lines->Add(IntToStr(array1[i]));
array2[i]=array1[i];
}
Button2->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
for (int i=0;i<N;i++) {
array2[i]=array1[i];
}
ShakerSort(array2);
for(int i=0;i<N;i++) {
Memo2->Lines->Add(IntToStr(array2[i]));
}
}
//---------------------------------------------------------------------------
sasha1504 вне форума Ответить с цитированием
Старый 24.02.2020, 14:28   #2
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Поиском по форуму пройдитесь, не Вы первый.
визуализация сортировки
Визуализация алгоритмов сортировки на C++ в QT Creator
Визуализация сортировки
I am not a wizard, I am just learning.
Desc вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
анимация сортировки на языке си 27843870 Помощь студентам 5 07.08.2019 15:55
Пример быстрой сортировки массива строк и сортировки методом выбора Вероника99 Помощь студентам 1 12.12.2016 19:23
Программа, сортирующая исходный одномерный массив целых чисел методами пузырьковой сортировки и сортировки прямым выбором (язык С) igor01 Помощь студентам 7 16.05.2014 23:21
Сравнить эффективность алгоритмов шейкерной сортировки и сортировки слиянием (язык C) Ольга210993 Помощь студентам 2 20.09.2012 13:52
Алгоритмы сортировки пирамидальный(кучей) и быстрой сортировки (с++) mmd12 Помощь студентам 4 17.05.2012 14:14