6 Pascal процедуры и функции
презентация к уроку (информатика и икт, 9 класс) по теме

ЖИДКОВ Андрей Васильевич

Презентация посвящена операторам организации процедур и функциий

Скачать:

ВложениеРазмер
Office presentation icon 6_pascal_procedury_i_funkcii.ppt141.5 КБ

Предварительный просмотр:


Подписи к слайдам:

Слайд 1

Язык программирования Pascal Процедуры и функции А. Жидков

Слайд 2

Вспомогательный алгоритм - подпрограмма Подпрограммы применяются когда: часть алгоритма неоднократно повторяется в программе; можно использовать фрагменты разработанных ранее алгоритмов; для разбиения крупных программ на части в соответствии с модульным принципом программирования. В паскале реализовано два типа подпрограмм процедуры и функции .

Слайд 3

Процедуры и функции Процедура( функция) представляет собой последовательность операторов, которая имеет имя , список параметров и может быть вызвана из различных частей программы. Имя процедуры в тексте программы называется вызовом. Вызов активирует процедуру (функцию) - начинают выполняться её операторы. После выполнения процедуры программа продолжается с оператора стоящего за вызовом. Отличие процедур от функций в том, что функции возвращают значение.

Слайд 4

Описание процедур и функций Все процедуры или функции должны быть описаны в разделе описаний основной программы. Описание процедуры имеет вид : procedure имя (список формальных параметров); раздел описаний локальных параметров begin операторы тела процедуры end ; Описание функции имеет вид: function имя (список формальных параметров) : тип значения функции; раздел описаний локальных параметров begin операторы тела функции end ;

Слайд 5

Параметры процедур и функций Список формальных параметров состоит из одной или нескольких секций, разделенных символом " ; ". Секция состоит из списка переменных, перечисляемых через запятую, знака “ : ” и типа. Секция может предваряться служебным словом var - тогда параметры передаются по ссылке, (экономия памяти и времени). Если var отсутствует параметры передаются значениями. Список формальных параметров вместе с окружающими скобками может отсутствовать.

Слайд 6

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

Слайд 7

Локальные и глобальные параметры Глобальными называются переменные, объявленные в основной программе и доступные как программе, так и всем ее подпрограммам. Локальными называются переменные, объявленные внутри подпрограммы и доступные только ей самой. Обмен информацией между основной программой и подпрограммой может осуществляться двумя способами: через глобальные переменные с помощью параметров подпрограммы . Подпрограмма может использовать любые глобальные переменные кроме тех, которые имеют те же имена, что и ее локальные переменные. Если в подпрограмме описана локальная переменная, имя которой совпадает с именем некоторой глобальной переменной, то данная глобальная переменная становится недоступной в этой подпрограмме, и при указании идентификатора переменной произойдет обращение к локальной переменой подпрограммы, а не одноименной глобальной переменной. Память для локальных (т.е. описанных в подпрограмме) переменных выделяется на время исполнения данной подпрограммы в специальной области, называемой стеком. При завершении работы подпрограммы память освобождается, поэтому все внутренние результаты работы подпрограммы не сохраняются от одного обращения к другому.

Слайд 8

Решение задач с использованием подпрограмм Заданы координаты вершин двух треугольников на плоскости. Определить какой из треугольников имеет большую площадь. Дано : Координаты  ABC (Xa, Ya) (Xb,Yb) (Xc,Yc) Координаты  DEF (Xd, Yd) (Xe,Ye) (Xf,Yf) Найти : Smax=max(Sabc,Sdef)

Слайд 9

Формулы для решения задачи Решение : Формула длинны отрезка по координатам концов Формула площади треугольника по трем сторонам (Формула Герона)

Слайд 10

Схема программы Предлагается Разделить алгоритм на процедуры: Ввод координат вершин треугольника Определение длины сторон Определение площади треугольника. начало Ввод вершин треугольника Длина стороны треугольника Площадь треугольника по формуле Герона Sabc

Слайд 11

program input ; var x1,y1,x2,y2,x3,y3:real; begin writeln ('--------------------------'); writeln ('ввод координат вершин треугольника'); writeln ('введите координаты 1 вершины'); write ('x1='); read (x1); write ('y1='); read (y1); writeln ('введите координаты 2 вершины'); write ('x2='); read (x2); write ('y2='); read (y2); writeln ('введите координаты 3 вершины'); write ('x3='); read (x3); write ('y3='); read (y3); end; Процедура ввода данных procedure input (var x1,y1,x2,y2,x3,y3:real); begin writeln ('--------------------------'); writeln ('ввод координат вершин треугольника'); writeln ('введите координаты 1 вершины'); write ('x1='); read (x1); write ('y1='); read (y1); writeln ('введите координаты 2 вершины'); write ('x2='); read (x2); write ('y2='); read (y2); writeln ('введите координаты 3 вершины'); write ('x3='); read (x3); write ('y3='); read (y3); end;

Слайд 12

Функция расчета длины отрезка function dline (var x1,y1,x2,y2:real ): real ; begin dline :=sqrt(sqr(x2-x1)+sqr(y2-y1)); end;

Слайд 13

