Презентация на тему "Структурированные операторы Паскаля"

Презентация: Структурированные операторы Паскаля
1 из 65
Ваша оценка презентации
Оцените презентацию по шкале от 1 до 5 баллов
  • 1
  • 2
  • 3
  • 4
  • 5
2.0
1 оценка

Комментарии

Нет комментариев для данной презентации

Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.


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

Аннотация к презентации

Посмотреть и скачать презентацию по теме "Структурированные операторы Паскаля" по информатике, включающую в себя 65 слайдов. Скачать файл презентации 0.2 Мб. Средняя оценка: 2.0 балла из 5. Для студентов. Большой выбор учебных powerpoint презентаций по информатике

Содержание

  • Презентация: Структурированные операторы Паскаля
    Слайд 1

    Структурированные операторы Паскаля Структурированными являются такие операторы, которые состоят из других операторов.

  • Слайд 2

    К ним относятся:-составной оператор;-условный оператор IF;-условный оператор CASE;-операторы циклаWHILE, REPEAT, FOR.

  • Слайд 3

    Составной оператор позволяет объединить несколько операторов Паскаля в одну конструкцию, которая рассматривается как составной оператор. Составной оператор

  • Слайд 4

    . Общий вид оператора следующий:

    begin оператор 1; оператор 2; . . . . . . оператор n end;

  • Слайд 5

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

  • Слайд 6

    Условный оператор

    Условный оператор позволяет на определенном этапе выбрать одно из двух действий в результате анализа некоторых условий.

  • Слайд 7

    Существуют следующие виды записи условного оператора:

    If then ; If then else ; If then else if then else ;

  • Слайд 8

    Для условного оператора первого вида, если условие истинно, то выполняется оператор, стоящий после then. Если же условие ложно, то этот оператор не выполняется, а выполняется оператор, следующий за условным

  • Слайд 9

    Например: if x0 then y:=sqrt(x) else y:=x.

  • Слайд 10

    В третьей форме записи условный оператор расширен за счет вложенности новых условий. Например: if xb then p:=sin else p:=cos(x).

  • Слайд 11

    Следует помнить, что после then и else может стоять только один оператор. Поэтому, если возникает необходимость выполнения группы операторов, то их надо объединить в один, взяв в операторные скобки (т.е. использовать составной оператор begin…end).

  • Слайд 12

    Кроме того, при необходимости учета нескольких условий используются логические операции: and (и), or (или), not (не) . Например, алгоритм: если AC то Y1:=A2 и Y2:=A*C; следует записать: If (AC) then begin Y1:= sqr(A); Y2:=A*C end; .

  • Слайд 13

    Оператор выбора CASE

    Оператор CASE предназначен для программирования алгоритмов с большим числом разветвлений. Этот оператор обеспечивает выполнение одного оператора (простого или составного) из нескольких возможных.

  • Слайд 14

    Общий вид оператора CASE:

    case of : оператор 1; : оператор 2; . . . . . : оператор n; else end;

  • Слайд 15

    Здесь значение выражения должно быть одного и того же скалярного типа (кроме real), что и метки. Оператор выбора действует следующим образом. Если значение выражения равно одной из меток, то выполняется соответствующий ей оператор. Затем управление передается за пределы оператора выбора.

  • Слайд 16

    Замечание Метки оператора CASE не описываются в разделе label, и на них нельзя переходить оператором GOTO. Метки внутри одного оператора выбора должны быть различными.

  • Слайд 17

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

    Для организации циклов (повторов) при записи алгоритмов на языке Паскаль используются три вида операторов цикла: WHILE – оператор цикла с предварительным условием; REPEAT – оператор цикла с последующим условием; FOR – оператор цикла с управляющим параметром.

  • Слайд 18

    Оператор цикла WHILE

    Общий вид оператора следующий: while do ; где –логическое выражение; – тело цикла (простой или составной оператор).

  • Слайд 19

    Оператор действует следующим образом. Проверяется условие, если оно истинно, выполняются операторы циклической части. Как только оно становится ложным, происходит выход из цикла. На литературном языке это будет выглядеть примерно так: «Пока указанное условие верно, выполнять следующее».

  • Слайд 20

    Пример: Зависимость удельной теплоемкости химического соединения от температуры выражается формулой Ср = a + bT + cТ 2 , где а, b, c –постоянные коэффициенты; Т– температура. Вычислить удельную теплоемкость в интервале температур от 200 до 800 К с шагом 50 К.

  • Слайд 21

    Программа Program Tepl; var a,b,c,Cp:real; T,h:integer; Begin writeln('Введите коэффициенты'); readln(a,b,c); T:=200; h:=50; while T

  • Слайд 22

    Действие цикла можно прокомментировать: «Пока температура меньше 800 К, вычислять значение теплоемкости». После выполнения программы все нужные нам значения теплоемкости будут выведены на экран.

  • Слайд 23

    Оператор цикла REPEAT Общий вид оператора следующий: repeat ; . . . . . {операторы циклической части} until ;

  • Слайд 24

    Оператор действует следующим образом. Выполняются операторы циклической части, проверяется условие. Если оно ложно, то вновь выполняется тело цикла, если оно истинно, то происходит выход из цикла. Это может быть выражено так: «Повторять действие до тех пор, пока не выполнится условие».

  • Слайд 25

    Примечание. Так как границы цикла обозначены словами REPEAT и UNTIL, нет необходимости заключать операторы циклической части в операторные скобки begin – end, хотя их использование не является ошибкой. Пример. Вычислить значение теплоемкости Ср с использованием оператора REPEAT.

  • Слайд 26

    Program Tepl; var a,b,c,Cp:real; T,h:integer; Begin writeln('Введите а,b,c='); readln(a,b,c); T:=200; h:=50; repeat Cp:=a+b*T+c*T*T; writeln('T=',T:3,' Cp=',Cp:7:2); T:=T+h; until T>800; End.

  • Слайд 27

    Примечание. Действие оператора REPEAT, противоположно действию оператора WHILE, т.к. в первом условие выхода из цикла должно быть истинным, а во втором – ложным. Значения переменных, входящих в условие операторов WHILE и REPEAT должны обязательно изменяться в теле цикла, иначе цикл не будет завершен. (В приведенном нами примере - это значение переменной Т).

  • Слайд 28

    Оператор цикла FOR. Оператор цикла FOR используется для организации цикла, когда известно число повторений. Существует два варианта оператора: – при увеличении значения параметра (цикл с положительным шагом: +1) for i:=n1 to n2 do ; – при уменьшении значения параметра (цикл с отрицательным шагом: –1) for i:=n1 downto n2 do , где i – параметр цикла; n1 и n2 – начальные и конечные значения параметра цикла; – тело цикла (простой или составной операторы).

  • Слайд 29

    Параметры i, n1, n2 должны иметь один и тот же тип, кроме real, шаг параметра цикла всегда 1. Цикл действует таким образом. Параметру i присваивается начальное значение n1 и сравнивается со значением n2. До тех пор, пока параметр i меньше или равен конечному значению n2 (в первом варианте) или больше, или равен n2 (во втором варианте), выполняются операторы циклической части; в противном случае происходит выход из цикла.

  • Слайд 30

    Примечание: Внутри цикла нельзя изменять начальное (n1) и конечное (n2) значения параметра цикла, а также само значение i. 2. После завершения цикла значение параметра i становится неопределенным (т.е. ничему неравным), за исключением выхода из цикла при помощи GOTO. 3. Во всех трех операторах цикла внутри цикла можно использовать операторы IF, GOTO. Разрешается в любой момент выходить из цикла, не дожидаясь его завершения. Но запрещено при помощи этих операторов передавать управление извне цикла внутрь цикла.

  • Слайд 31

    Пример: Рассмотрим расчет теплоемкости с использованием оператора FOR.  Program Tepl; var a,b,c,Cp:real; T,h,i:integer; Begin writeln('Введи a,b,c='); readln(a,b,c); T:=200; h:=50; for i:=1 to 13 do begin Cp:=a+b*T+c*T*T; writeln('T=',T:3,' Cp=',Cp:7:2); T:=T+h; end; End.

  • Слайд 32

    Параметр цикла i изменяется от 1 до 13, т.к. на заданном интервале температуры от 200 до 800 К с шагом 50 К должно быть вычислено тринадцать значений теплоемкости. Следует помнить. Операторы цикла WHILEи FORмогут содержать в теле цикла только один оператор. Поэтому при необходимости вычисления нескольких операторов необходимо заключать их в операторные скобки ( т.е. использовать составной оператор begin …end).

  • Слайд 33

    Структурированные типы данных

    Массивы Массив – это упорядоченная последовательность элементов одного типа, обозначенных одним именем. Отдельная величина последовательности называется элементом массива (переменная с индексом). Индекс указывает положение (адрес) элемента в массиве.

  • Слайд 34

    Любой массив имеет имя, размерность и длину (размер). Количество индексов у переменной с индексом определяет размерность массива. Длина массива – это общее число его элементов.

  • Слайд 35

    Примерами массивов могут быть:1) вектор х= {х1,х2,.,х10} – это одномерный массив состоящий из десяти элементов хi, где i=1, …, 102) матрица а11а12а13а21а22а23это двумерный массив из шести элементов аij, где i=1,2; j=1,2,3.

  • Слайд 36

    Описание массивов. Возможны два способа описания массивов:   1) type = array[] of ; var : .  

  • Слайд 37

    Вначале определяется некоторый тип со структурой массива, а затем описывается переменная, как имеющая данный тип.   2) var : array [] of .  

  • Слайд 38

    Например, массивы вещественных чисел а1, а2, ... , а10 и b1, b2, ... , b10 можно описать: 1) type mas = array[1..10] of real; var a,b:mas;   2) var a,b: array [1..10] of real;  

  • Слайд 39

    Доступ к каждому элементу массива можно выполнить путем указания имени массива, за которым в квадратных скобках следует индекс элемента. Индекс элемента может быть задан переменной – а[i]; числом – а[5]; выражением – а[2*i–1].  

  • Слайд 40

    Примеры описания массивов: var {одномерный массив целых чисел} x:array[1..10]of integer; {одномерный массив вещественных чисел} y:array[1..5]of real; {двумерный массив вещественных чисел} a:array[1..3,1..5]of real; {трехмерный массив символьных данных} b:array[1..2,1..5,1..3]of char;.  

  • Слайд 41

    Ввод–вывод массивов. Для ввода–вывода массивов используются циклы. Рассмотрим ввод и вывод массивов на примерах. Пример ввода–вывода одномерного массива. Пусть для решения задачи необходимо ввести численные значения молекулярных масс десяти химических веществ: M1, M2, ... , M10.  

  • Слайд 42

    var M:array[1..10]of real; i:integer; Begin {ввод значений массива М в столбце} writeln('Введите М'); for i:=1 to 10 do begin writeln(’M’,i); readln(M[i]); end; {вывод элементов массива М в строку} for i:=1 to 10 do write(M[i]); End.

  • Слайд 43

    Ввод значений с экрана монитора будет происходить следующим образом. После появления записи: «введи М», следует записать численное значение М[1] и нажать на «Enter» и так до десятого элемента включительно. Введи М М1 ; M2 ; . . . . . M10 .

  • Слайд 44

    Пример ввода–вывода двумерного массива. Требуется ввести значения теплоемкостей пяти органических соединений, представляющих три гомологических ряда: алканы, алкены, спирты. Ср11, Ср12, ... , Ср15 Ср21, Ср22, ... , Ср25 Ср31, Ср32, ... , Ср35

  • Слайд 45

    var Cp:array[1..3,1..5]of real; i,j:integer; Begin {ввод значений массива} for i:=1 to 3 do for j:=1 to 5 do begin writeln('Введите Cp',i,j); readln(Сp[i,j]); end; {вывод элементов массива по строкам} for i:=1 to 3 do begin for j:=1 to 5 do write(Cp[i,j]:7:3,’’); writeln; end; . . . . . End.

  • Слайд 46

    Ввод массива будет осуществляться таким же образом, как и в случае одномерного массива. При выводе массива на экран появляются три строки по пять численных значений теплоемкостей: Cр[1,1] Cp[1,2] ... Cp[1,5] . . . . . . Ср[3,1] Cp[3,2] ... Cp[3,5]

  • Слайд 47

    Численные значения элементов массива могут быть также заданы: - в разделе const Type mas = array[1..3] of real; mas1 = array[1..2,1..3] of integer; Const M:mas = (12.3,14.6,18.4); {одномерныймассив} Cp:mas1 = ((10,16,8), (6,20,12)); {двумерный массив} или Const M: array[1..3] of real=(12.3,14.6,18.4); {одномерныймассив} Cp: array[1..2,1..3] of integer = ((10,16,8), (6,20,12)); {двумерный массив}

  • Слайд 48

    Файлы Удобным способом хранения информации служит запись этой информации на магнитный носитель (жесткие, гибкие диски, магнитные ленты). Запись удобна особенно тогда, когда объем информации велик и в дальнейшем предполагается использовать эту информацию в других программах. В Паскале предусмотрен специальный тип данных – файлы, операции над которыми сводятся к работе с внешними носителями.

  • Слайд 49

    Файл – это поименованная область памяти на каком–либо носителе информации, предназначенная для хранения данных. Этим носителем может быть гибкий или жесткий диск (магнитная лента). Внешние файлы должны быть описаны в разделе описаний программы.

  • Слайд 50

    Описание файлов в общем случае имеет следующий вид: type = file of ; var :; или var file of ;

  • Слайд 51

    Файловая переменная (обозначим ее как f) служит для доступа к файлу. В Турбо–Паскале существуют следующие категории файлов: типизированные; нетипизированные; текстовые.

  • Слайд 52

    В зависимости от категории объявление файлов соответственно будет: var f1 : file of ; f2 : file; f3 : text. Например: var f1:file of char; f2:file; f3:text.

  • Слайд 53

    Стандартные процедуры для работы с файлами.

    Работа с файлами производится посредством специальных стандартных процедур. Рассмотрим некоторые из них. АSSIGN (f, '') – эта процедура связывает файловую переменную f с именем внешнего файла на диске.

  • Слайд 54

    Например:Assign (f1, 'fl.d'), здесь имя файловой переменной f1 связывается с файлом fl.d на диске. RESET (f) – процедура открывает существующий файл f для чтения. REWRITE (f) – создает и открывает новый файл для записи.

  • Слайд 55

    APPEND(f) – открывает существующий файл для добавления данных. READ (f, X1,...,Xn) или READLN(f, X1,...,Xn)– считывает из файла f значения переменных X1 … Xn. WRITE (f, X1,...,Xn) или WRITELN(f, X1,...,Xn) – записывает в файл f значения переменных X1 … Xn. CLOSE (f) – закрывает файл f после окончания работы с ним.

  • Слайд 56

    Особым типом файлов являются текстовые файлы. Эти файлы содержат некоторый текст, который состоит из обычных символов (например, букв алфавита и цифр). Символы текстового файла разбиты на строки.

  • Слайд 57

    Описание текстового файла: Var : text; Текстовый файл состоит из последовательности строк различной длины. Для определения конца строки используется функция Eoln(var F:text) : Boolean; Она принимает значение True, если достигнут конец строки, и значение False – в противном случае.

  • Слайд 58

    Для чтения из текстового файла или записи в текстовый файл можно использовать процедуры Write (f, X1,...,Xn), Writeln(f, X1,...,Xn) Read(f, X1,...,Xn) , Readln (f, X1,...,Xn) . Следует отметить, что, несмотря на то, что текстовый файл является набором символьных значений, он может использоваться (и часто используется) для хранения численных значений.

  • Слайд 59

    При считывании или записи значений в файл происходит автоматическое преобразование из числового формата в символьный и наоборот. Продемонстрируем работу с файлами на примере. Пример. Составить программу пересчета концентраций химических веществ, заданных в мольных долях , в весовые : ; i = 1,...,5,

  • Слайд 60

    где ВDi – концентрация в весовых долях; MDi– концентрация в мольных долях; MBi – молекулярный вес веществ. Исходные данные ввести из файла, результат вычислений поместить в файл.

  • Слайд 61

    Программныйфайл. Program Conz; type mas=array[1..10]of real; var BD,MD,MB:mas; s:real; i:integer; f1,f2:text; {объявление файлов}

  • Слайд 62

    Begin Assign(f1,’dat’); Assign(f2,’rez’); Reset(f1); Rewrite(f2); {ввод данных из файла dat} for i:=1 to 5 do read(f1,MD[i]); readln(f1); for i:=1 to 5 do read(f1,MB[i]); s:=0.0;

  • Слайд 63

    for i:=1 to 5 do s:=s+MD[i]*MB[i]; for i:=1 to 5 do BD[i]:=MD[i]*MD[i]/s; {вывод результатов в файл rez} for i:=1 to 5 do write(f2,BD[i]:6:2,’’); close(f1); close(f2); End.

  • Слайд 64

    После написания и сохранения программного файла в новый файл согласно последовательности ввода данных в программе (1–я строка – массив значений концентраций МDi ; 2–я строка – массив значений молекулярных весов МВi ) записывают через пробел исходные численные данные и сохраняют файл под именем dat.

  • Слайд 65

    После выполнения вычислений ПЭВМ создает файл с именем rez, в который помещаются результаты расчетов (строка численных значений массива BDi).

Посмотреть все слайды

Сообщить об ошибке