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


 

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

60251. Твори своє щастя 81.5 KB
  Мета: ознайомити учнів з поняттям щастя формувати уміння розрізняти його серед інших почуттів; розвивати бачення прекрасного; збагачувати словниковий запас дітей; виховувати любов і повагу до матері сімї рідного краю викликати бажання робити добро...
60252. МИСТЕЦЬКЕ СВЯТО «ОБРАЗ ВЧИТЕЛЯ В МИСТЕЦТВІ» 88.5 KB
  Дівчина: Красива й щира осіння природа як красива й добра душа вчителя. клас виконують пісню про школу на вибір вчителя Презентація Ми і наші вчителі фото шкільних буднів переглядається під музичний супровід. Хто вони учителі Якими якостями повинні володіти...
60255. ВОЛОНТЕРИ – ЛЮДИ ДОБРОЇ ВОЛІ 1.06 MB
  Волонтери люди доброї волі Мета: познайомити учнів із поняттям волонтер створити умови для виховання небайдужого ставлення до людей які потребують допомоги; стимулювати пізнавальний інтерес до основ моральної культури. Все більше людей долучається до волонтерської справи все більше молоді свій вільний час віддає іншим...
60256. Ярмарок вакансій (розробка профорієнтаційного заходу) 80 KB
  Обладнання: компютерна презентація заходу буклети з порадами психолога щодо успішного професійного самовизначення рекламна інформація міського центру зайнятості ДП Артемсіль Горлівського Державного педагогічного інституту іноземних мов...
60257. Я здоровье берегу- сам себе я помогу 326 KB
  Будьте здоровы Учитель: Здоровье это бесценный дар который преподносит человеку природа. Но как часто мы растрачиваем этот дар попусту забывая что потерять здоровье легко а вот вернуть его очень и очень трудно.
60258. Новорічне свято 612 KB
  В умовах стрімкого сьогодення на вчителя покладається відповідальне завдання – виховувати всебічно розвинуту особистість. Особливо це важливо у молодшій школі, коли в дитини тільки формується вміння аналізувати...
60259. Забвению не подлежит 100 KB
  Цель: отбор примеров из произведений художественной литературы для сценария внеклассного интегрированного занятия и песен созданных во время войны или о войне. Столкновение российских патриотических и украинских националистических организаций...