Автор работы: Пользователь скрыл имя, 06 Декабря 2010 в 14:04, контрольная работа
Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования. Паскаль был одним из первых таких языков. По мнению Н. Вирта, язык должен способствовать дисциплинированию программирования, поэтому, наряду со строгой типизацией, в Паскале сведены к минимуму возможные синтаксические неоднозначности, а сам синтаксис автор постарался сделать интуитивно понятным даже при первом знакомстве с языком.
Тем не менее, первоначально язык имел ряд ограничений: невозможность передачи функциям массивов переменной длины, отсутствие нормальных средств работы с динамической памятью, ограниченная библиотека ввода-вывода, отсутствие средств для подключения функций написанных на других языках, отсутствие средств раздельной компиляции и т. п. Подробный разбор недостатков языка Паскаль того времени был выполнен Брайаном Керниганом в статье «Почему Паскаль не является моим любимым языком программирования»[7] (эта статья вышла в начале 1980-х, когда уже существовал язык Модула-2, потомок Паскаля, избавленный от большинства его пороков, а также более развитые диалекты Паскаля). Некоторые недостатки Паскаля были исправлены в ISO-стандарте 1982 года, в частности, в языке появились открытые массивы, давшие возможность использовать одни и те же процедуры для обработки одномерных массивов различных размеров.
1. Понятие системы программирования
2. Среда программирования Turbo Pascal.
3 Процедурный тип
4. Операторы управления выполнением программы
5. Практическое задание
Список литературы
Буквы;
Цифры;
Шестнадцатеричные цифры;
Специальные символы;
Пробелы;
Зарезервированные слова;
Буквы - это буквы
латинского алфавита от a до z и от A до
Z, а также знак подчёркивания _. В
Паскале нет различия между прописными
и строчными (большими и малыми) буквами
алфавита, если только они не входят в
символьные и строковые выражения.
Цифры - это арабские цифры от 0 до 9.
Каждая шестнадцатеричная
цифра имеет значение от 0 до 15. Первые
10 значений обозначаются арабскими цифрами
0 . . 9, остальные шесть - латинскими буквами
A, B, C, D, E, F или a, b, c, d, e, f.
Специальные символы:
+ - * / = , . : ; < <= > >= <> [ ] { } := (* *)
Пробелы рассматриваются как ограничители идентификаторов1, констант, чисел, зарезервированных слов.
В Паскале имеются
следующие зарезервированные
And Array Begin Case Const Do Downto Else End For Function Goto
If In Label Mod NOT Of Or Procedure Program Record Repeat
String Then To Type Until Uses
Var While Xor
Следует обратить внимание, что зарезервированные слова не могут использоваться в качестве идентификаторов.
Запись всех
составляющих алфавита языка подчиняется
установленному правилу, которое называется
синтаксисом языка, а смысловое
содержание этого правила семантикой
языка.
3
Процедурный тип
В оригинальном языке Паскаль Йенсен и Вирта процедурный тип использовался только при описании формального параметра. Уже в TP существовал полноправный процедурный тип. В объявлении типа ставится заголовок процедуры либо функции (без имени), обобщённо описывающий интерфейс подпрограммы. Значение этого типа содержит указатель на подпрограмму с заголовком, соответствующую описанному в объявлении типа. С помощью идентификатора переменной может происходить вызов соответствующей процедуры или функции.
type myfunc=function:string;
function func1:string;
begin
func1:='func N 1'
end;
function func2:string;
begin
func2:='func N 2'
end;
var fun:myfunc;
begin
fun:=@func1;
writeln(fun) {происходит вызов функции func1}
end.
4.
Операторы управления
выполнением программы
Паскаль — язык
структурного программирования, что
означает, что программа состоит
из выполняющихся последовательно
отдельных стандартных
while a <> b do { цикл с предусловием }
writeln('Ожидание');
if a > b then { условный оператор }
writeln('Условие выполнилось')
else { else-секция - может отсутствовать}
writeln('Условие не выполнилось');
for i := 1 to 10 do { итерационный цикл }
writeln('Итерация №', i:1);
repeat { цикл с постусловием }
a := a + 1
until a = 10;
case i of { условный оператор множественного выбора }
0: write('ноль');
1: write('один');
2: write('два')
else write('неизвестное число') { else-секция - может отсутствовать}
end;
В операторах while,
for, if, case в качестве выполняемого оператора
может использоваться блок. Такая
конструкция, представляющая собой
обычный оператор или блок, называется
сложным оператором.
Для управления процессом компиляции в паскале существуют директивы компилятора. Они помещаются в комментарии и позволяют переключать режимы работы компилятора, например, включать и отключать проверку операций ввода-вывода, проверки переполнения:
assign(inp,'text.txt');
{$I-} { отключение режима IO checking- генерации кода завершения программы в случае ошибки ввода-вывода }
{ (для случая, если файл не найден)}
reset(inp);
{$I+} { включение режима IO checking }
if IOresult=0 then begin { проверяем значение переменой ioresult(<>0 в случае ошибки ввода-вывода) }
...
close(inp);
end else writeln('file
not found')
Существуют директивы,
аналогичные директивам препроцессора
C/C++ ($ifdef, $define, $include), они обрабатываются
компилятором в процессе компиляции.
5.
Практическое задание
В компьютер
вводится N трехзначных вещественных чисел.
Составить программу, определяющую количество
чисел, делящихся без остатка на три.
var chislo:real;
i,n,a:integer;
begin
write('Введите n');
readln(n);
for i:=1 to n do
begin
write('Введите число: ');
readln(chislo);
if (chislo mod 3) =0 then
inc(a);
end;
write('Итого чисел- ',a);
readln;
end.
Список
литературы
1. Информатика: Учебник /Под ред. проф. Н.В. Макаровой . -М. : Финансы и статистика , 1997.-768с.: ил.
2. Информатика.
Базовый курс / Симонович С.В. и
др. – СПб: Издательство «Питер»,
3. Фигурнов
В.Э. IBM PC для пользователя .7-е изд., переработ.
и доп. .- М. : Финансы и статистика , 1997
4. Информатика. Энциклопедический словарь для начинающих / Сост. Д.А.Поспелов. –М.: Педагогика-Пресс, 1994. – 352 с.:ил.