- •Где же описывается процедура ?
- •1. Вызов с диска готовых программ и их анализ.
- •( Повторить команды вызова готовой программы с диска на компьютерах типа укнц или ibm pc).
- •Задача 1.
- •Задача 2.
- •Задача 3.
- •О писание данных
- •(* Функция пользователя *)
- •Вспомогательные алгоритмы и их реализация на Бейсике.
Задача 1.
{ Замена элементов таблицы их модулями }
PROGRAM MOD;
CONST N=6; { ЧИСЛО ЭЛЕМЕНТОВ }
TYPE MASSIV=ARRAY[1..N] OF REAL;
VAR
A : MASSIV ;
I : INTEGER;
В : MASSIV ;
{ ПРОЦЕДУРА MODUL }
PROCEDURE MODUL (K: INTEGER; VAR X : MASSIV;
VAR В : MASSIB );
VAR J : INTEGER ;
BEGIN
FOR J:=l TO К DO
IF X[J]<0 THEN B [J]:= -X[J] ELSE B[J]:=X[J];
END;
{ ОСНОВНАЯ ПРОГРАММА }
BEGIN
WRITELN (' Введите элементы таблицы ' );
FOR I:=l TO N DO READ ( A[I]);
MODUL ( N,A,B); { ВЫЗОВ ПРОЦЕДУРЫ }
{ N,A - ПЕРЕДАЮТСЯ, В - ПРИНИМАЕТСЯ }
WRITELN;
WRITELN ( ' ОБРАБОТАННАЯ ТАБЛИЦА ');
FOR I:=l TO N DO WRITE ( B[I] : 3 );
END.
Задача 2.
(* ВЫЧИСЛЕНИЕ ЗНАЧЕНИЯ ВЫРАЖЕНИЯ
С ФАКТОРИАЛАМИ F! = (А! + М!)/ С! *) PROGRAM FAKT1;
VAR А, М, С : INTEGER ; (* ВВОДИМЫЕ ЧИСЛА *)
Al, Ml, Cl : INTEGER ; (* ФАКТОРИАЛЫ ЭТИХ ЧИСЕЛ *)
U : REAL; (* ЗНАЧЕНИЕ ВЫРАЖЕНИЯ *)
(* ПРОЦЕДУРА FAKTORIAL *)
PROCEDURE FAKTORIAL ( N : INTEGER ; VAR P:REAL);
VAR J : INTEGER ;
BEGIN
P:=l;
FOR J:= 1 TO N DO P:=P*J ;
END;
(* ОСНОВНАЯ ПРОГРАММА *)
BEGIN
WRITELN (' ВВЕДИТЕ З НАТУРАЛЬНЫХ ЧИСЛА ');
READ (A, M, С);
FAKTORIAL (А,А1); (* ВЫЗОВ ПРОЦЕДУРЫ *)
(* А - ПЕРЕДАЕТСЯ, Al - ПРИНИМАЕТСЯ *)
FAKTORIAL (M, Ml); (* ВЫЗОВ ПРОЦЕДУРЫ *)
(* М - ПЕРЕДАЕТСЯ, Ml - ПРИНИМАЕТСЯ *)
FAKTORIAL (C,C1); (* ВЫЗОВ ПРОЦЕДУРЫ *)
(* С - ПЕРЕДАЕТСЯ, С1- ПРИНИМАЕТСЯ *)
U:=(A1+M1 )/С1 ;
WRITELN ;
WRITELN (' ———————-——————————————);
WRITELN (' РЕЗУЛЬТАТ ВЫЧИСЛЕНИЯ =’, U:5:2 );
END.
Задача 3.
{ МАКСИМУМ ИЗ 4 ЧИСЕЛ }
PROGRAM MAX4;
VAR A.B,C,D : REAL; (* ВВОДИМЫЕ ЧИСЛА *)
М1,М2 : REAL; (* ПРОМЕЖУТОЧНЫЕ МАКСИМУМЫ*)
М : REAL; (* МАКСИМАЛЬНЫЙ ЭЛЕМЕНТ *)
(* ПРОЦЕДУРА MAX4 *)
PROCEDURE MAX4 ( X,Y : REAL ; VAR Z : REAL );
BEGIN
IF X>Y THEN Z:=X ELSE Z:=Y;
END;
(* ОСНОВНАЯ ПРОГРАММА *)
BEGIN
WRITELN (‘ ВВЕДИТЕ 4 ЧИСЛА ‘);
READ (A,B,C,D);
МАХ4(А,В,М1); (* ВЫЗОВ ПРОЦЕДУРЫ *)
(* А, В - ПЕРЕДАЮТСЯ ,
Ml - ПРИНИМАЕТСЯ *)
MAX4(C,D,M2); (* ВЫЗОВ ПРОЦЕДУРЫ *)
(* C,D - ПЕРЕДАЮТСЯ,
М2 - ПРИНИМАЕТСЯ *)
МАХ4 (М1,М2,М);
WRITELN ;
WRITELN (‘ МАКСИМАЛЬНОЕ ИЗ 4 ЧИСЕЛ – ‘,М : 4 : 2);
END.
Урок 3.
Тема урока : Функции пользователя.
Цель урока : обучить учащихся использованию функций пользователя, познакомить с правилами оформления функций пользователя и показать отличие функций от процедур.
Тип урока : комбинированный.
Структура урока ; 1. Вступительное слово учителя ( в виде лекции);
2. Практическая часть : вызов и анализ готовых программ с диска.
3. Заключительная часть. Выводы.
4. Домашнее задание.
Ход урока ;
1. Вступительное слово учителя.
Хотя набор встроенных функций очень широк, он не удовлетворяет требованиям каждого программиста. Пользователь может задавать свою функцию и обращаться к ней, меняя исходные данные.
Функция, определённая пользователем, состоит из заголовка и типа функции.
FUNCTION имя ( формальные параметры ): ТИП;