Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лабораторные работы / сортировочка

.docx
Скачиваний:
25
Добавлен:
28.01.2014
Размер:
95.03 Кб
Скачать

#include "stdafx.h"

#include "conio.h"

#include "stdio.h"

#include "stdlib.h"

#include "iostream"

void main()

{

int a[10],m,t,temp,i,j,a1[10],b[10],min,k,x,y;

setlocale(LC_ALL, "rus");

/*printf("Введите нижний диапазон:");

scanf("%i",&x);

printf("Введите верхний диапазон:");

scanf("%i",&y);*/

for(int i=0;i<10;i++)

{

a[i]=rand()%10+1;

printf("% i",a[i]);

}

printf("\n\n");

setlocale(LC_ALL, "rus");

printf("\nВведите метод сортировки.\n1)пузырьковый метод\n2)метод вставкой\n3)сортировка посредством выбора\n");

scanf("%i",&m);

printf("Введите тип сортировки.\n1)по возростанию\n2)по убыванию\n");

scanf("%i",&t);

if((m==1)&&(t==1))

{

printf("Выбран пузырьковый метод по возростанию\n");

for (int i=0;i<10;i++)

{

for (int j=i;j<9;j++)

{

if (a[i]>a[j])

{

temp=a[i];

a[i]=a[j];

a[j]=temp;

}

}

for(int k=0;k<10;k++)

{

printf ("%i ",a[k]);

}printf ("\n");

}

}

if((m==1)&&(t==2))

{

printf("Выбран пузырьковый метод по убыванию\n");

for (int i=0;i<10;i++)

{

for (int j=i;j<9;j++)

{

if (a[i]<a[j])

{

temp=a[i];

a[i]=a[j];

a[j]=temp;

}

}

for(int k=0;k<10;k++)

{

printf ("%i ",a[k]);

}printf ("\n");

}

}

if((m==2)&&(t==1))

{

printf("Выбран метод вставкой по возростанию\n");

for(i=0;i<10;i++)

{

if(i==0)a1[i]=a[i];

else

{

for(j=i;j>=1;j--)

{

if(a[i]<a1[j-1])

{

a1[j]=a1[j-1];

a1[j-1]=a[i];

}

else if(j==i)a1[j]=a[i];

}

}

for(int k=0;k<10;k++)

{

if(k<=i)

{

printf("%i ",a1[k]);

}

else

{

a1[k]=0;

printf("%i ",a1[k]);

}

}

printf("\n");

}

printf("\n");

}

if((m==2)&&(t==2))

{

printf("Выбран метод вставкой по убыванию\n");

for(i=0;i<10;i++)

{

if(i==0)a1[i]=a[i];

else

{

for(j=i;j>=1;j--)

{

if(a[i]>a1[j-1])

{

a1[j]=a1[j-1];

a1[j-1]=a[i];

}

else if(j==i)a1[j]=a[i];

}

printf("\n");

}

for(int k=0;k<10;k++)

{

if(k<=i)

{

printf("%i ",a1[k]);

}

else

{

a1[k]=0;

printf("%i ",a1[k]);

}

}

printf("\n");

}

}

if((m==3)&&(t==1))

{

printf("Выбран сортировка посредством выбора по убыванию\n");

min=a[0];

k=0;

for(i=0; i<10; i++)

{

for(j=1; j<10; j++)

{

if(a[j]>min)

{

min=a[j];

k=j;

}

}

b[i]=min;

a[k]=NULL;

for(int k1=0; k1<i; k1++)

{

printf("%i ",b[k1]);

}

min=a[i];

k=i;

printf("\n");

}

}

if((m==3)&&(t==2))

{

printf("Выбран сортировка посредством выбора по возростанию\n");

min=a[0];

k=0;

for(i=0; i<10; i++)

{

min=a[i];

k=i;

for(j=1; j<10; j++)

{

if(a[j]<min)

{

min=a[j];

k=j;

}

}

b[i]=min;

a[k]=123131;

for(int k1=0; k1<i; k1++)

{

printf("%i ",b[k1]);

}

printf("\n");

}

}

getch();

}