Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

графическая интерпретация сортировки массива

42K
13 октября 2008 года
So1id
1 / / 13.10.2008
помогите пожалуйста кто нибудь доделать задачу по программированию
надо, чтобы программа показывала как массив сортируется.
вот мои наработки по сортировки выбором.
Цитата:
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
int main(){ // sortirovko viborom
const n=10;
int b[n]={100,23,-23,35,-60,7,45,-45,-100,-1};
int i,j;
clrscr();
// puts("Vvedite elemnti massiva");
// for ( i=0; i<n; i++)
// scanf("%d", &b);
// clrscr();
// textcolor(GREEN);
for(i=0;i<n;i++)
printf("%4i\n",b);
getch();
for( i=1; i<n-1; i++)
{ int imin=i;
gotoxy(1,i);//????
printf(" %4i",b);
getch(); getch();
for( int j=i+1; j<n; j++)
if (b[j]<b[imin])
{ imin=b; int nom=i; }
/* int c=b;
b=b[imin];
b[imin]=c; } */
{
// gotoxy(1,imin+1); //?
printf(" %4i\n",imin);
printf("%4i ",b[j]);
// b[j+1]=b[j]; //??
getch();
}
b[j+1]=imin;
gotoxy(1,j+2);
printf("%4i ",imin);
getch();

if (b[j]<b[imin])
{ imin=j;
int c=b;
b=b[imin];
b[imin]=c; }
b[imin]=i;
gotoxy(1,i);
// gotoxy(1,i+1);
//gotoxy(1,i+2);
//gotoxy(1,i+3);
printf("%4i ",b);
getch(); }
puts("otsortirovannii massivjke");
// for ( i=0; i<n; i++)

// printf("[#%d]%d\n",i, b);
getch();
}



CО ВСТАВОЧНОЙ СОРТИРОВКОЙ ПОЛУЧИЛОСЬ. По идее примерно также должно получится и с выборочной сортировкой, но из-за условного оператора не получается.

Цитата:
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
int main(){ //vstavko sortirovko
const n=10;
int b[n]={100,23,-23,35,-60,7,45,-45,-100,-1};
int i;
clrscr();
// puts("Vvedite elemnti massiva");
// for ( i=0; i<n; i++)
// scanf("%d", &b);
clrscr();
textcolor(WHITE);
for(i=0;i<n;i++)
printf("%4i\n",b);

for( i=1; i<n; i++)
{ int tmp=b;
gotoxy(1,i+1);
printf(" %4i",tmp);
getch();
for( int j=i-1; j>=0&&b[j]>tmp; j--)
{
gotoxy(1,j+1);
printf(" %4i\n",tmp);
printf("%4i ",b[j]);
b[j+1]=b[j];
getch();
}
b[j+1]=tmp;
gotoxy(1,j+2);
printf("%4i ",tmp);
getch();
}
puts("otsortirovannii massivjke");
// for ( i=0; i<n; i++)

// printf("[#%d]%d\n",i, b);
getch();
}

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог