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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2011, 08:53   #1
Belka.ru
Пользователь
 
Регистрация: 05.12.2011
Сообщений: 11
По умолчанию Сортировка выбором С++

нужно отсортировать массив сортировкой выбора.при этом посчитать количество сравнений и присваиваний.прошу найти ошибку, т.к. не сортируется массив и количество сравнений и присваиваний выходит неправильно.

вот мой:
Код:
for (i=0;i<n;i++)
		cin >> x[i];
	cout << endl;
	q=0;z=0;
	for (i=0;i<n;i++){
		int min=i;
		for(j=i+1;j<=n;j++){
				q++;
			if(x[j]<x[min]){
		min=j;
			}
		if(min!=i)
		swap(x[i],x[min]);
			z++;
	}
	}
	for (i=0;i<n;i++)
	cout << x[i] << " ";
	cout << endl;
	cout << "количество сравнений = " << q << "\n";
	z=z*3;
	cout << "количество присваиваний = " << z << "\n";
	cout << endl;
Belka.ru вне форума Ответить с цитированием
Старый 11.12.2011, 13:10   #2
onewho
Форумчанин
 
Регистрация: 29.09.2010
Сообщений: 636
По умолчанию

у вас 1 из скобок должна закрываться перед строкой
Код:
		if(min!=i)
onewho вне форума Ответить с цитированием
Старый 11.12.2011, 19:02   #3
Belka.ru
Пользователь
 
Регистрация: 05.12.2011
Сообщений: 11
По умолчанию

спасибо,только почему-то он перестал сортировать,точнее он сортирует весь массив, кроме первого числа

Код:
for (i=0;i<n;i++)
		cin >> x[i];
	cout << endl;
	q=0;z=0;
	for (i=0;i<n;i++){
		int min=i;
		for(j=i+1;j<=n;j++){
				q++;
			if(x[j]<x[min]){
		min=j;
			}
			}
		if(min!=i)
		swap(x[i],x[min]);
			z++;
	}
	for (i=0;i<n;i++)
	cout << x[i] << " ";
	cout << endl;
	cout << "количество сравнений = " << q << "\n";
	z=z*3;
	cout << "количество присваиваний = " << z << "\n";
	cout << endl;

Последний раз редактировалось Belka.ru; 11.12.2011 в 19:07.
Belka.ru вне форума Ответить с цитированием
Старый 12.12.2011, 05:57   #4
Belka.ru
Пользователь
 
Регистрация: 05.12.2011
Сообщений: 11
По умолчанию

что никто не знает что ли???
Belka.ru вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка простым выбором vit9i Помощь студентам 1 31.05.2011 20:41
Сортировка выбором Novi4ok_11 Помощь студентам 2 20.01.2011 14:06
Сортировка выбором.. AronakSS Паскаль, Turbo Pascal, PascalABC.NET 1 09.10.2010 13:27
Сортировка выбором в Паскале! wrmarw Помощь студентам 9 11.05.2010 18:53
Сортировка выбором curly182 Общие вопросы C/C++ 3 24.05.2009 13:45