1 Программирование на языке Паскаль © К.Ю. Поляков, 2006-2008 1.ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.

Презентация:



Advertisements
Похожие презентации
1 Программирование на языке Паскаль Процедуры. 2 Задача: Построить фигуру: Особенность: Три похожие фигуры. общее: размеры, угол поворота отличия: координаты,
Advertisements

1 Программирование на языке Паскаль Процедуры. 2 Процедура – это вспомогательный алгоритм, который предназначен для выполнения некоторых действий. Применение:
Подпрограммы. Функции и процедуры. Кулебякин В.В.
Программирование на языке Паскаль Тема 13. Процедуры Тема 14. Функции.
1 Программирование на языке Паскаль Процедуры. 2 Подпрограммы Задача: Построить фигуру: Особенность: Три похожие фигуры. общее: размеры, угол поворота.
1 Программирование на языке Паскаль © К.Ю. Поляков, ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.
1 Программирование на языке Паскаль © К.Ю. Поляков, ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.
1 Программирование на языке Паскаль © К.Ю. Поляков, ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.
1 Программирование на языке Паскаль © К.Ю. Поляков, ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.
1 Программирование на языке Паскаль © К.Ю. Поляков, ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.
1 Программирование на языке Паскаль Тема 13. Функции © К.Ю. Поляков,
1 Программирование на языке Паскаль © К.Ю. Поляков, ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.
1 Программирование на языке Паскаль Функции Кулебякин В.В.
Языки и методы программирования Преподаватель – доцент каф. ИТиМПИ Кузнецова Е.М. Лекция 5.
© М.Е.Макарова
К. Поляков, Алгоритмизация и основы программирования на языке Кумир (7 класс) 1.ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные.
1 Программирование на языке Паскаль © К.Ю. Поляков, ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.
Подпрограммы в Паскале.
Понятие подпрограмм. Подпрограммы в языке Паскаль.
1 Программирование на языке Паскаль Тема: Циклы по счётчику. © К.Ю. Поляков,
Транксрипт:

1 Программирование на языке Паскаль © К.Ю. Поляков, Введение Введение 2. Ветвления Ветвления 3. Сложные условия Сложные условия 4. Циклы Циклы 5. Циклы с условием Циклы с условием 6. Оператор выбора Оператор выбора 7. Графика Графика 8. Графики функций Графики функций 9. Процедуры Процедуры 10. Рекурсия Рекурсия 11. Анимация Анимация 12. Случайные числа Случайные числа 13.Функции Функции

2 Программирование на языке Паскаль Тема 9. Процедуры © К.Ю. Поляков,

3 Процедуры Задача: Построить фигуру: Особенность: Три похожие фигуры. общее: размеры, угол поворота отличия: координаты, цвет Как можно решить? ? Сколько координат надо задать? ?

4 Процедуры Процедура – это вспомогательный алгоритм, который предназначен для выполнения некоторых действий. Применение: выполнение одинаковых действий в разных местах программы разбивка программы (или другой процедуры) на подзадачи для лучшего восприятия Подзадача 1Подзадача 2Подзадача Задача

5 Процедуры Порядок разработки: выделить одинаковые или похожие действия (три фигуры) найти в них общее (размеры, форма, угол поворота) и отличия (координаты, цвет) отличия записать в виде неизвестных переменных, они будут параметрами процедуры (x, y) (x+100, y) (x, y-60) procedure Tr( x, y, r, g, b: integer); begin MoveTo(x, y); LineTo(x, y-60); LineTo(x+100, y); LineTo(x, y); Brush(1, r, g, b); Fill(x+20, y-20); end; заголовок MoveTo(x, y); LineTo(x, y-60); LineTo(x+100, y); LineTo(x, y); Brush(1, r, g, b); Fill(x+20, y-20); MoveTo(x, y); LineTo(x, y-60); LineTo(x+100, y); LineTo(x, y); Brush(1, r, g, b); Fill(x+20, y-20); тело процедуры координаты цвет параметры

6 Программа program qq; begin Pen(1, 255, 0, 255); Tr(100, 100, 0, 0, 255); Tr(200, 100, 0, 255, 0); Tr(200, 160, 255, 0, 0); end. program qq; begin Pen(1, 255, 0, 255); Tr(100, 100, 0, 0, 255); Tr(200, 100, 0, 255, 0); Tr(200, 160, 255, 0, 0); end. (100,100) фактические параметры вызовы процедуры procedure Tr( x, y, r, g, b: integer); begin... end; формальные параметры процедура

7 Процедуры Особенности: все процедуры расположены выше основной программы в заголовке процедуры перечисляются формальные параметры, они обозначаются именами, поскольку могут меняться при вызове процедуры в скобках указывают фактические параметры (числа или арифметические выражения) в том же порядке procedure Tr( x, y, r, g, b: integer); Tr (200, 100, 0, 255, 0); x x y y r r g g b b

88 Постройте данное изображение

9 Процедуры Особенности: для каждого формального параметра после двоеточия указывают его тип если однотипные параметры стоят рядом, их перечисляют через запятую внутри процедуры параметры используются так же, как и переменные procedure A (x: real; y: integer; z: real); procedure A (x, z: real; y, k, l: integer);

10 Процедуры Особенности: в процедуре можно объявлять дополнительные локальные переменные, остальные процедуры не имеют к ним доступа program qq; procedure A(x, y: integer); var a, b: real; begin a := (x + y)/6;... end; begin... end. procedure A(x, y: integer); var a, b: real; begin a := (x + y)/6;... end; локальные переменные var a, b: real;

11 Параметры-переменные Задача: составить процедуру, которая меняет местами значения двух переменных. Особенности: надо, чтобы изменения, сделанные в процедуре, стали известны вызывающей программе program qq; var x, y: integer; begin x := 1; y := 2; Exchange ( x, y ); writeln ( x =, x, y =, y ); end. program qq; var x, y: integer; begin x := 1; y := 2; Exchange ( x, y ); writeln ( x =, x, y =, y ); end. procedure Exchange ( a, b: integer ); var c: integer; begin c := a; a := b; b := c; end; эта процедура работает с копиями параметров x = 1 y = 2

12 Параметры-переменные Применение: таким образом процедура (и функция) может возвращать несколько значений, Запрещенные варианты вызова Exchange ( 2, 3 ); { числа } Exchange ( x+z, y+2 ); { выражения } procedure Exchange ( a, b: integer ); var c: integer; begin c := a; a := b; b := c; end; procedure Exchange ( a, b: integer ); var c: integer; begin c := a; a := b; b := c; end; var параметры могут изменяться

13 Задания «5»: Используя процедуры, построить фигуру. «4»: Используя процедуры, построить фигуру.

14 Задания «5»: Используя процедуры, построить фигуру. «4»: Используя процедуры, построить фигуру.

15 Задания «5»: Используя процедуры, построить фигуру. «4»: Используя процедуры, построить фигуру.

16 Задания «5»: Используя процедуры, построить фигуру. «4»: Используя процедуры, построить фигуру.