Инфоурок Другое Другие методич. материалыПаскаль для начинающих

Паскаль для начинающих

Скачать материал

Паскаль для начинающих
Основы грамматики в таблицах и примерах

Pascal (Паскаль) - язык программирования общего назначения. Создан в 1970 году специалистами Технического Университета в Цюрихе (ETH, Zurich) под руководством профессора Никлауса Вирта (Niklaus Wirth). После появления языка Pascal были созданы новые промышленные версии языка, а также языки-потомки, которые сохраняют основные синтаксические и семантические свойства языка Вирта: Modula, Turbo Pascal, Object Pascal (Delphi), Component Pascal (Oberon-2), TMT Pascal, Free Pascal, Zonnon, Ada. Идеи языка Pascal оказали большое влияние на современные языки программирования, которые активно используются в современной промышленности: Java, Javascript, C#. При этом Pascal значительно проще и хорошо приспособлен для начального изучения программирования. Описание языка дано в соответствии с диалектом языка фирмы Borland Software (США): Turbo Pascal 7.1. (1992).

 


 

ЧАСТЬ I.

1. Основные правила грамматики

1. Текст программы состоит из трех составных частей. Это заголовок, описания, операторы. Заголовок программы содержит имя программы. Для версии ETH необходимо дополнительно указать источник и приемник данных для работы программы - файлы для ввода и вывода информации. По умолчанию файл inputсвязан с клавиатурой компьютера, а файл output - с экраном монитора. В Turbo Pascal заголовок имеет декоративное значение и использовать его не обязательно.

 

2. Описания - это символьные конструкции для описания свойств объектов программы. Все объекты программы надо обязательно указать в этой части программы. Операторы - это символьные конструкции для описания действий над объектами программы. Операторы должны находиться между словами begin иend. Эти слова считаются скобками.

 

3. В одной строке текста можно размещать несколько операторов или описаний. Поэтому между операторами надо обязательно ставить символ-разделитель. Для разделения операторов используется символ точка с запятой ( ; ). После последнего оператора разделитель ставить не обязательно.

 

4. Малые и большие буквы считаются эквивалентными (равнозначными). Имя любого объекта в записи программы может содержать только буквы латинского алфавита, цифры и символ подчеркивания ( _ ). Имя не может начинаться с цифры. Никакие другие типы символов в записи имен не разрешаются.

 


 

 

2. Общее строение программы

ETH Pascal

Пример

program имя(ввод,вывод);

program echo(input,output);

описания;

var n: integer;

BEGIN

BEGIN

оператор;

write('число?');

оператор;

read(n);

оператор

write(n)

END.

END.

 

Turbo Pascal-Delphi

Пример

program имя;

program echo;

модули;

uses crt;

описания;

var n: integer;

BEGIN

BEGIN

оператор;

clrscr; read(n);

оператор;

write(n);

оператор

readkey

END.

END.


3. Основные типы переменных

Тип

Описатель типа (имя)

Значение типа (пример)

Действительный

real

16.32

 

 

-1.6320000000E+01

 

Тип

Описатель типа (имя)

Значение типа (пример)

Целый

integer

30000

Длинный целый

longint

2000000000

 

Тип

Описатель типа (имя)

Значение типа (пример)

Символьный (литерный)

char

'a'

 

 

#13

Строковый

string

'задача'

Логический (булевский)

boolean

false

 

 

true

Интервальный

M1..M2

100


4. Конструкции для описания величин

Описание переменных величин

Пример

var

var

имя-переменной: имя-типа;

a: real;

имя1, имя2, имя3: имя-типа;

x, y, z: integer;

 

i, j, k: char;

 

p, q, r: 0..100;

 

s, t, u: 'a'..'z';

 

Описание постоянных величин

Пример

const

const

имя1 = значение1;

X = 40000;

имя2 = значение2;

Y = 16.32;

имя3 = значение3;

Z = -1.632E+10;

имяN = значениеN;

A = 'a';

 

R = #13;

 

T = 'тема'#13#10'урока:';


5. Оператор присваивания

Форма оператора

Пример

имя := выражение

a := 0;

 

x := x + 1;


6. Ввод и вывод

Процедура

Пример 1

Пример 2

read(список ввода)

program echo1(input,output);

program echo2(input,output);

readln(список ввода)

var m, n: integer;

var m, n: integer;

write(список вывода)

BEGIN

BEGIN

writeln(список вывода)

read(m,n);

readln(m,n);

 

write('m=',m);

writeln('m=',m);

 

write('n=',n)

writeln('n=',n)

 

END.

END.

 

Число (n)

Тип

Формат вывода

Результат вывода

16

integer

write(n)

16

16

integer

write(n:2)

16

16

integer

write(n:5)

    16

16.32

real

write(n);

