Презентація на тему «Язык программирования Паскаль»

content: Язык программирования Паскаль.

content: Язык программирования PascalЯзык программирования Паскаль был разработан профессором, директором Института информатики Швейцарской высшей политехнической школы Николаусом Виртом в 1968-1970 гг. как язык обучения студентов программированию.

content: Николаус ВиртНо думать, что Паскаль- язык исключительно для обучения, было бы неверно. Вот что говорил об этом Н. Вирт (1984 г.):«Утверждалось, что Паскаль был разработан в качестве языка для обучения. Хотя это утверждение справедливо, но его использование при обучении не являлось единственной целью. На самом деле я не верю в успешность применения во время обучения таких инструментов и методик, которые нельзя использовать при решении каких-то практических задач».** http://pascal.sources.ru

content: Язык программирования PascalС тех пор Паскаль становился всё более и более популярным, причем не только, как язык для обучения принципам программирования, но и как средство создания достаточно сложного программного обеспечения.В своем первоначальном виде Паскаль имел довольно ограниченные возможности, но расширенный вариант этого языка – Turbo Pascal является мощным языком программирования.

content: Почему PASCAL?Язык программирования Pascal был назван в честь французского учёного Блеза Паскаля, который еще в 1642 г. изобрел первую механическую счётную машину. Она представляла собой систему взаимодействующих зубчатых колёсиков, каждое из которых соответствовало одному разряду десятичного числа и содержало цифры от 0 до 9. Когда колёсико совершало полный оборот, следующее сдвигалось на одну цифру. Машина Паскаля была суммирующей машиной.

content: Основные сведения о языках программированияЯзык – система знаков.Язык ЭВМ (машинный язык) – двоичная знаковая система.Поэтому, чтобы компьютер мог понять написанную программу, она должна быть переведена на язык, понятный компьютеру. Этот процесс перевода называется трансляцией.

content: Интерпретаторы и компиляторыСуществует два различных подхода к трансляции – интерпретация и компиляция:Интерпретатор переводит и выполняет программу строка за строкой.Компилятор переводит программу целиком, а затем выполняет её.

content: Интегрированная среда Turbo Pascal-7.0Огромную роль в массовом распространении Паскаля сыграла компания Borland International. Она сумела создать знаменитую Turbo-среду разработки. Это был огромный шаг вперед в облегчении процесса программирования.Почему Turbo? Turbo в переводе с английского сленга означает ускорение. Компилятор, входящий в состав Turbo Pascal очень быстро переводит программу с языка программирования в машинные коды.

content: Интегрированная среда Turbo Pascal-7.0В состав интегрированной среды входят:Текстовый редакторКомпиляторОтладчикСправочная системаСреда выполнения программы

content: Основные средства языкаСимволы языка - это элементарные знаки, используемые при составлении текстов.Алфавит языка - набор таких символов.Алфавит языка Turbo Pascal 7.0 включает:все латинские прописные и строчные буквыарабские цифры (0 – 9)символы + - * / = < > , . ; : ‘ _ ( ) { } и др.служебные (зарезервированные) слова

content: Для записи команд, имен функций, поясняющих терминов Turbo Pascal 7.0 существует набор строго определенных слов, которые называются служебными или зарезервированными (это английские мнемонические сокращения).Служебные слова делятся на три группы:операторы (READ, WRITELN и др.)имена функций (SIN, COS и др.)ключевые слова (VAR, BEGIN, END и др.)Основные средства языка

content: Именем величины называется её обозначение, это слово из букв, цифр и знаков подчёркивания, начинающееся с буквы.Числа: целые,вещественные: с фиксированной точкой (-1.23; 654.2),с плавающей точкой (2,473 103, 437,8 10-2).Шесть операций: + сложение, - вычитание, / деление, * умножение, mod нахождение остатка, div деление нацело.

