Информацию в компьютере обрабатывает процессор, следовательно, алгоритм должен быть записан на языке, понятном для процессора, т.е. на машинном языке, представляющем последовательности нулей и единиц.
На заре компьютерной эры, в 50-е годы 20 в., программы писались на машинном языке и представляли собой очень длинные последовательности нулей и единиц. Со- ставление и отладка таких программ было чрезвычайно трудоемким делом.
В 60-70-е г. для облегчения труда программистов начали создаваться языки про- граммирования высокого уровня, формальные языки, кодирующие алгоритмы в при- вычном для человека виде (в виде предложений). Такие языки строились на основе использования определенного алфавита и строгих правил построения предложений (синтаксиса).
Наиболее широко распространенным типом языков программирования высокого уровня являются процедурные языки. В таких языках широко используются управля- ющие конструкции (операторы), которые позволяют закодировать различные алго- ритмические структуры (линейную, ветвление, цикл).
Одним из первых процедурных языков программирования был Basic, созданный в 1964 г. Другим широко распространенным языком программирования алгоритмиче- ского типа является Паскаль.
Язык программирования Паскаль (назван в честь выдающегося французского ма- тематика и философа Блеза Паскаля (1623 — 1662)), разработан в 1968 — 1971 гг. Н.Виртом. Язык Паскаль, созданный первоначально для обучения программированию как систематической дисциплине, скоро стал широко использоваться для разработки программных средств в профессиональном программировании.
Благодаря своей компактности, удачному первоначальному описанию Паскаль оказался достаточно легким для изучения. Язык программирования Паскаль отражает фундаментальные и наиболее важные концепции (идеи) алгоритмов в очевидной и легко воспринимаемой форме, что предоставляет программисту средства, помогаю- щие проектировать программы. Язык Паскаль позволяет четко реализовать идеи структурного программирования и структурной организации данных. Язык Паскаль сыграл большую роль в развитии методов аналитического доказательства правильно- сти программ и позволил реально перейти от методов отладки программ к системам автоматической проверки правильности программ.
Применение языка Паскаль значительно подняло "планку" надежности разраба- тываемых программ за счет требований Паскаля к описанию используемых в про- грамме переменных, проверки согласованности программы при компиляции без ее выполнения.
Основными элементами языка Паскаль являются:
1) латинские буквы a, b, c …, z, A, B, C … Z (регистр не учитывается);
2) цифры 0 … 9;
3) спец. Символы *, - , (, ), <, > и.т.д.;
4) служебные слова begin, end, if …;
5) идентификаторы – имена переменных, констант, процедур, функций.
Имена должны начинаться с латинской буквы, за которой могут следовать бук- вы и цифры (A, A23, Sum, MyProgram).
Любая программа на Паскале представляет собой текстовый файл с собствен- ным именем и расширением pas (Primer.pas, Summa.pas).
Программа на языке Паскаль состоит из заголовка, разделов описаний и раздела операторов.
Заголовок (Program …)
Раздел описаний
a) описание внешних модулей (Uses)
b) описание типов (Type)
c) описание констант (Const)
d) описание переменных (Var)
e) описание меток (Label)
f) описание процедур и функций (Procedure…
Function …)
Раздел операторов Begin
… End.
Название типа |
Обозначение |
Описание |
Примеры значений |
Целый |
INTEGER |
целые числа из диапазона 32768...32767 |
125, -678, 0 |
целый |
BYTE |
Целые числа от 0 до 255 |
0, 42, 255 |
целый |
LONGINT |
Целые числа из диапазона 2147483648... 2147483647 |
0, 2345, -3456, 656435 |
веществен- ный |
REAL |
Действительные числа из диапазона 2.9*10-39 ... 1.7*10+38 |
-0.123, 23.65, 18, 3.287654E-01, |
логический |
BOOLEAN |
Логические значения true(истина) или false(ложь) |
true, false |
символь- ный |
CHAR |
Символы |
‘y’, ‘5’,’*’ |
строковый |
STRING |
строка, содержащая от 0 до 255 символов |
‘PASCAL’, ’a+b’ |
Стандартные операции и функции
Функция, операция |
Назначение |
Тип переменных |
Тип результата операции, функции |
A+B |
Сумма |
REAL, INTEGER |
REAL, INTEGER |
A-B |
Разность |
REAL, INTEGER |
REAL, INTEGER |
A*B |
Произведение |
REAL, INTEGER |
REAL, INTEGER |
A/B |
Частное |
REAL, INTEGER |
REAL |
ABS(x) |
Абсолютное зна- чение |
REAL, INTEGER |
REAL, INTEGER |
SQR(x) |
Вычисление х2 |
REAL, INTEGER |
REAL,INTEGER |
sin(x) |
Нахождение sin x |
REAL,INTEGER |
REAL |
cos (x) |
Вычисление cos x |
REAL, INTEGER |
REAL |
Arctan(x) |
Вычисление arctan x |
REAL, INTEGER |
REAL |
Exp(x) |
Вычисление экспоненты ех |
REAL, INTEGER |
REAL |
Ln(x) |
Вычисление ln x |
REAL, INTEGER |
REAL |
SQRT(x) |
Вычисление х |
REAL, INTEGER |
REAL |
A div B |
Нахождение це- лой части при де- лении А на B |
INTEGER |
INTEGER |
A mod B |
Нахождение остатка при де- лении А на B |
INTEGER |
INTEGER |
TRUNC(x) |
Нахождение це- лой части х |
REAL, INTEGER |
INTEGER |
ROUND(x) |
Округление х в сторону ближай- шего целого |
REAL, INTEGER |
INTEGER |
PI |
Зарезервирован- ная константа число π |
|
REAL |
Примеры записи
математических выражений
= (sqr(a)+sqrt(x))/(siin(x)+cos(x))
sin x + cos x
ex + e-x
2
tgx + ctgx
ln x
= (exp(x)+exp(-x))/2
= (sin(x)/cos(x)+cos(x)/sin(x))/ln(x)
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.