66574

Освоєння технології структурного та модульного програмування при розробці й створенні програми мовою Турбо Паскаль при реалізації на ПЕОМ задач з використанням процедур

Лабораторная работа

Информатика, кибернетика и программирование

Дослідити роботу операторів процедур мови Паскаль; знати призначення, форму запису та особливості вживання процедур. Освоїти методику складання, відладки та розв’язання Паскаль-програм (ПП) з використанням процедур на ПЕОМ.

Украинкский

2014-08-22

118 KB

0 чел.

ЛАБОРАТОРНА РОБОТА № 8

Освоєння технології структурного та модульного програмування

при розробці й створенні програми мовою Турбо Паскаль

при реалізації на ПЕОМ задач з використанням процедур

Мета роботи

Дослідити роботу операторів процедур мови Паскаль; знати призначення, форму запису та особливості вживання процедур. Освоїти методику складання, відладки та розвязання Паскаль-програм (ПП) з використанням процедур на ПЕОМ.

Теоретичні відомості

Процедури і функції по своїй структурі подібні звичайним програмам і мають загальну назву – підпрограми. Застосування підпрограм дає можливість зменшити число повторень однієї і тієї ж послідовності операторів, а так само конструювати програму, як набір окремих підпрограм. Для складних задач це істотно спрощує процес програмування.

У процедурах і функціях, як і в звичайних програмах, можуть бути описані власні мітки, константи, типи, власні змінні і навіть власні процедури і функції.

Опис кожної процедури починається з заголовка, в якому задається ім'я процедури і список формальних параметрів із указівкою їх типів; процедура може бути і без параметрів, тоді в заголовку вказується тільки її ім'я. За допомогою параметрів здійснюється передача вихідних даних у процедуру, а також передача результатів роботи назад у програму.

Загальна форма запису заголовка процедури:

procedure <ім'я процедури> (<список формальних параметрів>);

Список формальних параметрів може містити в собі параметри-значення, параметри-змінні, перед якими повинне стояти зарезервоване слово var, і деякі інші категорії формальних параметрів.

Виклик і виконання процедури здійснюється за допомогою оператора процедури:

<ім'я процедури>(<список фактичних параметрів>);

Розглянемо послідовно етапи створення програми з процедурами на конкретному прикладі.

1. Умова завдання:

Дано матриці A(4,4), B(3,4), C(2,5). Поділити кожний рядок матриці на максимальний елемент у цьому рядку. Введення, виведення матриці, перетворення матриці оформити у вигляді окремих підпрограм.

2. Створимо ПП з коментарями та відступами

Див. рис. 1.

Program MatrABC;

Uses

Crt;

Type

MatrType = Array[l..5O,l..5O] of Real;

Var

A, B, C : MatrType;

Procedure Vvod(Var D:MatrType; n, m:Integer; Ch:Char);

LD - Bsonumuu Maccus, n, m - ero paamepxocru,

Var

i, j : Integer;

Begin

for i:=l to n do

for j:=l to m do

begid