content: Арифметическое выражение конструируется из имён, чисел, знаков арифметических действий, математических функций.Для указания порядка действий используются только круглые скобки.Для возведения в квадрат используется обозначение sqr(х).Для извлечения квадратного корня используется обозначение sqrt(х).Модуль обозначается abs(х).

content: Оператор присваиванияИмя переменной := арифметическое выражение.х:= 3.24 или х:= х+4.Тип переменнойЕсли переменная слева вещественного типа, то арифметическое выражение может быть как целого, так и вещественного типа.Если переменная слева целого типа, то арифметическое выражение только целочисленное.

content: Структура программы в Паскале1 часть – описание данных и операторов.2 часть – программный блок.Общий вид программы:Program (имя программы)label (список меток)const (список постоянных значений)type (описания сложных типов данных)var (описания данных программы)begin (начало программного блока)(алгоритм)end. (конец программы)

content: Имя программы: не более 8 знаков, начинается с буквы.end c точкой.Описательная часть состоит из 4 разделов: меток, констант, имён и типов переменных.var имя и тип переменной: integer (целый), real (вещественный). Например: var i, j: integer; x: real;Описание каждого типа заканчивается точкой с запятой.Программный блок содержит операторы, описывающие алгоритм решения задачи.

content: Операторы ввода и вывода:read (список имён) – останавливает работу программы и ждёт, пока пользователь наберёт на клавиатуре числа (через пробел) и нажмёт ENTER. Например: read (i, j); После работы этого оператора курсор располагается за последним числом но не переводится на новую строку. Для перевода курсора на новую строку после ввода данных надо использовать оператор readln(список имён).write (список вывода) – выводит данные на экран. Список вывода - перечисленные через запятую имена результатов вычисления и пояснительные тексты в апострофах. Например: write(‘х=‘, х); На экране напечатается число с фиксированной точкой. Например: write(‘х=‘, х:6:2); на экране будет выдано число из 6 знаков из них два после запятой, (х = -23.57 ).Перевод курсора на новую строку осуществляется оператором пустого вывода writeln. Оператор пустого ввода readln

content: началоввод а, ва+в, a*b, a-bвывода+в, a*b, a-bконецЗадача: для двух вещественных чисел найдите сумму, произведение и разность

