W Cat - Описание языка PascalABC.NET
- Название:Описание языка PascalABC.NET
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
W Cat - Описание языка PascalABC.NET краткое содержание
PascalABC.NET — это язык программирования Паскаль нового поколения, включающий классический Паскаль, большинство возможностей языка Delphi, а также ряд собственных расширений. Он реализован на платформе Microsoft.NET и содержит все современные языковые средства: классы, перегрузку операций, интерфейсы, обработку исключений, обобщенные классы и подпрограммы, сборку мусора, лямбда-выражения, средства параллельного программирования.
PascalABC.NET является мультипарадигменным языком: на нем можно программировать в структурном, объектно-ориентированном и функциональном стилях.
PascalABC.NET — это также простая и мощная интегрированная среда разработки, поддерживающая технологию IntelliSense, содержащая средства автоформатирования, встроенный отладчик и встроенный дизайнер форм.
Описание языка PascalABC.NET - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Операторы +=, -=, *=, /= могут также использоваться со свойствами классов соответствующих типов в левой части.
Составной оператор (блок)
Составной оператор предназначен для объединения нескольких операторов в один. Он имеет вид:
begin
операторы
end
В PascalABC.NETсоставной оператор также называется блоком . (традиционно в Паскале блоком называется раздел описаний, после которого идет составной оператор; в PascalABC.NETпринято другое решение, поскольку можно описывать переменные непосредственно внутри составного оператора).Операторы отделяются один от другого символом ";". Ключевые слова beginи end, окаймляющие операторы, называются операторными скобками .
Например:
s := 0;
p := 1;
forvar i:=1 to10 do
begin
p := p * i;
s := s + p
end
Перед endтакже может ставиться ;. В этом случае считается, что последним оператором перед endявляется пустой оператор, не выполняющий никаких действий.
Помимо операторов, в блоке могут быть внутриблочные описания переменных:
begin
vara,b: integer;
varr: real;
readln(a,b);
x := a/b;
writeln(x);
Пустой оператор
Пустой оператор не включает никаких символов, не выполняет никаких действий и используется в двух случаях:
1. Для использования символа ; после последнего оператора в блоке:
begin
a := 1;
b := a;
end
Поскольку в языке Паскаль символ ; разделяет операторы, то в приведенном выше коде считается, что после последней ; находится пустой оператор. Таким образом, ; перед end в блоке можно либо ставить, либо нет. 1. Для пометки места, следующего за последним оператором в блоке::
labela;
begin
gotoa;
x := 1;
a:
end
Условный оператор
Условный оператор имеет полную и краткую формы.
Полная форма условного оператора выглядит следующим образом:
ifусловие thenоператор1
elseоператор2
В качестве условия указывается некоторое логическое выражение. Если условие оказывается истинным, то выполняется оператор1, в противном случае выполняется оператор2. Краткая форма условного оператора имеет вид:
ifусловие thenоператор
Если условие оказывается истинным, то выполняется оператор, в противном случае происходит переход к следующему оператору программы.
В случае конструкции вида
ifусловие1 then
ifусловие2 thenоператор1
elseоператор2
elseвсегда относится к ближайшему предыдущему оператору if, для которого ветка elseеще не указана. Если в предыдущем примере требуется, чтобы elseотносилась к первому оператору if, то необходимо использовать составной оператор:
ifусловие1 then
begin
ifусловие2 thenоператор1
end
elseоператор2
Например:
ifathen
min := a
elsemin := b;
Оператор описания переменной
В PascalABC.NETможно описывать переменные внутри составного оператора begin-end в специальном операторе описания переменной. Такие описания называются внутриблочными.
Внутриблочное описание имеет одну из форм:
список имен: тип;
или
имя: тип := выражение;
или
имя: тип = выражение; // Для совместимости с Delphi
или
имя := выражение;
Имена в списке перечисляются через запятую. Например:
begin
vara1,a2,a3: integer;
varn: real := 5;
vars := ' ';
...
В последнем случае тип переменной автовыводится по типу выражения в правой части. Автовыведение типа активно используется при инициализации переменной вызовом конструктора или функции. возвращающей объект:
begin
varl := new List;
var a := Seq(1,3,5); // тип a выводится по типу возвращаемого значения Seq: array of integer
Автовыведение типа при описании невозможно при инициализации переменной лямбда-выражением:
// varf := x -> x*x; // так нельзя!
var f : Func := x -> x*x;
Внутриблочные описания используются чтобы не захламлять раздел описаний описанием вспомогательных переменных. Кроме этого, внутриблочные описания позволяют вводить переменные именно в тот момент когда они впервые потребовались. Оба этих фактора существенно повышают читаемость программы.
Оператор выбора
Оператор выбора выполняет одно действие из нескольких в зависимости от значения некоторого выражения, называемого переключателем . Он имеет следующий вид:
caseпереключатель of
список выбора 1: оператор1;
...
список выбора N: операторN;
elseоператор0
end;
Переключатель представляет собой выражение порядкового типа или строкового типа, а списки выбора содержат константы совместимого по присваиванию типа. Как и в операторе if, ветка elseможет отсутствовать.
Оператор caseработает следующим образом. Если в одном из списков выбора найдено текущее значение переключателя, то выполняется оператор, соответствующий данному списку. Если же значение переключателя не найдено ни в одном списке, то выполняется оператор по ветке elseили, если ветка elseотсутствует, оператор caseне выполняет никаких действий.
Список выбора состоит либо из одной константы, либо для перечислимого типа из диапазона значений вида a..b (константа a должна быть меньше константы b); можно также перечислить несколько констант или диапазонов через запятую. Например:
caseCountry of
'Россия': Capital := 'Москва';
'Франция': Capital := 'Париж';
'Италия': Capital := 'Рим';
else Capital := 'Страна отсутствует в базе данных';
end;
caseDayOfWeek of
1..5: writeln('Будний день');
6,7: writeln('Выходной день');
end;
Списки выбора не должны пересекаться. Например, следующий фрагмент
casei of
2,5: write(1);
4..6: write(2);
end;
приведет к ошибке компиляции.
Оператор цикла for
Оператор цикла forимеет одну из двух форм:
forпеременная := начальное значение toконечное значение do
оператор
или
forпеременная := начальное значение downtoконечное значение do
оператор
Кроме того, переменную можно описать непосредственно в заголовке цикла:
forпеременная: тип := начальное значение toили downtoконечное значение do
оператор
или
for varпеременная := начальное значение toили downtoконечное значение do
Читать дальшеИнтервал:
Закладка: