Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
экз по информатике, шпоры.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
192 Кб
Скачать

Понятие данных в Паскаль- программе. Типы данных: логические, символьные, вещественные, перечисленные типы, тип диапазон, процедурный тип. Их описание. Примеры.

Тип данных характеризует внутреннее представление, множество допустимых значений для этих данных, а также совокупность операций над ними. Все переменные, используемые в программе, описываются в ее начале в специальном разделе описания переменных после зарезервированного слова Var. Среди типов данных различают стандартные (предопределенные разработчиками языка) и пользовательские (определяемые программистом в своей программе).

Простые типы (скалярные типы) - к таким типам данных относят типы данных таких величин, значения которых не содержит составных частей.

Порядковые типы:

целые числа (Тип Integer – значением переменной этого типа может быть целое число из интервала от -32768 до 32767)

Var h, m, n : integer;

вещественные числа (Тип Real – значением переменной этого типа может быть вещественное число, модуль которого принадлежит отрезку [2,9×10-39; 1,7×108])

Var c, d, e : real;

 - логический тип (Тип Boolean – переменная этого типа может принимать только два значения: истина (true) или ложь (false))

Var b1, b2, b3, b4 : boolean;

 - символьный (Тип Char – значениям переменной этого типа может быть любой символ, из набора ASCII-символов)

Var с, ch, e: char;

 - перечисляемый тип (тип данных, заданный списком принадлежащих ему значений)

 - интервальный тип или диапазон (позволяет задавать две константы, определяющие границы диапазона значений для данной переменной)

Тип диапазон и перечислимый тип задаются программистом.

Процедурный тип- применяется для того, чтобы можно было процедуры и функции понимать как обычные значения, которые можно присваивать переменным или выполнять с ними различные действия.

Программист может описать свой тип на основе базовых в разделе описания типов, который начинается словом Type. Затем для каждого типа следует конструкция вида:

идентификатор типа = определение типа;

Ввод/вывод переменных: скалярного типа, одно- и двумерных массивов. Формат вывода результатов целого и вещественного типов. Примеры.

Ввод данных

Скалярного типа:

Для ввода исходных данных чаще всего используется процедура Read:

ReadLn (A1,A2,...AK);

Процедура производит чтение К значений исходных данных и присваивает эти значения переменным А1, А2, ..., АК.

При вводе исходных данных происходит преобразование из внешней формы представления во внутреннюю, определяемую типом переменных. Переменные, образующие список ввода, могут принадлежать либо к целому, либо к действительному, либо к символьному типам. Чтение исходных данных логического типа в языке Паскаль недопустимо. Значения исходных данных могут отделяться друг от друга. Не допускается разделение вводимых чисел запятыми!

Ввод массива:

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

Самый простой способ описания массива- это объявить переменную в разделе описания переменных Var с использованием зарезервированного слова array (т.е. массива).

Пример:

Для одномерного массива

Var A: array [1..100] of integer; {100 элементов- целые числа}

Для двумерного массива

Var B: array [1..100,1..100] of integer; {матрица 100х100- целые числа}

Вывод данных

Для вывода результатов работы программы на экран используются процедуры:

Write (A1,A2,...AK);

WriteLn (A1,A2,...AK);

Первый из этих операторов производит вывод значений переменных А1, А2,...,АК в строку экрана. Второй оператор производит переход к началу следующей экранной строки. Если процедура writeln используется без параметров, то она просто производит пропуск строки и переход к началу следующей строки.

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

Форма представления значений в поле вывода соответствует типу переменных и выражений: величины целого типа выводятся как целые десятичные числа, действительного типа - как действительные десятичные числа с десятичным порядком, символьного типа и строки - в виде символов, логического типа - в виде логических констант TRUE и FALSE.

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

Для величин действительного типа элемент списка вывода может иметь вид А:К:М, где А - переменная или выражение действительного типа, К - ширина поля вывода, М - число цифр дробной части выводимого значения. К и М - выражения или константы целого типа. В этом случае действительные значения выводятся в форме десятичного числа с фиксированной точкой.

Пример записи операторов вывода:

Var rA, rB: Real;

iP,iQ:Integer;

bR, bS: Boolean;

chT, chV, chU, chW: Char;

Begin

. . .

WriteLn (rA, rB:10:2);

WriteLn (iP, iQ:8);

WriteLn (bR, bS:8);

WriteLn (chT, chV, chU, chW);

End.

Скалярные типы данных - целочисленные, вещественные имеющие символьные и булевский тип.

Вывод массива:

Вывод значений элементов массива выполняется в цикле For с использованием операторов write или writeln.

Например, вывод вектора из 5 элементов:

-в столбец

For i:= 1 to 5 do writeln (a[i]);

-в одну строку, через пробел- разделитель

For 1:= 1 to 5 do write (a[i], ‘ ‘);

-с заданием формата, где под каждый элемент отводится 4 позиции:

For i:= 1 to 5 do write (a[i]:4);

Вывод матриц в стандартной форме записи выполняется при помощи оператора writeln;. Он используется после вывода текущей строки матрицы для перевода курсора в начало следующей строки экрана:

For i:= 1 to n do Begin

For j:= 1 to m do write (a[i,j]:4);

writeln; end;