Ввод логических переменных с клавиатуры.

В отличие от переменных целого, вещественного или символьного типов данных, булевские переменные нельзя вводить с клавиатуры, их можно только выводить на экран. Однако можно использовать небольшую хитрость. Для того чтобы можно было ввести булевскую ...

Abs, Sqr в Pascal.

Abs - функция языка Паскаль, которая вычисляет модуль числа.
Sqr - функция языка Паcкаль, которая возводит число в квадрат.

Ввод символов с клавиатуры.

Ввод символов с клавиатуры почти не отличается от ввода чисел с клавиатуры. Для того чтобы ввести какие-то символы (буквы, знаки и т.д.) с клавиатуры необходимо для переменных использовать символьный тип данных Char.

Циклы и массивы

Вычисление предела последовательности.

Вычисление предела последовательности является типичной задачей на использование итерационного цикла.

Оператор варианта CASE.

Иногда его называют также оператором выбора. Это оператор CASE, который является обобщением оператора IF и позволяет сделать выбор из произвольного числа имеющихся вариантов.

Сортировка простым включением.
Пример 33. Методом простого включения упорядочить (отсортировать) в порядке возрастания массив из 8 целых чисел (44, 55,12,42, 94, 18, 06, 67).

Этот метод используют игроки в карты, перебирая все карты по очереди, начиная со второй и ставя ее на свое место по старшинству среди стоящих левее карт.


PROGRAM PR33;
CONST
X: ARRAY [1.. 8] OF INTEGER = (44, 55,12,42, 94,18,06, 67);
VAR    
L, I, J: INTEGER;
BEGIN { Вывод на экран исходного массива X }
FOR I := 1 ТО 8 DO WRITE(X[I]:5);
WRITELN;
FOR      I:=2 TO 8
DO       BEGIN
             J:= I-1; L:= X[I];
             WHILE (J > 0) AND (L < Х[I])
             DO    BEGIN        { Переставить Х[J] на место Х[J+1]}
                       X[J+1]:=X[J];
                       J:=J-1;
                      END;
                      X[J+1]:=L
                      END;
{ Вывод на экран отсортированного массива X}
FOR I := 1 ТО 8 DO WRITE(X[I]:5);
WRITELN
END.


Сортировка простым выбором.
Пример 34. Методом простого выбора упорядочить (отсортировать) в порядке возрастания массив из 8 целых чисел (44, 55,12,42, 94,18, 06, 67).
Этот метод более предпочтителен, чем сортировка простым включением. Концептуальная модель этого метода состоит в следующем. Начиная с первой позиции, просматриваются все N элементов и находится номер К наименьшего из элементов. Элемент К ставится на первое место. А элемент, стоявший на втором месте, перемещается на место К. На втором проходе I = 2 первый элемент уже не рассматривается. Рассматриваются оставшиеся N-1 элементы и среди них находится наименьший элемент, имеющий номер К. Этот элемент ставится на второе место, а элемент со второго места смещается на место К. Этот процесс продолжается до тех пор, пока не будет просмотрен весь массив X, содержащий N элементов.


PROGRAM PR34;
CONST
X: ARRAY [1.. 8] OF INTEGER = (44, 55,12,42,94, 18,06,67);
VAR    
K,L, I, J: INTEGER;
BEGIN   { Вывод на экран исходного массива X }
FOR      I := 1 ТО 8 DO WRITE(X[I]:5);
WRITELN;
FOR      I := 1 TO 7
DO       BEGIN
             K:= I;
             FOR J := I + 1 TO 8 { Поиск номера К наименьшего X[I]... Х[К]}
             DO IF Х[J] < X[K] THEN К := J;
             { Переставить Х[K] на место Х[I]}
             L:=X[I];
             X[I] := Х[К];
             Х[К] := L;
             END;
{ Вывод на экран отсортированного массива X }
FOR I := 1 ТО 8 DO WRITE(X[I]:5);
WRITELN
END.


Из всех примеров нетрудно заметить одно существенное неудобство, связанное с использованием регулярных типов. Оно состоит в том, что необходимо сразу фиксировать число элементов массива. В отдельных случаях заранее не известна размерность массива, подлежащего обработке. Например, может возникнуть необходимость в одном случае отсортировать массив в 20 вещественных чисел, а в другом 100. Поэтому в программу приходится вносить исправления. Профессиональная диагностика жесткого диска от опытных мастеров, также Вы можете заказать услугу восстановления данных. Здесь помогает понятие константы, описанной в разделе CONST. Достаточно заменить описание N = 20 на N = 30, или N = 100 и больше никаких исправлений в программе не потребуется. Либо использовать переменную N, значение которой вводится либо пользователем с клавиатуры, либо присваивается в программе.


Предыдущая статья: Сортировка одномерного массива. Метод пузырька.
Оглавление: Лекции по Pascal.
Следующая статья: Многомерные массивы.


Комментарии  

 
-2 # мтимт 24.11.2012 11:16
примеры не работают даже после исправления :lol: :lol: :lol:
 
 
0 # AkumaGlacier 26.12.2012 22:15
Код исправить - как два бита передать, но оформление просто убивает. Чесслово.
 
 
0 # AkumaGlacier 26.12.2012 22:18
Это не женская тяга к прекрасному. Это просто вопрос здравого смысла.
 
 
+1 # не важно кто 10.03.2017 09:29
:lol: в принципе идея ведь понятна
 
 
0 # Лорд 08.09.2017 16:21
Покомпилируем, посмотрим. Я люблю ошибки в программах исправлять, не плохая это тренировка.
 
   ГлавнаяПаскальЛекции по ПаскальТип данных Integer.