- •Содержание:
- •Упр. 41. Ввести строку с клавиатуры и заменить все буквы «а» на буквы «б». 67
- •Writeln('Введите строку'); 67
- •1. Что такое величина типа String? Как описать переменную-строку? 67
- •§1. Понятие алгоритма. Свойства, виды и формы представления алгоритмов
- •§ 2. Введение в язык программирования Pascal
- •Write(список выражений и/или переменных); Writeln(список выражений и/или переменных);
- •№4. Вывести на экран рисунок из букв § 3. Типы величин. Переменные. Присваивание.
- •§ 5. Арифметические операции
- •§ 4.Оператор ввода.
- •§ 6. Стандартные математические функции
- •§ 7. Логические выражения
- •§ 8. Решение задач по теме «Линейные программы. Логические величины.»
- •§ 9. Условный оператор
- •В общем случае полная форма условного оператора имеет вид:
- •Условный оператор работает по следующему алгоритму.
- •§ 10. Решение задач
- •§ 11. Вложенные условные операторы
- •§ 12. Цикл с предусловием
- •Представим всю информацию о цикле с предусловием в таблице:
- •§ 13. Решение задач по теме «Цикл с предусловием»
- •§ 14. Цикл с постусловием
- •§ 15. Решение задач по теме «Цикл с постусловием»
- •§ 16. Цикл с параметром (счетчиком)
- •Общая форма записи цикла со счетчиком (параметром)
- •§ 17. Решение задач по теме «Цикл со счетчиком»
- •§ 18. Линейные массивы: описание, ввод, вывод
- •§ 19. Заполнение массива случайными числами и его обработка
- •§ 20. Замены и перестановки в массиве.
- •§ 21. Поиск максимального элемента
- •§ 22. Сортировка линейного массива
- •Сортировка методом простого выбора (простой перебор)
- •Сортировка массива по возрастанию:
- •§ 23. Двумерные массивы (матрицы)
- •§ 24. Обработка двумерного массива (матрицы)
- •§ 25. Символьный тип данных
- •№57. Вводится код символа (любое число 0-255). На экран выводится символ с данным кодом. § 26. Строковый тип данных, операции и функции.
- •Упр. 41. Ввести строку с клавиатуры и заменить все буквы «а» на буквы «б».
- •Writeln('Введите строку');
- •Что такое величина типа String? Как описать переменную-строку?
- •§ 27. Процедуры для работы со строковыми величинами.
- •§ 28. Подпрограммы пользователя
§ 21. Поиск максимального элемента
Задачу поиска минимального элемента массива рассмотрим на примере массива целых чисел.
А
лгоритм
поиска минимального (максимального)
элемента массива довольно очевиден:
сначала делается предположение, что
значение первого элемент массива
является минимальным (максимальным),
затем остальные элементы массива
последовательно сравниваются с этим
значением. Если во время очередной
проверки обнаруживается, что проверяемый
элемент меньше (больше) принятого за
минимальный (максимальный), то этот
элемент становится минимальным
(максимальным) и продолжается проверка
оставшихся элементов. Для запоминания
максимального значения будем использовать
переменную Max,
а чтобы запомнить индекс максимального
значения - переменную iMax.
Упражнение 38. Заполнить массив целыми случайными числами от 50 до 149 и вывести на экран. Найти максимальное значение в массиве и его номер (индекс).
program maximum;
const N = 5;
var a: array [1..N] of integer;
i, iMax, Max: integer;
begin {цикл заполнения массива случайными числами и вывода на экран:}
writeln('Исходный массив:');
for i:=1 to N do begin
a[i] := random(100) + 50;
write(a[i]:4);
end;
{начинаем поиск максимума и его индекса}
max := a[1]; { считаем, что первый – максимальный, запоминаем его значение }
iMax := 1; {запоминаем индекс}
for i:=2 to N do { проверяем все остальные }
if a[i] > max then { нашли новый максимальный }
begin max := a[i]; { запомнить значение a[i] – новое максимальное значение }
iMax := i; { запомнить i – индекс нового максимального значения}
end;
writeln; {перейти на новую строку}
writeln('Максимальный элемент a[', iMax, ']=', a[iMax]);
end.
Домашние вопросы и задачи:
Как работает алгоритм поиска максимума (минимума в массиве).
Объясните по блок-схеме, как найти максимум из 5 элементов.
№52. Заполнить массив из 10 элементов случайными числами в интервале [-10..10] и найти в нем максимальный и минимальный элементы и их номера.
: Исходный массив: 4 -5 3 10 -4 -6 8 -10 1 0
максимальный a[4]=10 минимальный a[8]=-10
№ 53. Заполнить массив из 10 элементов случайными числами в интервале [-10..10] и найти в нем два максимальных элемента и их номера.
Пример: Исходный массив: 4 -5 3 10 -4 -6 8 -10 1 0
максимальные a[4]=10, a[7]=8
§ 22. Сортировка линейного массива
Задачи сортировок массивов предполагают расположить элементы массива по закономерности (по возрастанию, по алфавиту, в порядке убывания модулей и т.д.).
Сортировка методом простого выбора (простой перебор)
Это наиболее естественный алгоритм упорядочивания. При данной сортировке из массива выбирается элемент с наименьшим значением и обменивается с первым элементом. Затем из оставшихся n - 1 элементов снова выбирается элемент с наименьшим ключом и обменивается со вторым элементом, и т.д.
Шаги алгоритма:
находим минимальное значение в текущей части массива;
производим обмен этого значения со значением на первой неотсортированной позиции;
далее сортируем хвост массива, исключив из рассмотрения уже отсортированные элементы.
