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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2009, 21:56   #1
Ueshua
 
Регистрация: 19.12.2009
Сообщений: 9
По умолчанию Дополнения к алгоритму Шелла.

Задача (реализовать на visual c++6)
Запрограммировать алгоритм Шелла сортировки одномерного массива действительных чисел. Подсчитать количество перестановок и сравнений элементов, и вывести массив, для которого требуется максимальное количество перестановок и сравнений.

Начал так:
Код:
#include <stdio.h>
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <math.h>

void shell_sort(int array[], int N){
	int temp, Middle, change, i;

	Middle=N/2;
	do
	{
		do
		{
			change=0;
			for (i=0; i<N-Middle; i++)
				if (array[i]>array[i+Middle])
				{
					temp=array[i];
					array[i]=array[i+Middle];
					array[i+Middle]=temp;
					change=1;
				}
		}while (change);
	}while (Middle!=Middle/2);
}

main()
{int Size,i;
 cout<<"Array's size: ";
 cin>>Size;
 int array[255];
 for (i=0;i<Size;i++)
 {
   cout<<"array["<<i<<"]=";
 	cin>>array[i];
 }
	
	shell_sort(array, Size);
	for (i=0; i<Size; i++)
		printf("%d",array[i]);
	cout<<"Kol-vo perestanovok="<<change<<endl;
	getch(); 
	return 0;
}
(change - кол-во перестановок)
Однако столкнулся с проблемой: после того, как ввожу последний элемент массива, программа не предпринимает никаких действий. Также не знаю, как считать кол-во сравнений и вывести массив, треб. максимального количества перестановок и сравнений.

Посоветуйте, как быть. Заранее спасибо.
Ueshua вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дополнения для Delphi 7 Alex Cones Софт 15 26.09.2009 12:07
Дополнения в форму. sergiksergik Microsoft Office Excel 4 11.06.2009 23:13
Шифрование по алгоритму RSA Эльмирчик (ms) Помощь студентам 1 05.06.2009 20:51
дополнения firefox точка Помощь студентам 1 13.02.2009 16:32