- •Лекция №1
- •Программа
- •Раздел uses состоит из нескольких подряд идущих секций uses, каждая из которых начинается
- •ОПИСАНИЕ ПЕРЕМЕННЫХ
- •Оператор описания переменной
- •Описание констант
- •Описание типов
- •Описание меток
- •Лекция №2
- •Типы данных
- •Типы данных определяет:
- •Целые типы
- •Вещественный тип
- •Символьный тип
- •Символьный тип
- •Перечислимый и диапазонный типы
- •Диапазонный тип представляет собой подмножество значений целого, символьного или перечислимого типа и описывается
- •Автоопределение типов
- •Полезные стандартные подпрограммы
- •Стандартные арифметические функции
- •Лекция №3
- •Основные операторы
- •Оператор ввода
- •Оператор вывода
- •Операции отношения
- •Логические операции
- •Условный оператор
- •Примеры использования
- •Примеры использования
- •Оператор case выбора варианта
- •Примеры использования
- •Примеры использования
- •В PascalABC.NET можно делать case по строкам.
- •Лекция №4
- •Цикл с параметром
- •Цикл с предусловием
- •Примеры использования
- •Примеры использования
- •Примеры использования
- •Пример использования
- •Пример использования
Типы данных определяет:
•возможные значения переменных, констант, функций, выражений, принадлежащих к данному типу;
•внутреннюю форму представления данных в ЭВМ;
•операции и функции, которые могут выполняться над величинами, принадлежащими к данному типу.
Целые типы
Типы integer и longint, а также longword и cardinal являются синонимами.
Максимальные значения для каждого целого типа определены как внешние стандартные константы: MaxInt64, MaxInt, MaxSmallInt,
MaxShortInt, MaxUInt64,MaxLongWord, MaxWord, MaxByte.
Вещественный тип
Максимальные значения для каждого вещественного типа определены как внешние стандартные константы: MaxReal, MaxDouble и MaxSingle.
Логический тип
Значения логического типа boolean занимают 1 байт и принимают одно из двух значений, задаваемых предопределенными константами True (истина) и False (ложь).
Символьный тип
Символьный тип char занимает 2 байта и хранит Unicode- символ. Символы реализуются типом System.Char платформы .NET.
Операция + для символов означает конкатенацию (слияние) строк. Например: 'a'+'b' = 'ab'. Как и для строк, если к символу прибавить число, то число предварительно преобразуется к строковому представлению:
var s: string := ' '+15; // s = ' 15' var s1: string := 15+' '; // s = '15 '
Над символами определены операции сравнения < , >, <=, >=, =, <>, которые сравнивают коды символов:
'a'<'b' // True '2'<'3' // True
Символьный тип
Для преобразования между символами и их кодами в кодировке Windows (CP1251) используются стандартные функции Chr и Ord:
Chr(n) - функция, возвращающая символ с кодом n в кодировке Windows; Ord(с) - функция, возвращающая значение типа byte, представляющее собой код символа c в кодировке Windows.
Перечислимый и диапазонный типы
Type
typeName = (value1, value2, ..., value n);
Значения перечислимого типа занимают 4 байта. Каждое значение value представляет собой константу типа typeName, попадающую в текущее пространство имен.
Например:
type
Season = (Winter,Spring,Summer,Autumn); DayOfWeek = (Mon,Tue,Wed,Thi,Thr,Sat,Sun);
К константе перечислимого типа можно обращаться непосредственно по имени, а можно использовать запись typeName.value, в которой имя константы уточняется именем перечислимого типа, к которому она принадлежит:
var a: DayOfWeek; a := Mon;
a := DayOfWeek.Wed;
Диапазонный тип представляет собой подмножество значений целого, символьного или перечислимого типа и описывается в виде a..b, где a - нижняя, b - верхняя граница интервального типа, a<b:
var
intI: 0..10; intC: 'a'..'z'; intE: Mon..Thr;
Логический тип
Значения логического типа boolean занимают 1 байт и принимают одно из двух значений, задаваемых предопределенными константами True (истина) и False (ложь).
Автоопределение типов
Тип переменной определяется по типу значения при описании с инициализацией. Это компактно записывается и очевидно для восприятия.
Begin
var x := 1; var y := 2.5; var z := 'z'; end.
Полезные стандартные подпрограммы
В PascalABC.NET имеется множество полезных стандартных подпрограмм. Например, Print, ReadInteger, ReadReal, Min, Max, Swap. Процедура Print разделяет элементы вывода пробелом.
Begin
var a := ReadInteger('Введите a:'); var b := ReadInteger('Введите b:'); var vmin := Min(a,b);
var vmax := Max(a,b); Println(vmin,vmax); Swap(a,b); Println(a,b);
end.