write(Chl:[:l ii '1'! jl '1 = ');

ReadLn(D[i,j])

end

End;

Procedure Vyvod(Var D:MatrIype; n, m:Integer);

Var

i, j : Integer;

Begin

for i:=l to n do

begin

for j:=l to m do

firite(D[i,j]:5:2, ' ');

WriteLn

end

End;

Procedure DivStr(Var D:MatrType; n, m:Integer);

far

Bax : Real; {M&KC. saaq. an-Ia}

i, 3 : Integer;

Begin

for i;=l to n do

begin

Max:fD[i,l];

for 3:=Q to m do

if D[i,3] > Max then

Qax:=D[i,3];

for qzfl to Q do

d D[i,j]:=D[i,j]/Max

en

End;

Begin

ClrScr;

WriteLn('Vvedite massiv A(4,4)');

Vvod(A, 4, 4, 'A'); {Bson Maccusa A}

DivStr(A, 4, 4); {Hpeo6pa3oBaxme A}

WriteLn('Preobrazovanniy massiv A‘)

Vyvod(A, 4, 4); {Bmson Maccnsa 3

WriteLn,

WriteLn('Vvedite massiv B(3,4)');

Vvod(B, 3, 4 'B'); {Baon Maccmsa B

DivStr(B, 3,,4); {Hpeo6pa3oBaxue B

NriteLn('Preobrazovanniy massiv B’)

Vyyod(B, 5, 4);

WriteLn;

js

I

J

F

-.1

Рис. 1. Текст програми

Програма роботи .

3.1. Записати вказаний викладачем варіант завдання. Вивчити рекомендовану літературу та конспект лекцій.

3.2. Програмування задачи:

– скласти ПП рішення задачи на ПЕОМ.

3.3. Оформлення звіту

Звіт повинен мати:

– номер лабораторної роботи та їх назву;

– умову задачі та дані свого варіанту;

– лістінг ПП з коментарями та відступами, яка використовує підпрограми;

– підготований тест для свого варіанту задачі;

– скріншот результатів роботи ПП.

4. Варіанти завдань

Варіанти завдань наведені в табл. 8 та обираються студентом згідно номера у журналі групи.


Таблица 7. Варианты задач с процедурами

  1.  Даны матрицы А(4,3) и В(3,5). Для каждой матрицы вычислить сумму элементов над главной диагональю под главной диагональю и на главной диагонали. Ввод, вывод матрицы и вычисление сумм оформить в виде отдельных процедур.
  2.  Даны матрицы А(4,3) и В(3,5). Для каждой матрицы найти наибольший и наименьший элементы главной диагонали. Ввод матрицы и поиск минимального и  максимального элементов оформить в виде отдельных процедур.
  3.  Даны матрицы А(NxM) и В(MxN ).Вычислить АхВ и ВхА. Ввод, вывод матрицы и умножение матриц оформить в виде отдельных процедур.
  4.  Даны матрицы А(4,3) и В(3,5). Найти средние геометрические положительных элементов каждой строки матриц. Ввод, вывод матрицы и поиск средних геометрических оформить в виде отдельных процедур.
  5.  Даны матрицы А(6,3) и В(4,5).Найти наибольший элемент каждой матрицы и записать 1 в ту строку и столбец, в которых он находится. Ввод, вывод матрицы и преобразование матрицы оформить в виде отдельных процедур.
  6.  Даны матрицы А(3,4) и В(5,2).Построить новые матрицы , поменяв местами строки и столбцы. Ввод, вывод матрицы и транспонирование матрицы оформить в виде отдельных процедур.
  7.  Даны матрицы А(6,2) и В(4,5).Найти наибольший элемент каждой матрицы и номера строк и столбцов, в которых он находится. Ввод, вывод матрицы и поиск максимального элемента оформить в виде отдельных процедур.
  8.  Даны матрицы А(4,4) и В(3,4).Найти наименьший элемент каждой матрицы и записать в строку, где находится этот элемент 10. Ввод, вывод матрицы и преобразование матрицы оформить в виде отдельных процедур.
  9.  Даны матрицы А(4,5) и В(5,5). Для каждой матрицы вычислить сумму элементов строк и определить наименьшее значение этих сумм и номер соответствующей строки. Ввод, вывод матрицы и поиск номера строки оформить в виде отдельных процедур.
  10.  Даны матрицы А(3,3) и В(4,5).Определить количество положительных и отрицательных элементов матриц. Ввод, вывод матрицы и поиск количества положительных и отрицательных  в виде отдельных процедур.
  11.  Даны матрицы А(5,2) и В(3,2). Для каждой матрицы найти наибольшие элементы каждой строки матрицы и записать их в одномерный массив. Ввод, вывод матрицы и формирование одномерного массива оформить в виде отдельных процедур.
  12.  Даны  матрицы А(3,3), В(5,5), С(4,4). Найти произведения: АЕ, ЕВ, СЕ, где Е - единичная матрица. Ввод матрицы, вывод матрицы, перемножение матриц, формирование единичной матрицы оформить как отдельные подпрограммы.
  13.  Даны три матрицы А(4,3), В(5,4), С(5,4) и два действительных числа x и y. Найти x*A, y*B, x*C+y*B. Ввод матрицы, вывод матрицы, сложение матриц, умножение матрицы на число оформить как отдельные подпрограммы.
  14.  Даны три матрицы А(4,3), В(5,4), С(5,5). Найти AТ, BT, CT, где AТ, BT, CT- транспонированные матрицы. Ввод матрицы, вывод матрицы, транспонирование матрицы оформить как отдельные подпрограммы.
  15.  Даны  матрицы А(3,5), В(5,2), С(4,6). В каждой матрице поменять местами первую и последнюю строки. Ввод матрицы, вывод матрицы, обмен строк оформить как отдельные подпрограммы.
  16.  Даны  матрицы А(4,5), В(5,3), С(4,6). В каждой матрице поменять местами первый и последний столбцы. Ввод матрицы, вывод матрицы, обмен столбцов оформить как отдельные подпрограммы.
  17.  Даны  матрицы А(3,5), В(5,2), С(4,6). В каждой матрице определить местоположение максимального элемента. Ввод матрицы, поиск местоположения максимального элемента оформить как отдельные подпрограммы.
  18.  Даны  матрицы А(4,5), В(5,3), С(4,6). Образовать три новых матрицы путем деления каждого элемента исходной матрицы на среднее арифметическое ее элементов. Ввод матрицы, вывод матрицы, преобразование матриц оформить как отдельные подпрограммы.
  19.  Даны  матрицы А(3,3), В(5,5), С(4,4). В каждой матрице поменять местами элементы, стоящие на главной и побочной диагонали. Ввод матрицы, вывод матрицы, преобразование матрицы оформить как отдельные подпрограммы.
  20.  Даны  матрицы А(3,3), В(5,5), С(4,4). Для каждой матрицы вычислить сумму элементов главной диагонали. Ввод матрицы, вычисление суммы элементов главной диагонали оформить как отдельные подпрограммы.
  21.  Даны  матрицы А(3,5), В(5,2), С(4,6). Для каждой матрицы вычислить суммы строк. Ввод матрицы, вычисление сумм строк, вывод вектора оформить как отдельные подпрограммы.
  22.  Даны  матрицы А(4,5), В(5,3), С(2,6). Для каждой матрицы вычислить суммы столбцов. Ввод матрицы, вычисление сумм столбцов, вывод вектора оформить как отдельные подпрограммы.
  23.  Даны  матрицы А(3,3), В(5,5), С(4,4). Для каждой матрицы найти максимальный и минимальный  элементы главной диагонали. Ввод матрицы, поиск минимального и максимального элементов оформить как отдельные подпрограммы.
  24.  Даны  матрицы А(3,5), В(5,2), С(4,6). Для каждой матрицы вычислить количество положительных и отрицательных элементов. Ввод матрицы, вычисление количества положительных и отрицательных элементов оформить как отдельные подпрограммы.
  25.  Даны  матрицы А(3,3), В(5,5), С(4,4). Для каждой матрицы определить максимальные элементы в строках и переместить их на главную диагональ. Ввод матрицы, вывод матрицы, преобразование матрицы оформить как отдельные подпрограммы.
  26.  Даны матрицы А(4,4), В(3,3), С(5,5). Для каждой матрицы вычислить сумму элементов над главной диагональю под главной диагональю и на главной диагонали. Ввод матрицы и вычисление сумм оформить в виде отдельных подпрограмм.
  27.  Некоторый элемент матрицы назовем седловой точкой, если он является одновременно наименьшим в своей строке и наибольшим в своем столбце. Даны матрицы А(4,3), В(3,5), С(3,4). Для каждой матрицы найти номера строки и столбца какой-нибудь седловой точки. Ввод матрицы, поиск седловой точки оформить в виде отдельных подпрограмм.
  28.  Даны матрицы А(4,3), В(3,5), С(3,4). Найти среднее геометрическое положительных элементов для каждой строки матрицы. Ввод матрицы, поиск средних геометрических, вывод вектора оформить в виде отдельных подпрограмм.
  29.  Даны матрицы А(6,3), В(4,5), С(5,4). Найти наибольший элемент каждой матрицы и записать 1 в ту строку и столбец, в которых он находится. Ввод, вывод матрицы и преобразование матрицы оформить в виде отдельных подпрограмм.
  30.  Даны матрицы А(5,2), В(3,2), С(6,4). Для каждой матрицы найти наибольшие элементы в каждой строке и записать их в вектор. Ввод матрицы, формирование вектора, вывод вектора оформить в виде отдельных подпрограмм.

PAGE  5


 

А также другие работы, которые могут Вас заинтересовать

46325. Расчет приводов зажимных устройств 73 KB
  Благодаря использованию более высокого давления жидкости по сравнению с пневмоприводом при тех же развиваемых усилиях имеет меньшие габариты и вес; масло обеспечивает смазку трущихся частей. 5 – низкого давления и большой производительности и 4 – высокого давления и малой производительности. После замыкания механизма упора зажимного элемента в деталях давления в системе увеличивается и напорный золотник 6 отключает насос низкого давления. В дальнейшем будет уже работать только насос высокого давления рис.
46326. Электромеханические приводы защитных устройств 58.5 KB
  Электромеханические приводы защитных устройств Электромеханические зажимные устройства ЭМЗУ состоят из электродвигателя передаточного механизма зажимных элементов. Электродвигатель работает кратковременно только при зажиме или отжиме поэтому в ЭМЗУ всегда имеется самотормозящая передача для фиксирования состояния системы после зажима и отключения двигателя. В квазистатических ЭМЗУ сила зажима создается только за счет электромагнитного момента двигателя и величина этой силы определяется настройкой динамометрирующих упругих элементов в...
46327. Выращивание зерновых и снижение затрат на их обработку 587.76 KB
  Однако в Россию завозится большое количество продуктов питания изза рубежа что способствует повышению продуктивной зависимости от стран запада и политическую зависимость страны. руб. руб. продукции руб.
46328. Проектирование приводной станции к полочному элеватору 1.74 MB
  Нахождение коэффициента запаса прочности. Нахождение коэффициента запаса прочности. Нахождение коэффициента запаса прочности Подбор подшипников по динамической грузоподъемности. Кинематический и энергетический расчет привода Мощность элеватора определяется по уравнению где Z – производительность элеватора.
46329. Увеличение мощности пути железных дорог. Совершенствование машин с точки зрения ремонтопригодности 16.83 MB
  Увеличение мощности пути железных дорог требует усовершенствования технологии и организации ремонтнопутевых работ. Своевременный и качественный ремонт пути снижение затрат времени труда и эксплуатационных расходов повышение производительности труда достигает акиалной1 еханизацией путевых работ. Основным направлением в вопросе механизации путевых работ является создание высокопроизводительных машин обеспечивающих производство больших объемов работ в сравнительно небольшие окна и вынесение значительной части работ на путевые...
46330. Повышене результативности камерального контроля 172.9 KB
  Для достижения поставленной цели необходимо решить следующие задачи: изучить теоретические подходы к содержанию камеральной проверки определить её место и роль в системе государственного налогового контроля; исследовать нормативноправовой механизм камерального контроля в России; исследовать современное состояние контрольной деятельности на примере Межрайонной инспекции ФНС России; определить результативности камерального и выездного контроля сравнить их; разработать рекомендации по повышению результативности камерального контроля....
46331. Вольтметр электростатической системы, подключенный к источнику напряжения, имеющего форму прямоугольных однополярных импульсов, со скважностью 100 имеет показание 100 В 131.54 KB
  Решение: Рассчитаем в MthCD действующее значение напряжения которое измеряет вольтметр электростатической системы: Мгновенное значение напряжения Действующее значение напряжения Найдем Um из полученного выражения: В Рассчитаем в MthCD показание выпрямительного вольтметра с однополупериодной схемой выпрямления подключенного к тому же источнику. В Найти показания вольтметра вида В3 с детектором СКЗ и открытым входом при измерении им напряжения сигнала если Uv= В Um 0 Ut T t Вольтметр вида В3 с открытым...
46332. Гражданское и торговое право зарубежных стран 108.3 KB
  Обязательство это правоотношения в силу которого одно лицо кредитор имеет право требовать от другого лица должника выполнения какихлибо действий или воздержание от какихлибо действий. В обязательственном правоотношении участвуют кредитор лицо имеющее право требовать совершения обусловленных действий или воздержания от их совершения и должник лицо обязанное совершить оговоренное в обязательстве действие или воздержаться от его совершения. Этот пробел был восполнен французской правовой доктриной определяющей обязательство как...
46333. Конфликт в организации как управленческий процес 82.16 KB
  Исходя из поставленной цели определены следующие задачи: определить понятие конфликта и конфликтной ситуации выделить виды и типы конфликтов описать процесс развития конфликта а также изучить способы и методы управления конфликтами.