1.6320000000E+01

16.32

real

write(n:12)

1.63200E+01

16.32

real

write(n:5:2)

16.32

16.32

real

write(n:10:4)

    16.3200


7. Модуль crt (cathode ray tube)

Процедуры и функции

Операция

Пример

clrscr

Очистить экран

clrscr

textcolor(цвет)

Установить цвет текста

textcolor(1)

 

 

textcolor(blue)

textbackground(цвет)

Установить цвет фона

textbackground(1)

 

 

textbackground(blue)

delay(время в миллисекундах)

Остановить выполнение на заданное время

delay(1000)

gotoxy(колонка,строка)

Установить курсор на заданную позицию

gotoxy(40,20)

keypressed

Если была нажата клавиша, то true (функция)

repeat write('o') until keypressed

readkey

Остановить выполнение до нажатия клавиши, прочитать код нажатой клавиши (функция)

readkey

 

 

c:=readkey

 

Номер и имя цвета

Номер и имя цвета

0 black

8 darkgray

1 blue

9 lightblue

2 green

10 lightgreen

3 cyan

11 lightcyan

4 red

12 lightred

5 magenta

13 lightmagenta

6 brown

14 yellow

7 lightgray

15 white


8. Арифметические средства языка

Арифметическая операция

Описание операции

Пример

+

Сложение

 

-

Вычитание

 

*

Умножение

 

/

Деление

5.0/2.0 = 2.5

div

Целочисленное деление (деление без остатка)

5 div 2 = 2

mod

Остаток от деления

5 mod 2 = 1

shl

Двоичный сдвиг влево

5 shl 1 = 10

shr

Двоичный сдвиг вправо

5 shr 1 = 2

 

Функция

Результат функции

Пример

abs(x)

Модуль числа (абсолютное значение)

abs(-2) = 2

sqr(x)

Квадрат числа

sqr(2) = 4

sqrt(x)

Квадратный корень числа

sqrt(4) = 2.0

pi

Число пи ~ 3.14...

 

 

Функция

Результат функции

Пример

sin(x)

Синус числа

sin(pi) = 0

cos(x)

Косинус числа

cos(0) ~ 1.0

ln(x)

Логарифм натуральный

ln(1) = 0

exp(x)

Экспонента (число e в степени x)

exp(1) ~ 2.72

 

Функция

Результат функции

Пример

int(x)

Целая часть числа

int(3.6) = 3.0

trunc(x)

Целое число без округления

trunc(3.6) = 3

round(x)

Целое число с округлением

round(3.6) = 4


ЧАСТЬ II.

9. Логические средства языка

Оператор условия - полная форма

Пример

if условие then

if (x>0) and (y>0) then

оператор 1

begin x:=x+y; y:=0 end

else

else

оператор 2

begin x:=x-y; y:=-y end

 

Оператор условия - неполная форма

Пример

if условие then

if x>y then

оператор

x:=x mod y

 

Логическая операция

Описание операции

Приоритет (порядок выполнения операции)

not

Отрицание (НЕ)

1

and

Конъюнкция (И)

2

or

Дизъюнкция (ИЛИ)

3

xor

Сильная дизъюнкция (ИЛИ-ИЛИ)

3

 

Логическое отношение (предикат)

Описание отношения

Приоритет (порядок выполнения операции)

=

Равно

4

> 

Больше

4

< 

Меньше

4

<> 

Не равно

4

<=

Не больше (меньше или равно)

4

>=

Не меньше (больше или равно)

4

 

Оператор варианта

Пример

case выражение of

case c of

вариант-1: оператор;

0: x:=x+1;

вариант-2: оператор;

1,2: x:=x-1;

вариант-N: оператор

3..100: x:=-x

else

else

оператор

x:=0

end

end


10. Операторы цикла

Оператор цикла с управляющей переменной - форма "to"

Пример

for имя:=значение1 to значение2 do

for i:=1 to n do

оператор

begin read(a); s:=s+a end

 

Оператор цикла с управляющей переменной - форма "downto"

Пример

for имя:=значение1 downto значение2 do

for i:=n downto 0 do

оператор

write(i)

 

Оператор цикла с логическим пред-условием

Пример

while условие-повторения do

while i<=n do

оператор

begin read(a); s:=s+a; i:=i+1 end

 

Оператор цикла с логическим пост-условием

Пример

repeat

repeat

операторы

write(i); i:=i-1

until условие-выхода

until i=0


11. Массивы

Тип массива

Описание массива

Пример

Одномерный массив (вектор)

array [ тип-индекса ] of тип-элемента

var a: array [ 1..100 ] of integer;

 

Тип массива

Описание массива

Пример

2-мерный массив (матрица)

array [ тип-индекса-1, тип-индекса-2 ] of тип-элемента;