content: Program E1;var a,b: real;beginwrite (‘введите два числа через пробел, затем нажмите ');readln (a,b);write (‘a + b = ‘ , a + b , ‘ a * b = ‘ , a * b , ‘a - b = ‘ , a – b);readlnend.

content: Работа в системе Турбо ПаскальAlt + F10 – менюFile – New – создать новый файлEnter – следует поставить в конце каждой строкиСtrl + Y – удалить строкуEnter – вставить строкуДля выполнения программы надо в меню выбрать RunТранслятор – переводит программу с языка Паскаль на машинный язык и ищет синтаксические ошибки.Если ошибки найдены, то произойдёт возврат в редактор, курсор укажет на ошибку.Если ошибки не найдены, программа выполняется

content: Для выхода из программы выберите файл – exitили нажмите Alt+xДля сохранения программы наберите путь и наберите имя файла

content: Program E2;var a,b,x,y,z: real;beginwrite (‘введите два числа через пробел, затем нажмите ');readln (a,b);x := a + by := a * bz := a - bwrite (‘a + b = ‘ , x , ‘ a * b = ‘ , y , ‘a - b = ‘ , z);readlnend.

content: Команда ветвлениянеполная форма условного оператораIF условие THEN оператор;?операторIFTHEN+-

content: ?Оператор1IFTHEN+-ELSEОператор2Команда ветвленияполная форма условного операторIF условие THEN оператор 1 ELSE оператор 2;

content: Иногда после слов THEN и ELSE надо выполнить не один, а несколько операторов. Тогда эти операторы заключаются в операторные скобки.Открывающая скобка – слово BEGIN,закрывающая скобка – слово END.Перед словом ELSE точка с запятой не ставится.Рекомендуется каждую пару BEGIN – END записывать в одном столбце.IF условие THEN begin оператор 1; оператор 2; оператор N end ELSE begin оператор 1; оператор 2; оператор M end ;

content: Команда ветвленияIF условие THEN оператор; - неполный условный оператор,IF условие THEN оператор 1 ELSE оператор 2; - полный условный оператор.ЗаданиеДля двух чисел определите являются ли они чётными?

content: Program E3;var a,b: integer;beginwrite (‘введите два целых числа через пробел, затем нажмите ');readln (a,b);if a mod 2 = 0 then writeln (‘а – чётное')else writeln (‘а – нечётное');if b mod 2 = 0 then writeln (‘b – чётное')else writeln (‘b – нечётное');readlnend.

content: 3, если a>06, если a< =0Составьте программу для вычисления Y и назовите её Е31Y=

content: Program E31;var a,y: real;beginwrite (‘введите число затем нажмите ');readln (a);if a >0 then y:=3 else y:=6;write (‘y=‘,y);readlnend.

content: a+b, если a>ba*b, если a< =bСоставьте программу для вычисления X и назовите её Е32, а и b –вещественные числа.X=

content: Program E32;var a,b,x: real;beginwrite (‘введите два числа через пробел затем нажмите ');readln (a);if a >b then x:=a+b else x:=a*b;write (‘x=‘,x);readlnend.

content: ПовторениеначалодействиеусловиеконецдействиеДаНет

content: Организация цикловПовторяющиеся действия в программировании называются цикломОператор безусловного переходаgoto n, n - целое число (не более 4-х символов), метка.Метка повторяется 3 раза:В разделе Label;В операторе goto;Перед оператором на который осуществляется безусловный переход.

content: Организация циклов с помощью операторов условного и безусловного переходов.Задача.Найти сумму первых двадцати чисел. (1+2+3….+20).а 1  2 3 4 5……………20S 0 1 3 6 10 15………….

content: Program E4;label 2,1;var а, b, s: integer;beginwrite (‘введите два целых числа через пробел, затем нажмите ');readln (a,b);s:=0;1: if aelse goto 2;a:=a+1;goto 1;2: write (‘s=‘,s);readln; end.

content: Оператор цикла покаWhile условие do операторОператор повторяется пока выполняется условиеОператор может быть простым и составнымbegin……… end – операторные скобкиЗадача.Вычислить наибольший общий делитель двух натуральных чисел а и b.

content: Алгоритм Евклида:будем уменьшать каждый раз большее из чисел на величину меньшего до тех пор, пока оба числа не станут равными.Например:Исходные 1 шаг 2 шаг 3 шага= 25b=1510151055 5НОД(а,b)=5

content: Program E5;var а, b: integer;beginwrite (‘НОД=‘,а);readln;end.write (‘Введите два натуральных числа через пробел');readln (a,b);while a<>b doif a>b then a:=a-belse b:=b-a;

content: Оператор цикла доrepeat оператор until условиеМежду словами repeat и until может быть любое количество операторов без использования операторных скобок.Задача.Вычислить наибольший общий делитель двух натуральных чисел а и b.

content: Program E6;var а, b: integer;beginwrite (‘НОD=‘,а);readln;end.repeatuntil a=b;if a>b then a:=a-b;if b>a then b:=b-awrite (‘Введите два натуральных числа через пробел');readln (a,b);

content: Операторы циклов пересчётfor i:=n1 to n2 do оператор;«Для i начиная с n1 до n2 выполнить оператор»i – переменная цикла;Если i+1<= n1, то оператор выполняется, если нет, то происходит выход из цикла и выполнение следующего по порядку оператора.Оператор может быть простым и составнымbegin……… end – операторные скобки

content: Задача.Вычислите P = n! (n факториал).По определению n! = 1*2*3*4*5…..n.223642411iP51205! = 120

content: Program E7;var : integer;beginwritereadln;end.write (‘Введите целое n =');readln (n);n, р,р: = 1;ifor i: = 1 to n dop: = p*i ;(n , ‘!=‘ , p);