русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Упорядочение массива по возрастанию.


Дата добавления: 2014-11-27; просмотров: 783; Нарушение авторских прав


Упорядочения массивов по какому-либо признаку называ­ются также сортировками. Существуют различные методы сортировок, различающиеся, в основном, по скорости получе­ния результата. Рассмотрим один из них — «метод пузырька». Пусть имеется последовательность чисел al, a2, ..., an, кото­рую необходимо упорядочить по возрастанию. Зафиксируем первый элемент и будем последовательно сравнивать его со стоящими справа. Если какой-то из элементов справа окажет­ся меньше первого, то мы поменяем местами этот элемент с первым и продолжим сравнение уже нового элемента, стоя­щего на первом месте, с оставшимися справа числами.

 

Если снова выявится элемент, меньший зафиксированного, то пов­торим перестановку. В результате первого просмотра последо­вательности на первом месте окажется наименьший из всех элементов, т. е. он, как более «легкий», как бы всплывает на­верх (отсюда и название метода — «метод пузырька»). Теперь зафиксируем второй элемент и повторим просмотр, выполняя при необходимости перестановки элементов, и т. д. Уяснив идею решения, остановимся на двух вопросах: каким образом фиксировать элементы и как осуществить перестановку двух элементов? Чтобы при переборе элементов, стоящих справа от проверяемого, не менялся индекс последнего, индексы фик­сируемого и стоящих правее него элементов должны быть раз­личными: i и j. Индекс i изменяется от 1 до n — 1, индекс j всегда на 1 больше i и пробегает все значения от i + 1 до п. Для каждого значения i индекс j должен последовательно при­нять все допустимые значения, следовательно, конструкция программы, отражающая полный перебор всех элементов и их упорядочение по возрастанию, представляет собой двойной цикл. При перестановке двух элементов используется третья переменная. Перестановка местами (обмен значениями в па­мяти) двух переменных а и Ь выглядит следующим образом: 1) с: = а; 2) а: = b; 3) b: = с.



Программа сортировки методом пузырька имеет вид:

program Е14;

const n = 7;

var a : array [ 1.. n ] of real; i, j: integer; c: real;

Begin

for i: = 1 to n do

Begin

write ('a [', i, ‘] = ');

readln (a [ i ])

end;

fori: = 1 to n - 1 do

for j: =i + 1 to n do

if a[i]>a[j] then begin

c: = a [ i ];

a [ i ] : = a [ j ];

a [ j ] : = c

end;

writeln('упорядоченный по возрастанию массив ');

for i: = 1 to n do

write (a [ i ])

End.



<== предыдущая лекция | следующая лекция ==>
Нахождение наибольшего элемента массива. | Поиск элемента в массиве.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.468 сек.