var a: array [ 1..M, 1..M ] of real;

3-мерный массив

array [ тип-индекса-1, тип-индекса-2, тип-индекса-3 ] of тип-элемента;

var a: array [ 0..1, 0..M, 0..N ] of char;

4-мерный массив

array [ тип-индекса-1, тип-индекса-2, тип-индекса-3, тип-индекса-4 ] of тип-элемента;

var a: array [ 0..1, 0..1, 0..1, 'a'..'z' ] of boolean;


12. Процедуры и функции пользователя

Процедура

Пример процедуры для обмена значений между целыми переменными m и n

program имя-программы;

program primer; var x,y: integer;

procedure имя(параметры);

procedure swap(var m,n:integer);

описания локальных величин

var s: integer;

begin

begin

операторы процедуры

s:=m; m:=n; n:=s

end;

end;

BEGIN

BEGIN

операторы программы

read(x,y); swap(x,y); writeln(x:10,y:10)

END.

END.

 

Функция

Пример функции для вычисления натуральной степени (n) целого числа (m)

program имя-программы;

program primer; var x,y: integer;

function имя(параметры): тип-результата;

function power(m,n:integer):integer;

описания локальных величин

var s,i: integer;

begin

begin

операторы функции

s:=1; for i:=1 to n do s:=s*m; power:=s

end;

end;

BEGIN

BEGIN

операторы программы

read(x,y); writeln(power(x,y))

END.

END.


Часть III.

13. Символьные типы данных

Тип

Описатель типа (имя)

Значение типа (пример)

Символьный (литерный)

char

'a'

 

 

#13

Строковый

string

'задача'

 

 

'тема'#13#10'урока:'

 

Функция

Результат функции

Пример

length(s)

Длина строки

n:=length(s)

pos(s1,s2)

Начало первого вхождения строки s1 внутри строки s2 (номер позиции)

n:=pos('+',s)

copy(s,p,n)

Часть строки s длиной n, начиная с позиции p

c:=copy(s,4,2)

concat(s1,s2,s3,...sn)

Соединить строки (функция конкатенации)

c:=concat(s,';',t,'.')

 

Функция

Результат функции

Пример

upcase(c)

Преобразовать малую букву латинского алфавита в большую (символ верхнего регистра)

c:=upcase(c)

chr(n)

Символ с номером n

c:=chr(n)

ord(c)

Номер символа со значением c

n:=ord(c)

succ(c)

Следующий символ таблицы ASCII

c:=succ(c)

pred(c)

Предыдущий символ таблицы ASCII

c:=pred(c)

 

Процедура

Операция

Пример

delete(s,p,n)

Удалить часть строки s длиной n, начиная с позиции p

delete(s,n,1)

insert(s1,s2,p)

Вставить строку s1 в строку s2, начиная с позиции p

insert('+',s,1)

val(s,x,r)

Преобразовать строку s в число x с признаком результата r

val(s,x,nan)

str(x:f,s)

Преобразовать число x в строку s с форматом числа f

str(x:10,s)

 

 

str(x:10:2,s)

s1 + s2

Соединить строки (операция конкатенации)

s:=s+';'+t+'.'


14. Множества

Тип множества

Описание множества

Пример

Постоянное множество (константа)

[ тип-элемента ]

const a = [ 0..100 ];

Переменное множество (переменная)

set of [ тип-элемента ]

var a: set of [ '0'..'9', '+', '-' ];

 

Пример описания постоянного множества

Элементы множества

const A = [ 'A'..'Z', 'a'..'z' ];

Буквы латинского алфавита

const B = [ 'a'..'z' ];

Малые буквы латинского алфавита

const C = [ 'А'..'Я', 'а'..'п', 'р'..'я', 'Ё', 'ё' ];

Буквы алфавита-кириллицы

const D = [ 'А'..'Я' ];

Большие буквы алфавита-кириллицы

const M = [ '0'..'9' ];

Цифровые символы от 0 до 9

const N = [ 0..100 ];

Целые числа от 0 до 100

 

Пример описания переменного множества

Элементы множества

var a set of [ 'A'..'Z', 'a'..'z' ];

Буквы латинского алфавита

var b set of [ 'a'..'z' ];

Малые буквы латинского алфавита

var c set of [ 'А'..'Я', 'а'..'п', 'р'..'я', 'Ё', 'ё' ];

Буквы алфавита-кириллицы

var d set of [ 'А'..'Я' ];

Большие буквы алфавита-кириллицы

var m set of [ '0'..'9' ];

Цифровые символы от 0 до 9

var n set of [ 0..100 ];

Целые числа от 0 до 100

 

Операция

Результат операции

Пример

М1 + М2

Объединение множеств М1 и М2

['0'..'9'] + ['+']

М1 - М2

