Процедуры STR и VAL.

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

...

Процедуры Dec и Inc в Pascal.

При работе с целыми числами используются процедуры DEC и INC. Процедура Dec уменьшает число на определенное значение, а процедура Inc увеличивает число на определенное значение.

Логические операции с целыми числами.

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

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

Циклы с параметром. Оператор FOR.

Эти циклы организуются в программах, где заранее известно число повторений. При этом повторное выполнение сопровождается изменением управляющего параметра (переменной цикла).

Тип данных Real.

Тип REAL (вещественный). Число типа REAL занимает три слова (шесть байтов). При работе с вещественными числами нужно помнить, что на любом отрезке вещественной оси существует бесчисленное множество ...

Индексы имеют еще одно свойство — чем больше объем массива, тем менее эффективна с ним работа, поэтому часто используют массивы массивов, то есть с двумя, тремя и более индексами для идентификации элементов.

Конструирование многомерных массивов в общем виде выглядит следующим образом:
< имя типа > = ARRAY [тип индекса] OF < тип элементов массива >,
где тип элемента массива в свою очередь — массив, содержащий N-1 индекс. Допустима запись:
< имя типа > = ARRAY[ тип индекса N ] OF ARRAY[ тип индекса N-1 ] OF ARRAY [тип индекса N-2] OF ... ARRAY [тип индекса 1]
OF < тип элементов массива >;
Так определен массив от N индексов, то есть N-мерный массив. Это же определение массива может быть сделано в сокращенной форме:
<имя типа > = ARRAY [тип индекса N, тип индекса N-1,..., тип индекса 1 ] OF < тип элементов массива >.
Можно использовать и другие формы определения массива:
< имя типа > = ARRAY [тип индекса N, тип индекса N-1] OF ARRAY [тип индекса N-2,..., тип индекса 1] OF <тип элементов массива>;
Все указанные формы описания типов могут быть приведены как в явном виде в разделе TYPE, так и в неявном в разделе VAR. Обращение к многомерному массиву осуществляется с помощью индексированной переменной вида Х[I1, I2,…, IN], где X — имя массива, а I1, I2,..., IN константы, переменные или выражения, типы которых должны соответствовать типам индексов в определении массива. Указанная форма записи индексированной переменной называется сокращенной и наиболее часто используется. Хорошим стилем программирования считается использование в программе либо сокращенной, либо полной формы описания массивов.
Опишем многомерные массивы, содержащие два индекса. Правила работы с такими массивами полностью распространяются на массивы, имеющие три и более индексов.

Двумерные массивы. Матрицы.

Массивы массивов, содержащие два индекса (N = 2), называют двумерными. Если элементами таких массивов являются простые числовые данные, то эти массивы часто называют матрицами.
Обращение к элементам двумерного массива осуществляется с помощью индексированных переменных, например A[I, J]. Здесь А имя массива, а I и J константы, переменные или выражения того же типа, что и типы индексов в объявлении массива. Двумерный массив обычно используют для представления в памяти компьютера матриц:

sortirovka massiv...

Связь между элементами матрицы Ajj; I= 1…m; J = 1…n и соответствующими компонентами двумерного массива простая и очевидная Ajj <=> A[I, J].

Объявление и инициализация матрицы.

Объявление и инициализация матрицы аналогичны описанным выше способам работы с векторами. То есть в разделе VAR переменным отводится место, а начальное значение этих величин специально не устанавливается. Поэтому после объявления массива необходимо его элементам задать необходимые значения. Используется три способа инициализации двумерного массива.

  • Если значения элементов массива определены до начала работы программы, то есть известны на этапе формулировки задания на программирование, то можно использовать следующий способ:

CONST
A: ARRAY [1..5, 1..2] OF REAL = ((0.1, -15.3), (7, 0), (-11.89,4), (-78,11.2), (1,0.01));
При таком объявлении массива в разделе констант, вы заносите в двумерный массив А по порядку А[1,1] = 0.1, А[1,2] = -15.3, А[2, 1] = 7, А[2, 2] = 0,... А[5, 2] - 0.01 вещественные числа, перечисленные в круглых скобках. При этом массив является массивом переменных, то есть в процессе работы программы можно менять содержимое любого элемента матрицы.

  • Второй способ применяется в том случае, если исходные данные необходимо внести с клавиатуры в процессе выполнения программы. Так как матрица представляет собой конечный набор однотипных элементов, пронумерованных с помощью двух индексов I и J, то удобно использовать вложенный арифметический цикл (операторы FOR) для ввода значений непосредственно с клавиатуры. При этом можно предложить два приема. Предположим, в вашей программе сделаны объявления:

CONST
M = 3;
N = 4;
VAR    
A: ARRAY[ 1.. М, 1.. N] OF REAL;
где M — количество строк, а N — количество столбцов в матрице. Первый способ ввода будет иметь инструкцию:
WRITELN('Введите массив А, из 12 вещественных чисел');
FOR I := 1 ТО М
DO FOR J:= 1 TO N
       DO READ(A[I,J]);
При таком способе оператор может ввести все 12 чисел в форме матрицы.
Через пробел в одну строку вводится четыре числа первой строки и затем нажимается на клавишу Enter. Вторая и третья строки матрицы А вводятся аналогично. На экране монитора остается изображение матрицы в удобочитаемом виде, близком к оригиналу.
Второй способ ввода имеет вид:
FOR      I := 1 ТО М
DO        FOR J:=l TO N
             DO        BEGIN
                           WRITE('A[', I:1, J:1 ']= ');
                           READLN(A[I, J])
                           END;
Этот фрагмент программы позволяет вам вводить число непосредственно за подсказкой компьютера, курсор для ввода стоит через пробел за знаком равенства.

  • Третий способ заполнения заключается в прямом присвоении в теле программы значений элементам массива. Вы можете купить такой маршрутизатор в Петербурге от компании MikroTik. Например, следующие операторы вложенного арифметического цикла в совокупности с оператором присваивания обеспечивают обнуление всех 12 компонентов массива:

FOR      I := 1 ТО М
DO        FOR J:=l TO N
              DO A[I,J]:=0;


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


Комментарии  

 
-1 # фазл 28.12.2012 05:49
:cry:
Ответить
 
 
0 # Маринка 17.02.2013 15:42
Интересно у меня у 1 голова заболела или как???
Ответить
 
 
0 # Григ 15.01.2017 01:25
Изи ;-)
Ответить
 

Добавить комментарий

Защитный код
Обновить

   ГлавнаяПаскальЛекции по Паскаль