Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемКлара Евсеичева
1 Подпрограммы 1.Принцип модульности 2.Область действия переменных 3.Параметры подпрограмм 4.Модули
2 Принцип модульности В модульной программе отдельные её части, предназначенные для решения каких-либо частных задач, организованы в подпрограммы Подпрограммы являются основными строительными блоками, из которых собирается программа
3 Преимущества модульности: 1.один и тот же фрагмент можно использовать многократно как в одной, так и разных программах, не набирая его текст заново 2.программы, состоящие из небольших частей, легче читать, тестировать и отлаживать
4 Подпрограмма – это самостоятельный фрагмент программы, к которому можно обратиться по имени описывается один раз, а вызывается столько раз, сколько необходимо в Pascal два вида подпрограмм: процедуры и функции для того чтобы подпрограмма выполнилась, её надо вызвать подпрограмма вызывается по имени в том месте программы, где требуется получить результаты её работы процедура вызывается с помощью отдельного оператора, а функция – в правой части оператора присваивания inc (i); у := Sin (x) + 1;
5 Структура процедуры
6 Структура функции
7 Область действия переменных описываются в главной программе время жизни: с момента начала программы и до её завершения доступны в любом месте программы, кроме подпрограмм, в которых описаны локальные переменные с такими же именами Глобальные описываются внутри подпрограммы время жизни: время выполнения подпрограммы могут использоваться только в подпрограмме, в которой описаны, и во всех вложенных в неё подпрограммах Локальные
8 Правила определения области действия для переменных подпрограммы 1.действуют все переменные, определённые внутри подпрограммы 2.действуют все переменные окружающего контекста, если их имена отличаются от имен, объявленных внутри подпрограммы 3.локальные переменные процедуры и функции во внешнем окружении действовать не будут никогда 4.в случае совпадения имен глобальной и локальной переменной действовать будет только внутренняя локальная переменная
9 Параметры подпрограмм Список параметров подпрограммы содержится в её заголовке Для каждого параметра задаётся имя, тип и способ передачи Параметры, имена которых указаны в заголовке подпрограммы, называются формальными При обращении к подпрограмме в неё могут передаваться значения разных переменных Переменные, имена которых подставляются в оператор вызова подпрограммы при фактическом обращении к ней, называются фактическими параметрами Количество и тип фактических параметров должны соответствовать количеству и типу формальных параметров
10 В Pascal можно выделить четыре вида параметров 1.значения 2.переменные 3.константы 4.нетипизированные
11 Параметр-значение
12 Параметр-переменная
13 Параметр-константа
14 Нетипизированные параметры При описании нетипизированных параметров тип не указывается Procedure P (Const a, b; Var у); Передаются всегда по адресу Перед тем как выполнять в подпрограмме действия с таким параметром, его требуется привести к какому-либо типу
15 Var a, b, с, d, e: Word; Procedure Х (а, b, с: Word; Var d: Word); Var e: Word; Begin с := a + b; d := c; e := с; WriteLn ('Podprogramma:'); WriteLn ('с = ', c, 'd = ', d, 'e = ', e); End; Begin a := 3; b := 5; x (a, b, c, d); WriteLn (Glavnaiya programma:'); WriteLn ('с = ', с, 'd = ', d, 'e = ', e); ReadLn; End.
16 Модули Модуль – подключаемая к программе библиотека ресурсов (типов, констант, переменных и подпрограмм) Модуль содержит описание и подпрограммы, которые могут использоваться в различных программах Модули бывают стандартные и создаваемые программистом
18 Задача 1 Напишите программу, которая в массиве из 20 элементов подсчитывает количество отрицательных элементов. Массив должен заполняться случайными значениями в интервале от -50 до 50.
19 Алгоритм 1 Начало Ввод mas[20], n = 0 Ввод mas[20], n = 0 i = 0, 19, 1 mas[i]
20 Используемые в программе переменные mas – массив целых чисел i – параметр цикла, целый тип n – количество отрицательных чисел
21 Программа 1 Program Otr; Uses CRT; Var i, n: Integer; mas: Array [0..19] Of Integer; Begin ClrScr; Randomize; For i := 0 To 19 Do Begin mas [i] := Random (100)-50; Write (mas[i]: 4); End; WriteLn; n := 0; For i := 0 To 19 Do If mas [i]
23 Задача 2 Напишите программу, которая в массиве размером 15х10 для каждого столбца находит минимальный элемент. Массив должен заполняться случайными значениями в интервале от 0 до 120
24 Алгоритм 2 Начало Ввод mas1 [15, 10] mas2 [10] Ввод mas1 [15, 10] mas2 [10] j =o, 9, 1 i =o, 14, 1 min = mas1 [0, j] mas1 [i, j] < min min = mas1 [i, j] mas2 [j] = min Вывод mas2 [10] Вывод mas2 [10] j =o, 9, 1 Конец Да Нет
25 Используемые в программе переменные mas1 – начальный двухмерный массив целых чисел mas2 – одномерный массив, для хранения минимальных значений i, j – параметры цикла, целый тип min – минимальное значение
26 Программа 2 Program Minimum; Uses CRT; Var i, j, min: Integer; mas1: Array [0..14, 0..9] Of Integer; mas2: Array [0..9] Of Integer; Begin ClrScr; Randomize; For i := 0 To 14 Do Begin For j := 0 To 9 Do Begin mas1 [i, j] := Random (120); Write (mas1 [i, j]: 4); End; WriteLn; End;
27 WriteLn; For j := 0 To 9 Do Begin min := mas1 [0, j]; For i := 0 To 14 Do If mas1 [i, j]
29 Задача 3 Напишите программу, которая во введенной с клавиатуры строке удаляет все символы 'b'. Длина вводимой строки не должна превышать 25 символов. Если символ 'b' не найдены, то должно выводиться сообщение об этом
30 Алгоритм 3 Начало Ввод s [25], fl =false Ввод s [25], fl =false i = 1, length (s), 1 s [i] = b delete (s, i, 1) fl = true i = i-1 delete (s, i, 1) fl = true i = i-1 fl Вывод s Вывод s Вывод Буквы b нет Вывод Буквы b нет Конец Да Нет Да Нет
31 Используемые в программе переменные s – вводимая строка i – параметр цикла fl – флаг (логический), определяет найден нужный символ или нет
32 Программа 3 Program bukv_b; Var s: String [25]; i: Integer; fl: boolean; Begin fl := false; Write (' Vvedite stroku: '); Readln (s); i:=1;
33 While i
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.