Рейтинг:  2 / 5

Звезда активнаЗвезда активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Рассмотрим простейший пример программы на языке Pascal ABC.NET. Изначально я думал дать более сложный пример на рассмотрение, но понял, что его придется слишком долго Вам обьяснять, поэтому мы рассмотрим стандартный пример "Hello World!".

program Pascal; 

 
begin 

 
              writeln('Pascal ABC.NET'); 

 
end.

Прежде всего проанализируем этот текст. Он состоит из 3 строк, каждая из которых несет в себе како-то смысл и принято каждую из строк начинать с новой строки, поскольку таким образом код становится более понятным. Поскольку я говорю "принято", то это значит, что весь код программы можно писать в одну строку (это дело вкуса самого программиста: писать код в несколько строк или все писать в одну строку).

Program Pascal; begin writeln('Pascal ABC.NET'); end.

Единственное ограничение к такому коду (в одну строку) это наличие пробелов между коммандами (в данном примере это пробел между begin и writeln), а пробел между новой строкой и строкой, заканчивающуюся на ";" не обязателен. Тоесть допустим следующий код:

Program pascal;begin writeln('Pascal ABC.NET');end.

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

PROGRAM PASCAL; 

 
BEGIN 

 
              WRITELN('Pascal ABC.NET'); 

 
END.

Абсолютно эквивалентен предыдущему коду.

Теперь начнем анализировать сам код. Код начинается со слов "Program Pascal;". Слово "Program" указывает об обьявлении названия программы, что в моем случае случае это "Pascal". Это название может быть каким угодно (только нельзя брать зарезервированные имена они приведены в данной таблице), да и вообще эта строка является необязательной, поскольку никак это в дальнейшем не используется, поэтому можно писать свои коды и без нее (что я и буду делать в дальнейшем).

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

Все, что находится между ""Program" и первым "begin", находится в секции, называемой "Секцией описания". В ней можно создавать свои подпрограммы (об этом чуть позже), описывать переменные или постоянные. А самый первый "begin" и "end." Ограничивают секцию операторов, в которой и находится, собственно, код всей нашей программы. Данный пример можно было бы сделать чуть более гибким:

program Pascal; 

 
const my_text='Pascal ABC.NET'; 

 
begin 

 
              writeln(my_text); 

 
end.

Здесь я в секции описания создал переменную с постоянным значением (константу) с помощью слова "const", за которым должно идти описание одной или нескольких констант. Описав какую-либо константу в языке программирования, Вы сможете пользоваться ее значением где угодно (в пределах данной программы), но при этом Вы не сможете изменить ее значение. В некоторых случаях это очень удобно. Например, значение числа Pi, равное 3.14... Очевидно, при расчете каких-либо геометрических формул ей очень удобно пользоваться. И это значение должно быть одним и тем же в не зависимости от внешних факторов (Страны, где Вы проживаете; времени года; времени суток...). Поменяв значение данной константы, Вы будете получать некорректные значения в геометрических формулах. А это неправильно. Поэтому и придумали в языках программирования константы. Их нужно описывать в секции описания и использовать их в своем коде. При этом во время сборки готовой программы, везде вместо имени данной константы будет подставлено ее значение. Вы можете подумать, что это глупо писать везде имя данной константы, если все равно оно будет заменено на ее значение. Не проще ли сразу писать ее значение?

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

const Mytext='Я люблю язык Pascal ABC.NET, и поэтому создаю сайт, где Вы можете обучиться етому языку';

И везде, где нужно, удобнее писать название данной константы "Mytext", а не это длинное предложение.

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

var  

 
              f:text; 

 
              i:integer; 

 
begin 

 
              assign(f, 'data.bat'); 

 
              reset(f); 

 
              read(f,i); 

 
              i:=(i*10 - 125)*(-1); 

 
              close(f); 

 
              assign(f, 'data.bat'); 

 
              rewrite(f); 

 
              write(f,i); 

 
              close(f); 

 
end.

Скорее всего вы почти ничего в этом коде не поняли (я не хотел приводить этот пример, но для большей понятности решил его привести). Вы сейчас можете не вникать в данный код (поскольку я писал его наугад). Этот код открывает файл "data.bat", считывает из него значение, преобразует это значение и обратно записывает в этот файл новое значение. Но не суть. Вы можете увидеть в данном коде строки "assign(f, 'data.bat');" Вданном примере их 2 строки. Если вдруг измениться имя файла, то нам придется переписывать эти две строки. А представьте, если таких строк будет тысячи. Их всех придется переписывать. Именно для этой причины ввели переменные и константы.

Вернемся к первому коду. Описать константу в языке программирования - это значит указать ее имя и ее значение. То есть в примере:

const my_text='Pascal ABC.NET';

Имя константы "my_text", а ее значение это "Pascal ABC.NET". Возможно, у Вас появилось чувство, что константам можно придавать значения только строк, но это не так:

const my_Pi=3.1428;

Вот пример, доказывающий обратное. Таким образом в константе можно указать что угодно.

В нашем примере в разделе операторов содержится только один оператор "writeln('Pascal ABC.NET');". Комманда "writeln" является подпрограммой (с ними мы познакомимся чуть позже), которая на экран выводит все то, что содержится в ее скобках (В нашем случае программа выведет на экран "Pascal ABC.NET").

Завершает всю программу слово "end.". Этот набор символов указывает на конец программы. Все, что идет за этой коммандой не выполняется.