Подпрограммы 1.Принцип модульности 2.Область действия переменных 3.Параметры подпрограмм 4.Модули.

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



Advertisements
Похожие презентации
Что такое структурный подход в программировании? Как он реализуется в ЯП Паскаль? Что такое процедура? Кто дает название процедуре? Где записывается процедура?
Advertisements

МЕТОД ПОСЛЕДОВАТЕЛЬНОЙ ДЕТАЛИЗАЦИИ. ПРОЦЕДУРЫ И ФУНКЦИИ Урок 1.
Подпрограммы Лекция 7. Ломаско Павел Сергеевич16 декабря 2013 г.
Процедуры и функции Вербицкая Ольга Владимировна, Заозерная школа 16.
Подпрограммы: процедуры и функции Информатика. 1. Подпрограммы При решении различных задач часто возникает необходимость проводить вычисления по одним.
Шутилина Л.А., A[1,1]A[1,2]A[1,3]A[1,4]A[1,5] A[2,1]A[2,2]A[2,3]A[2,4]A[2,5] A[3,1]A[3,2]A[3,3]A[3,4]A[3,5] A[4,1]A[4,2]A[4,3]A[4,4]A[4,5]
Все процедуры и функции делятся на стандартные встроенные определенные пользователем. Встроенные и стандартные вызываются без предварительного описания.
Массивы Вариант 1 Program upr1; Var s,a:real; I: integer; Begin S:=0; For I:=1 to 10 do Begin Writeln (введите очередное число'); Readln(a); S: =s+a; End;
A[1,1]A[1,2]A[1,3]A[1,4]A[1,5] A[2,1]A[2,2]A[2,3]A[2,4]A[2,5] A[3,1]A[3,2]A[3,3]A[3,4]A[3,5] A[4,1]A[4,2]A[4,3]A[4,4]A[4,5] Двумерный массив можно представить.
Двумерные массивы. Задачи обработки двумерных массивов.
Организация данных в виде массива. Массив - это упорядоченный набор фиксированного количества некоторых значений, называемых элементами массива. Каждый.
Тема: «Понятие массива. Назначение. Тип. Размер. Размерность. Одномерный массив» :56:36.
Упорядоченный набор данных одного типа называется массивом. Каждый элемент массива описывается в общем виде как A[i], где A – имя массива, i – номер элемента.
PROGRAM example1; const m=100; var a : ARRAY [1.. m] of INTEGER; i,k,n,q : INTEGER; BEGIN readln (n); randomize; WRITELN('Полученный массив:' ); FOR i.
ОДНОМЕРНЫЕ МАССИВЫ. В математике, экономике, информатике часто используются упорядоченные наборы данных, например, последовательности чисел, таблицы,
Массивы Массив используется для обработки упорядоченного набора величин одного типа, обозначенного одним именем. Доступ к элементам массива осуществляется.
Массивы Материалы к урокам по программированию. МАССИВ это УПОРЯДОЧЕННАЯ последовательность данных ОДНОГО ТИПА. Массивы относятся к структурированным.
Массивы 9 класс. Основные теоретические сведения Примеры решения задач.
Структурные типы данных 1.Массивы 2.Строки 3.Записи 4.Множества 5.Файлы.
Язык программирования Pascal Массивы А. Жидков. Массивы Массив – поименованный набор однотипных элементов, каждый из которых имеет свой номер, (индекс).
Транксрипт:

Подпрограммы 1.Принцип модульности 2.Область действия переменных 3.Параметры подпрограмм 4.Модули

Принцип модульности В модульной программе отдельные её части, предназначенные для решения каких-либо частных задач, организованы в подпрограммы Подпрограммы являются основными строительными блоками, из которых собирается программа

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

Подпрограмма – это самостоятельный фрагмент программы, к которому можно обратиться по имени описывается один раз, а вызывается столько раз, сколько необходимо в Pascal два вида подпрограмм: процедуры и функции для того чтобы подпрограмма выполнилась, её надо вызвать подпрограмма вызывается по имени в том месте программы, где требуется получить результаты её работы процедура вызывается с помощью отдельного оператора, а функция – в правой части оператора присваивания inc (i); у := Sin (x) + 1;

Структура процедуры

Структура функции

Область действия переменных описываются в главной программе время жизни: с момента начала программы и до её завершения доступны в любом месте программы, кроме подпрограмм, в которых описаны локальные переменные с такими же именами Глобальные описываются внутри подпрограммы время жизни: время выполнения подпрограммы могут использоваться только в подпрограмме, в которой описаны, и во всех вложенных в неё подпрограммах Локальные

Правила определения области действия для переменных подпрограммы 1.действуют все переменные, определённые внутри подпрограммы 2.действуют все переменные окружающего контекста, если их имена отличаются от имен, объявленных внутри подпрограммы 3.локальные переменные процедуры и функции во внешнем окружении действовать не будут никогда 4.в случае совпадения имен глобальной и локальной переменной действовать будет только внутренняя локальная переменная

Параметры подпрограмм Список параметров подпрограммы содержится в её заголовке Для каждого параметра задаётся имя, тип и способ передачи Параметры, имена которых указаны в заголовке подпрограммы, называются формальными При обращении к подпрограмме в неё могут передаваться значения разных переменных Переменные, имена которых подставляются в оператор вызова подпрограммы при фактическом обращении к ней, называются фактическими параметрами Количество и тип фактических параметров должны соответствовать количеству и типу формальных параметров

В Pascal можно выделить четыре вида параметров 1.значения 2.переменные 3.константы 4.нетипизированные

Параметр-значение

Параметр-переменная

Параметр-константа

Нетипизированные параметры При описании нетипизированных параметров тип не указывается Procedure P (Const a, b; Var у); Передаются всегда по адресу Перед тем как выполнять в подпрограмме действия с таким параметром, его требуется привести к какому-либо типу

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.

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

Задача 1 Напишите программу, которая в массиве из 20 элементов подсчитывает количество отрицательных элементов. Массив должен заполняться случайными значениями в интервале от -50 до 50.

Алгоритм 1 Начало Ввод mas[20], n = 0 Ввод mas[20], n = 0 i = 0, 19, 1 mas[i]

Используемые в программе переменные mas – массив целых чисел i – параметр цикла, целый тип n – количество отрицательных чисел

Программа 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]

Задача 2 Напишите программу, которая в массиве размером 15х10 для каждого столбца находит минимальный элемент. Массив должен заполняться случайными значениями в интервале от 0 до 120

Алгоритм 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 Конец Да Нет

Используемые в программе переменные mas1 – начальный двухмерный массив целых чисел mas2 – одномерный массив, для хранения минимальных значений i, j – параметры цикла, целый тип min – минимальное значение

Программа 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;

WriteLn; For j := 0 To 9 Do Begin min := mas1 [0, j]; For i := 0 To 14 Do If mas1 [i, j]

Задача 3 Напишите программу, которая во введенной с клавиатуры строке удаляет все символы 'b'. Длина вводимой строки не должна превышать 25 символов. Если символ 'b' не найдены, то должно выводиться сообщение об этом

Алгоритм 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 нет Конец Да Нет Да Нет

Используемые в программе переменные s – вводимая строка i – параметр цикла fl – флаг (логический), определяет найден нужный символ или нет

Программа 3 Program bukv_b; Var s: String [25]; i: Integer; fl: boolean; Begin fl := false; Write (' Vvedite stroku: '); Readln (s); i:=1;

While i