Разность множеств М1 и М2

['a'..'z'] - ['x'..'z']

М1 * М2

Пересечение множеств М1 и М2

['a'..'m'] * ['c', 'i', 'n']

 

Операция

Когда результат операции равен true

Пример

значение in множество

Значение является элементом множества

not (s[i] in ['a'..'z'])

М1 = М2

Множества М1 и М2 равны между собой

 

М1 <> М2

Множества М1 и М2 не равны

 

М1 < М2

Множество М1 является подмножеством множества М2

 

М1 <= М2

Множество М1 является подмножеством множества М2 или равно М2

 

М1 > М2

Множество М1 является надмножеством множества М2

 

М1 >= М2

Множество М1 является надмножеством множества М2 или равно М2

 


Часть IV.

15. Файлы

Тип файла

Описание файла

Пример

текстовый файл (текст)

text

var t: text;

типизированный файл

file of тип-элемента

var a: file of integer;

 

Процедуры и функции

Операция

Пример

read( файл, список ввода )

Ввод данных из файла

read(t,a,b,c);

readln( файл, список ввода )

Ввод данных из файла

readln(t,a,b,c);

write( файл, список вывода )

Вывод данных в файл

write(t,x,y,z);

writeln( файл, список вывода )

Вывод данных в файл

writeln(t,x,y,z);

assign( файл, имя файла )

Определить имя файла

assign(t,'c:\text\info.txt');

reset( файл )

Открыть файл для ввода

reset(t);

rewrite( файл )

Открыть файл для вывода

rewrite(t);

close( файл )

Закрыть файл

close(t);

eof( файл )

Если конец файла, то true (функция)

while not eof(t) do read(t,a);

eoln( файл )

Если конец строки, то true (функция)

while not eoln(t) do read(t,a);


16. Типы и записи

Описание типа записи

Пример

имя типа = record

type data = record

имя-1: тип-1;

x:integer;

имя-2: тип-2;

y:integer;

имя-N: тип-N;

t:string;

end;

end;

 

var a1, a2, a3: data;

17. Ссылки и указатели

Описание указателя

Пример

имя-указателя: ^имя-типа;

var pdata: ^data;

 

Ссылка с помощью указателя

Пример

имя-указателя^

pdata^ := 0;

 

Процедура

Операция

Пример

new(имя-указателя)

Выделить память для переменной (создать переменную для указателя)

new(pdata);

dispose(имя-указателя)

Освободить память переменной (указатель:=nil)

dispose(pdata);

18. Объекты и классы

Описание типа объекта (класс)

Пример

имя класса = object (класс-родитель)

type donkey = object (animals)

свойство-1: тип-1;

x:integer;

свойство-2: тип-2;

y:integer;

свойство-N: тип-N;

t:string;

метод-1(параметры);

function run(m:string):boolean;

метод-2(параметры);

procedure show;

метод-N(параметры);

procedure hide;

end;

end;

 

var a1, a2, a3: donkey;

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Паскаль для начинающих"

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Юрист

Получите профессию

HR-менеджер

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 672 012 материалов в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 23.12.2020 361
    • DOCX 41.4 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Кузнецова Ирина Алексеевна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Кузнецова Ирина Алексеевна
    Кузнецова Ирина Алексеевна
    • На сайте: 3 года и 4 месяца
    • Подписчики: 0
    • Всего просмотров: 104321
    • Всего материалов: 236

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

HR-менеджер

Специалист по управлению персоналом (HR- менеджер)

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Организация деятельности библиотекаря в профессиональном образовании

Библиотекарь

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 290 человек из 67 регионов
  • Этот курс уже прошли 852 человека

Курс повышения квалификации

Специалист в области охраны труда

72/180 ч.

от 1750 руб. от 1050 руб.
Подать заявку О курсе
  • Сейчас обучается 33 человека из 20 регионов
  • Этот курс уже прошли 158 человек

Курс профессиональной переподготовки

Библиотечно-библиографические и информационные знания в педагогическом процессе

Педагог-библиотекарь

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 499 человек из 71 региона
  • Этот курс уже прошли 2 336 человек

Мини-курс

Подготовка менеджеров по продажам: аспекты телефонных переговоров

10 ч.

1180 руб. 590 руб.
Подать заявку О курсе

Мини-курс

Формирование здоровых детско-родительских отношений: влияние и преодоление сепарации

4 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 161 человек из 46 регионов
  • Этот курс уже прошли 87 человек

Мини-курс

Современное инвестирование: углубленное изучение инвестиций и финансовых рынков

8 ч.

1180 руб. 590 руб.
Подать заявку О курсе
  • Сейчас обучается 28 человек из 14 регионов
Сейчас в эфире

Городское фэнтези "Обряд"

Перейти к трансляции