Содержание
-
Язык программирования Паскаль.
-
Язык программирования Pascal
Язык программирования Паскаль был разработан профессором, директором Института информатики Швейцарской высшей политехнической школы Николаусом Виртом в 1968-1970 гг. как язык обучения студентов программированию.
-
Николаус Вирт
- Но думать, что Паскаль- язык исключительно для обучения, было бы неверно. Вот что говорил об этом Н. Вирт (1984 г.):
- «Утверждалось, что Паскаль был разработан в качестве языка для обучения. Хотя это утверждение справедливо, но его использование при обучении не являлось единственной целью. На самом деле я не верю в успешность применения во время обучения таких инструментов и методик, которые нельзя использовать при решении каких-то практических задач».*
-
Язык программирования Pascal
- С тех пор Паскаль становился всё более и более популярным, причем не только, как язык для обучения принципам программирования, но и как средство создания достаточно сложного программного обеспечения.
- В своем первоначальном виде Паскаль имел довольно ограниченные возможности, но расширенный вариант этого языка – Turbo Pascal является мощным языком программирования.
-
Почему PASCAL
Язык программирования Pascal был назван в честь французского учёного Блеза Паскаля, который еще в 1642 г. изобрел первую механическую счётную машину. Она представляла собой систему взаимодействующих зубчатых колёсиков, каждое из которых соответствовало одному разряду десятичного числа и содержало цифры от 0 до 9. Когда колёсико совершало полный оборот, следующее сдвигалось на одну цифру. Машина Паскаля была суммирующей машиной.
-
Основные сведения о языках программирования
- Язык – система знаков.
- Язык ЭВМ (машинный язык) – двоичная знаковая система.
- Поэтому, чтобы компьютер мог понять написанную программу, она должна быть переведена на язык, понятный компьютеру. Этот процесс перевода называется трансляцией.
-
Интерпретаторы и компиляторы
- Существует два различных подхода к трансляции – интерпретация и компиляция:
- Интерпретатор переводит и выполняет программу строка за строкой.
- Компиляторпереводит программу целиком, а затем выполняет её.
-
Интегрированная среда Turbo Pascal-7.0
- Огромную роль в массовом распространении Паскаля сыграла компания Borland International. Она сумела создать знаменитую Turbo-среду разработки. Это был огромный шаг вперед в облегчении процесса программирования.
- Почему Turbo? Turbo в переводе с английского сленга означает ускорение. Компилятор, входящий в состав Turbo Pascal очень быстро переводит программу с языка программирования в машинные коды.
-
- В состав интегрированной среды входят:
- Текстовый редактор
- Компилятор
- Отладчик
- Справочная система
- Среда выполнения программы
-
Основные средства языка
- Символы языка - это элементарные знаки, используемые при составлении текстов.
- Алфавит языка - набор таких символов.
- Алфавит языка Turbo Pascal 7.0 включает:
- все латинские прописные и строчные буквы
- арабские цифры (0 – 9)
- символы + - * / = < > , . ; : ' _ ( ) { } и др.
- служебные(зарезервированные) слова
-
- Для записи команд, имен функций, поясняющих терминов Turbo Pascal 7.0 существует набор строго определенных слов, которые называются служебными или зарезервированными (это английские мнемонические сокращения).
- Служебные слова делятся на три группы:
- операторы (READ, WRITELN и др.)
- имена функций (SIN, COS и др.)
- ключевыеслова (VAR, BEGIN, END идр.)
-
- Именем величиныназывается её обозначение, это слово из букв, цифр и знаков подчёркивания, начинающееся с буквы.
- Числа: целые,
- вещественные: с фиксированной точкой (-1.23; 654.2),
- с плавающей точкой (2,473 103, 437,8 10-2).
- Шесть операций: + сложение, - вычитание, / деление, * умножение, mod нахождение остатка, div деление нацело.
-
- Арифметическое выражение конструируется из имён, чисел, знаков арифметических действий, математических функций.
- Для указания порядка действий используются только круглые скобки.
- Для возведения в квадрат используется обозначение sqr(х).
- Для извлечения квадратного корня используется обозначение sqrt(х).
- Модуль обозначается abs(х).
-
- Оператор присваивания
- Имя переменной := арифметическое выражение.
- х:= 3.24 или х:= х+4.
- Тип переменной
- Если переменная слева вещественного типа, то арифметическое выражение может бытькак целого, так и вещественного типа.
- Если переменная слева целого типа, то арифметическое выражение только целочисленное.
-
- Структура программы в Паскале
- 1 часть – описание данных и операторов.
- 2 часть –программный блок.
- Общий вид программы:
- Program (имя программы)
- label (список меток)
- const (список постоянных значений)
- type (описания сложных типов данных)
- var (описания данных программы)
- begin (начало программного блока)
- (алгоритм)
- end. (конец программы)
-
- Имя программы: не более 8 знаков, начинается с буквы.
- end c точкой.
- Описательная часть состоит из 4 разделов: меток, констант, имён и типов переменных.
- varимя и тип переменной: integer(целый), real (вещественный). Например: var i, j: integer; x: real;
- Описание каждого типа заканчивается точкой с запятой.
- Программный блок содержит операторы, описывающие алгоритм решения задачи.
-
- Операторы ввода и вывода:
- read (список имён) – останавливает работу программы и ждёт, пока пользователь наберёт на клавиатуре числа (через пробел) и нажмёт ENTER. Например: read (i, j); После работы этого оператора курсор располагается за последним числом но не переводится на новую строку. Для перевода курсора на новую строку после ввода данных надо использовать оператор readln(список имён).
- write(список вывода) – выводит данные на экран. Список вывода - перечисленные через запятую имена результатов вычисления и пояснительные тексты в апострофах. Например: write('х=', х); На экране напечатается число с фиксированной точкой. Например: write('х=', х:6:2); на экране будет выдано число из 6 знаков из них два после запятой, (х = -23.57 ).
- Перевод курсора на новую строку осуществляется оператором пустого вывода writeln. Оператор пустого ввода readln
-
- начало
- ввод а, в
- а+в, a*b, a-b
- вывод
- а+в, a*b, a-b
- конец
- Задача: для двух вещественных чисел найдите сумму, произведение и разность
-
- Program E1;
- var a,b: real;
- begin
- write ('введите два числа через пробел, затем нажмите ');
- readln (a,b);
- write ('a + b = ' , a + b , ' a * b = ' , a * b , 'a - b = ' , a – b);
- readln
- end.
-
- Работа в системеТурбо Паскаль
- Alt + F10 – меню
- File – New – создать новый файл
- Enter – следует поставить в конце каждой строки
- Сtrl + Y – удалить строку
- Enter – вставить строку
- Для выполнения программы надо в меню выбрать Run
- Транслятор – переводит программу с языка Паскаль на машинный язык и ищет синтаксические ошибки.
- Если ошибки найдены, то произойдёт возврат в редактор, курсор укажет на ошибку.
- Если ошибки не найдены, программа выполняется
-
- Для выхода из программы выберите файл – exit
- или нажмите Alt+x
- Для сохранения программы наберите путь и наберите имя файла
-
- Program E2;
- var a,b,x,y,z: real;
- begin
- write ('введите два числа через пробел, затем нажмите ');
- readln (a,b);
- x := a + b
- y := a * b
- z := a - b
- write ('a + b = ' , x , ' a * b = ' , y , 'a - b = ' , z);
- readln
- end.
-
Команда ветвлениянеполная форма условного оператора
- IFусловиеTHEN оператор;
- ?
- оператор
- IF
- THEN
- +
- -
-
Команда ветвленияполная форма условного оператор
- ?
- Оператор1
- IF
- THEN
- +
- -
- ELSE
- Оператор2
- IFусловиеTHEN оператор 1ELSE оператор 2;
-
- Иногда после слов THEN и ELSE надо выполнить не один, а несколько операторов. Тогда эти операторы заключаются в операторные скобки.Открывающая скобка – слово BEGIN,закрывающая скобка – слово END.
- Перед словом ELSE точка с запятой не ставится.
- Рекомендуется каждую пару BEGIN – END записывать в одном столбце.
- IFусловиеTHEN beginоператор 1;оператор 2; оператор NendELSE beginоператор 1;оператор 2;оператор Mend;
-
- Команда ветвления
- IFусловие THEN оператор; - неполный условный оператор,
- IFусловие THEN оператор 1 ELSE оператор 2; - полный условный оператор.
- Задание
- Для двух чисел определите являются ли они чётными?
-
- Program E3;
- var a,b: integer;
- begin
- write ('введите два целых числа через пробел, затем нажмите ');
- readln (a,b);
- if a mod 2 = 0 then writeln('а – чётное')
- else writeln('а – нечётное');
- if b mod 2 = 0 then writeln('b – чётное')
- else writeln('b – нечётное');
- readln
- end.
-
- 3,если a>0
- 6,если a< =0
- Составьте программу для вычисления Y и назовите её Е31
- Y=
-
- Program E31;
- var a,y: real;
- begin
- write ('введите число затем нажмите ');
- readln (a);
- if a >0 then y:=3 else y:=6;
- write ('y=',y);
- readln
- end.
-
- a+b,если a>b
- a*b,если a< =b
- Составьте программу для вычисления X и назовите её Е32, аи b –вещественные числа.
- X=
-
- Program E32;
- var a,b,x: real;
- begin
- write ('введите два числа через пробел затем нажмите ');
- readln (a);
- if a >b then x:=a+b else x:=a*b;
- write ('x=',x);
- readln
- end.
-
- Повторение
- начало
- действие
- условие
- конец
- действие
- Да
- Нет
-
- Организация циклов
- Повторяющиеся действия в программировании называются циклом
- Оператор безусловного перехода
- goto n, n -целое число (не более 4-х символов), метка.
- Метка повторяется 3 раза:
- В разделе Label;
- В операторе goto;
- Перед оператором на который осуществляется безусловный переход.
-
- Организация циклов с помощью операторов условного и безусловного переходов.
- Задача.
- Найти сумму первых двадцати чисел. (1+2+3….+20).
- а 123 4 5……………20
- S 0 136 10 15………….
-
- Program E4;
- label 2,1;
- var а, b, s: integer;
- begin
- write ('введите два целых числа через пробел, затем нажмите ');
- readln (a,b);
- s:=0;
- 1: if a
-
- Оператор цикла пока
- Whileусловиеdoоператор
- Оператор повторяется пока выполняется условие
- Оператор может быть простым и составным
- begin……… end – операторные скобки
- Задача.
- Вычислить наибольший общий делитель двух натуральных чисел а и b.
-
- Алгоритм Евклида:
- будем уменьшать каждый раз большее из чисел на величину меньшего до тех пор, пока оба числа не станут равными.
- Например:
- Исходные 1 шаг 2 шаг 3 шаг
- а= 25
- b=15
- 1015
- 105
- 5 5
- НОД(а,b)=5
-
- Program E5;
- var а, b: integer;
- begin
- write ('НОД=',а);
- readln;
- end.
- write ('Введите два натуральных числа через пробел');
- readln (a,b);
- while a<>b do
- if a>b then a:=a-b
- else b:=b-a;
-
- Оператор цикла до
- repeatоператорuntilусловие
- Между словами repeatи untilможет быть любоеколичество операторов без использования операторных скобок.
- Задача.
- Вычислить наибольший общий делитель двух натуральных чисел а и b.
-
- Program E6;
- var а, b: integer;
- begin
- write ('НОD=',а);
- readln;
- end.
- repeat
- until a=b;
- if a>b then a:=a-b;
- if b>a then b:=b-a
- write ('Введите два натуральных числа через пробел');
- readln (a,b);
-
- Операторы циклов пересчёт
- fori:=n1 to n2 do оператор;
- «Для i начиная с n1 до n2 выполнить оператор»
- i – переменная цикла;
- Еслиi+1<= n1, то оператор выполняется, если нет, то происходит выход из цикла и выполнение следующего по порядку оператора.
- Оператор может быть простым и составным
- begin……… end – операторные скобки
-
- Задача.
- Вычислите P = n! (n факториал).
- По определению n! = 1*2*3*4*5…..n.
- 2
- 2
- 3
- 6
- 4
- 24
- 1
- 1
- i
- P
- 5
- 120
- 5! = 120
-
- Program E7;
- var : integer;
- begin
- write
- readln;
- end.
- write ('Введите целое n =');
- readln (n);
- n, р,
- р: = 1;
- i
- for i: = 1 to n do
- p: = p*i ;
- (n , '!=' , p);
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.