- •59. Порядковые типы в языке программирования Паскаль.
- •60. Массивы в языке программирования Паскаль.
- •61. Подпрограмма-функция.
- •62. Подпрограмма-процедура.
- •63. Существование, единственность, устойчивость, сходимость, корректность численного решения.
- •64. Вычисление значений полинома. Схема Горнера.
- •70. Алгебраические и трансцендентные уравнения.
- •71. Отделение и уточнение корней.
- •72. Метод половинного деления
- •73. Метод Ньютона
- •74.Метод параллельных секущих
- •75. Метод хорд
- •76.Метод последовательных приближений
59. Порядковые типы в языке программирования Паскаль.
В языке программирования Паскаль достаточно много типов данных. Кроме того, сам пользователь может определять свои типы данных.
Тип переменной определяется тем, с какими данными она связана.
Переменные типа integer могут быть связаны только с целыми значениями обычно в диапазоне от -32768 до 32767. В Pascal есть другие целочисленные типы.
Переменные типа real хранят вещественные (дробные) числа.
Переменная булевского (логического) типа может принимать только два значения - true (1, правда) или false (0, ложь).
Символьный тип (char) может принимать значения из определенной упорядоченной последовательности символов.
Интервальный тип определяется пользователем и формируется только из порядковых типов. Представляет собой подмножество значений в конкретном диапазоне.
Можно создать собственный тип данных простым перечислением значений, которые может принимать переменная данного типа. Это так называемый перечисляемый тип данных.
Все вышеописанное – это простые типы данных. Но бывают и более сложные, структурированные, которые базируются на простых типах.
Массив – это структура, занимающая в памяти единую область и состоящая из фиксированного числа компонентов одного типа.
Строки представляет собой последовательность символов. Причем количество этих символов не может быть больше 255 включительно. Такое ограничение характерная черта Pascal.
Запись – это структура, состоящая из фиксированного числа компонент, называемых полями. В разных полях данные могут иметь разный тип.
Множества представляют собой совокупность любого числа элементов, но одного и того же перечисляемого типа.
Файлы для Pascal представляют собой последовательности однотипных данных, которые хранятся на устройствах внешней памяти (кстати, жесткий диск – это тоже внешняя память).
Понятие такого типа данных как указатель связано с динамическим хранением данных в памяти компьютера. Часто использование динамических типов данных является более эффективным в программирование, чем статических.
60. Массивы в языке программирования Паскаль.
Массив – упорядоченный набор значений одного типа, объединённых единым именем. Любое отдельное значение из этого набора называется элементом массива и может быть выделено с помощью соответствующей индексации.
Размерность массива, т.е. число индексов в квадратных скобках в ТР не ограничена. В качестве индексов используют выражения порядкового типа, кроме Longint. При описании в программе необходимо указать общее число элементов в массиве и тип этих элементов.
Type
T= array [T1] of T2;
Где Т – имя (идентификатор типа); Т1 – список одного или нескольких индексных типов, разделённых запятыми. В качестве индексных типов в ТР допускается использовать любые порядковые типы, кроме Longint. Обычно используют ограниченный тип, в котором задаются границы изменения индексов; Т2 – тип элементов массива (базовый тип), любой тип ТР.
Type matr = array [-1..6] of integer;
Rex = array [1..3, 1..4] of real;
T = array [‘A’..’g’, 1..5] of integer;
Var a, c: matr;
D: t;
B: rex;
Массивы могут описываться сразу в разделе описания переменных без использования раздела описания типов.
Var a,c: array [-1..6] of integer;
D: array [‘A’..’g’, 1..5] of integer;
B: array [1..3, 1..4] of real;
Последняя строка может быть записана в следующем эквивалентном виде:
B: array [1..3] of array [1..4] of real;
Т.е. b представляет собой одномерный массив, состоящий из трёх элементов, каждый из которых является в свою очередь одномерным массивом из четырёх элементов вещественного типа. Поэтому эквивалентны следующие записи: b[2][3]~b[2,3].
В ТР можно одним оператором присваивания передать все элементы одного массива другому массиву того же типа.
Var a,c: array [1..6] of integer;
………………………………………………………
Begin
………………………………………………………
a:=c;
После этого все 6 элементов массива а получают значения соответствующих элементов массива с. В ТР над массивами не определены операции отношения. Нельзя записать if a=c then……..
Ввод-вывод массивов.
Одномерный массив
Program ex7;
Var A: array [1..50] of real;
I,n: integer; …….
Begin
Writeln (‘введите число элементов массива А’);
Readln (n);
Writeln (‘введите элементы массива А’);
For i:= 1 to n do readln (A[i]);
Writeln (‘Исходный массив А’);
For i:= 1 to n do writeln (A[i]:7:2);
…………………………..
Двумерный массив
Program ex8;
Var A: array [1..50, 1..50] of real;
I,j,m,n: integer; ………….
Begin
Writeln (‘введите число строк m и столбцов n’);
Readln (m,n);
Writeln (‘введите элементы массива А’);
For i:= 1 to m do
For j:= 1 to n do readln (A[I,j]);
Writeln (‘Исходный массив А’);
For i:= 1 to m do
Begin
For j:= 1 to n do write(A[I,j]:7:2);
Writeln
End;
………………………….