Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
33
Добавлен:
10.05.2014
Размер:
1.11 Кб
Скачать
//Сортировка прямым включением
#include <iostream>
#include <stdio.h>
#include <math.h>
#define n 21

using namespace std;

int ass, compr;
char mass[n];

void input(void)
{
     int i;
     for (i=1; i<n; i++)
     {
         mass[i]=110+12*sin(i); //Random
         //mass[i]=n-i; //убывание
         //mass[i]=i; //возрастание
     }
}


void output(void)
{
     int i;
     for (i=1; i<n; i++) //Массив начинается в 1. Нулевой зарезервирован.
     {
         cout << mass[i] << " ";
     }
     cout << "\n";
}


void St_In()
{
	int i,j,x;
	for (i=2; i<n; i++)
    {
		x=mass[i];
		ass++;
        mass[0]=x;
        ass++;
        j=i;
        compr++;
        while (x<mass[j-1])
        {
			mass[j]=mass[j-1];
            j--;
            compr++;
            ass++;
        }
        mass[j]=x;
        ass++;
    } 
}


int main(void)
{
    input();
    output();
    St_In();
    output();
    cout << "--------" << "\n";
    cout << "compr=" << compr << "\n";
    cout << "ass=" << ass << "\n";
    cin >> ass;
}
Соседние файлы в папке 1