Функция расчета площади треугольника по формуле Герона function geron (var a,b,c : real ): real ; var p : real ; begin p:=(a+b+c)/2; geron :=sqrt(abs(p*(p-a)*(p-b)*(p-c))); end; Формальные параметры функции и их тип Локальный параметр и его тип Тип функции Имя функции

Слайд 14

Основная программа begin input ( xa,ya,xb,yb,xc,yc ); { вызов процедуры } input ( xd,yd,xe,ye,xf,yf ); a:= dline ( xb,yb,xc,yc ); { вызов функции } b:= dline ( xa,ya,xc,yc ); c:= dline ( xb,yb,xa,ya ); d:= dline ( xe,ye,xf,yf ); e:= dline ( xd,yd,xf,yf ); f:= dline ( xd,yd,xe,ye ); Sabc:= geron ( a,b,c ); { вызов функции } Sdef:= geron ( d,e,f ); writeln ('Sabc=',Sabc,'Sdef=',Sdef); Smax:=Sabc; if Sdef>Sabc then Smax:=Sdef; writeln ('Smax=',Smax); end.

Слайд 15

Окончательный текст программы program Smaxtr; Var xa,ya,xb,yb,xc,yc,a,b,c,Sabc: real; xd,yd,xe,ye,xf,yf,d,e,f,Sdef: real; Smax:real; procedure input (var x1,y1,x2,y2,x3,y3:real); begin writeln ('ввод координат вершин треугольника'); writeln ('введите координаты 1 вершины'); write ('x1='); read (x1); write ('y1='); read (y1); writeln ('введите координаты 2 вершины'); write ('x2='); read (x2); write ('y2='); read (y2); writeln ('введите координаты 3 вершины'); write ('x3='); read (x3); write ('y3='); read (y3); end; function dline (var x1,y1,x2,y2:real):real; begin dline:=sqrt(sqr(x2-x1)+sqr(y2-y1)); end; function geron (var a,b,c:real):real; var p:real; begin p:=(a+b+c)/2; geron:=sqrt(abs(p*(p-a)*(p-b)*(p-c))); end; begin input (xa,ya,xb,yb,xc,yc); input (xd,yd,xe,ye,xf,yf); a:= dline (xb,yb,xc,yc); b:= dline (xa,ya,xc,yc); c:= dline (xb,yb,xa,ya); d:= dline (xe,ye,xf,yf); e:= dline (xd,yd,xf,yf); f:= dline (xd,yd,xe,ye); Sabc:= geron (a,b,c); Sdef:= geron (d,e,f); writeln ('Sabc=',Sabc,'Sdef=',Sdef); Smax:=Sabc; if Sdef>Sabc then Smax:=Sdef; writeln ('Smax=',Smax); end.

Слайд 16

Тестовое задание и результаты теста Δ ABC A (0 ,0) B(-1,1) C(1,1) Sabc=1 Δ DEF D(-1,1) E(1,1) F(1,-1) Sdef=2 х у A B C D E F

Слайд 17

Задание на самоподготовку 1. Составить программу для вычисления высот треугольника со сторонами а, b, c по формулам: 2. Составить подпрограмму вычисления площади трапеции по основаниям и высоте. Используя эту подпрограмму, найти площади заданных трапеций: a=6,5 b=3,4 h=2,5 a=13,4 b=8,3 h=5,7 a=15,5 b=8,4 h=6,5

Слайд 18

Решение задачи на самоподготовку 2. Составить подпрограмму вычисления площади трапеции по основаниям и высоте. Используя эту подпрограмму, найти площади заданных трапеций: 1. a=6,5 b=3,4 h=2,5 2. a=13,4 b=8,3 h=5,7 3. a=15,5 b=8,4 h=6,5 PROGRAM Trapec; Const N=3; var i:integer; a,b,h,s: array[1..N] of real; Procedure STR (a, b, h: real ; var s: real); begin s:=(a+b)/2*h; end; BEGIN for i:=1 to N Do begin writeln('a=',' b=',' h='); readln(a[i],b[i],h[i]); end; for i:=1 to N Do begin STR (a[i],b[i],h[i],s[i]); Writeln (' a=', a[i]:6:2,' b=', b[i]:6:2,' h=', h[i]:6:2); Writeln ( ' s=', s [i]:7:3); end; END.


По теме: методические разработки, презентации и конспекты

Презентация к уроку "Процедуры и функции"

Презентация к уроку "Процедуры и функции"...

Презентация "Процедуры и функции в Паскале"

Презентация к уроку. На слайдах представлены общая форма записи операторов и текст программ на языке Паскаль....

Рекурсивные процедуры и функции как инструмент развития алгоритмического мышления школьников

На наш взгляд, умение создавать грамотные рекурсивные процедуры и функции является необходимой и вместе с тем одной из самых труднопреодолимых степеней на пути к вершинам искусства программирования. И...

Процедуры и функции в языке программирования Pascal

АннотацияПрезентация «Процедуры и функции в языке программирования Pascal» предназначена для использования на уроках изучения нового материала. Содержит теоретический материал и примеры решения задач ...

Процедуры и функции в Паскале

Процедуры и функции в Паскале...

Разработка урока: "Процедуры и функции" учитель информатики Кужугет М.Ш.

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