Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364150
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62792)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21320)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21697)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8694)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3463)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20645)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Реферат: Лабораторная работа №12

Название: Лабораторная работа №12
Раздел: Рефераты по информатике, программированию
Тип: реферат Добавлен 09:00:27 05 июля 2005 Похожие работы
Просмотров: 25 Комментариев: 2 Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать

Цель работы: Изучение правил описания и вызова подпрограмм: процедур и функций. Получение навыков и овладение приемами работы над подпрограммами.

Задание№ 17. Посчитать сумму элементов лежащих выше главной диагонали матрицы для матрицы Z=X2+Y2.

Программа на Turbo Pascal

{Программа: Kyrsaсh }

{Цель: Найти сумму элементов выше главной диагонали }

{Переменные: }

{ X,Y - вводимые массивы }

{ N, M, A,B, Z - промежуточные массивы }

{ t - Размер массива }

{ i, j - переменные цикла }

{Программист: Позднышев А.А. группа 316 }

{Проверил: Новичков В.С. }

Program Lab_12;

uses crt;

Const

Nmax=10; {Максимальный размер массива}

Type

Matrics=array[1..Nmax,1..Nmax] of integer;

Masiv=array[1..Nmax] of integer;

Var

X,Y,Z,A,B:matrics;

M,N:masiv;

i,j,t:integer;

{Процедура ввода элементов массива}

{Параметры: t - размер массива, X - массив}

Procedure Vvod (t:integer; Var X:matrics);

Var

i,j:integer;

Begin{Vvod}

For i:=1 to t do

For j:=1 to t do

Begin {Ввод элементов}

Write ('[',i,',',j,']=');

Read (X[i,j]);

End; {Ввод элементов}

For i:=1 to t do

Begin {Вывод элементов}

For j:=1 to t do

Write (X[i,j]:5);

Writeln

End {Вывод элементов}

End;{Vvod}

{Процедура вывода элеменов матриц}

{Параметры: X,Y - матрицы, t - размер}

Procedure Echo (t:integer; X:matrics);

var

i,j:byte;

begin {Echo}

For i:=1 to t do

Begin

For j:=1 to t do

Write (X[i,j]:5);

Writeln

End

end; {Echo}

{Процедура умножения матриц}

{Параметры: X,Y - начальные массивы, Z - массив результат,t - размер}

Procedure Umn (X,Y:matrics; t:integer; Var Z:matrics);

var

i,j,k,s:integer;

begin {Umno}

for i:=1 to t do

for j:=1 to t do

begin

S:=0;

for k:=1 to t do

s:=s+X[k,i]*Y[j,k];

Z[i,j]:=s;

end;

end; {Umno}

{Процедура сложения массивов}

{Параметры: X,Y - начальные массивы, Z - массив результат, t - размер}

Procedure Summa(X,Y:matrics; t:integer; Var Z:matrics);

var

i,j:integer;

begin {Summa}

for i:=1 to t do

for j:=1 to t do

Z[i,j]:=X[i,j]+Y[i,j]

end; {Summa}

{Процедура для нахождения суммы ниже главной диагонали}

{Параметры: X - начальные массивы, Y - массив результат, t - размер}

Procedure Under (X:matrics; t:integer; Var Y:masiv);

var

s:real;

Begin

S := 0;

For i := 2 to t do

For j := 1 to i-1 do

S:=S + X[i, j];

WriteLn('Сумма элементов, лежащих ниже главной диагонали=', S:5:1);

End;

{Процедура для нахождения суммы выше главной диагонали}

{Параметры: X - начальные массивы, Y - массив результат, t - размер}

Procedure Over (X:matrics; t:integer; Var Y:masiv);

var

s:real;

Begin

S := 0;

For i := 1 to t-1 do

For j := i+1 to t do

S := S + X[i, j];

WriteLn('Сумма элементов, лежащих выше главной диагонали=', S:5:1);

ReadLn

End;

begin{lab_12}

clrscr;

writeln('Введите размеры матриц X,Y:');read(t);

writeln('Введите ',t*t,' элемента для каждой матрицы:');

writeln('Введите матрицу X:');vvod(t,X);

writeln('Введите матрицу Y:');vvod(t,Y);

writeln('Результат возведения матрицы X в квадрат:');

Umn(X,X,t,A);

Echo(t,A);

writeln('Результат возведения матрицы Y в квадрат:');

Umn(Y,Y,t,B);

Echo(t,B);

writeln('Полученный массив после преобразований:');

summa(A,B,t,Z);

Echo(t,Z);

under(Z,t,M);

over(Z,t,N);

end.{lab_12}

Блок-схема





Проведём детализацию в последовательности, определяемой нумерацией блоков на рис. 1.

  1. Ввод размеров матриц X, Y. В данном блоке определён ввод размеров квадратных матриц X, Y (t – размер матриц).

Имя подпрограммы: VVOD
Входные параметры: количество элементов t*t
I=1(1)t

J=1(1)t

Ввод элементов
Выходные параметры: X – матрица размером t*t.

Рис.11. Детализация блока 2

схемы алгоритма.


  1. Имя подпрограммы UMN
    Входные параметры: X, Y – матрицы размером t*t

    I=1(1)t
    J=1(1)t

    S=0
    K=1(1)t

    S=S+X[i,k]*Y[k,j]
    C[i,j]=S
    Выходные параметры: матрица Z размером t*t

    Рис. 13. Детализация блока 4

    схемы алгоритма
    Ввод элементов можно представить соответствующей подпрограммой, структурограмма которой приведена на рис.11. Всего должно быть выведено t*t значений для каждого массива.

  2. Печать элементов матриц X, Y (а также отладочная печать). В данном блоке определёна печать значений элементов квадратных матриц X, Y размером t*t.

  3. Умножение матриц удобно представить следующей подпрограммой, структурограмма которой приведена на рисунке 13.

  4. Сложение матрицы X и матрицы Y представлено в виде подпрограммы на рис.15.


  1. Подпрограммы формирования вектора из сумм элементов выше и ниже главной диагонали представлена структурограммой на рисунке 16 и 17.


Имя подпрограммы OVER
Входные параметры: X – матрица, размером t*t

S=0
I=1(1)t–1

J=i+1(1)t
S=S+X[i,j]

Выходные параметры:

Y – матрица размером t.

Рис. 16. Детализация блока 8
схемы алгоритма
Имя подпрограммы: SUMMA
Входные параметры: X, Y – матрицы, размером t*t
I=1(1)t

J=1(1)t

Z[i,j]=X[i,j]+Y[i,j]

Выходные параметры: Z – матрица размером t*t.
Рис. 15. Детализация блока 7 схемы алгоритма


После каждой подпрограммы производится отладочная печать, представленная отдельной подпрограммой, структурограмма которой изображена на рис. 18.


Имя подпрограммы UNDER
Входные параметры: X – матрица, размером t*t

S=0
I=2(1)t

J=1(1)i-1
S=S+X[i,j]

Выходные параметры:

Y – матрица размером t.

Рис. 17. Детализация блока 8
схемы алгоритма

Имя подпрограммы: Echo
Входные параметры: X – матрица, размером t*t
I=1(1)t

J=1(1)t

Вывод элементов
Выходные параметры: Y – матрица размером t*t.
Рис. 18. Детализация подпрограммы вывода элементов


Министерство образования РФ


Рязанская государственная радиотехническая академия


Кафедра ВПМ


Отчет о

лабораторной работе № 12:

«ПРОЦЕДУРЫ И ФУНКЦИИ»


Выполнил: ст. гр. 316

Позднышев А.А.

Проверил: Новичков В.С.


Рязань 2004


Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Где скачать еще рефератов? Здесь: letsdoit777.blogspot.com
Евгений22:06:55 18 марта 2016
Кто еще хочет зарабатывать от 9000 рублей в день "Чистых Денег"? Узнайте как: business1777.blogspot.com ! Cпециально для студентов!
13:22:48 24 ноября 2015

Работы, похожие на Реферат: Лабораторная работа №12

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(150538)
Комментарии (1836)
Copyright © 2005-2016 BestReferat.ru bestreferat@mail.ru       реклама на сайте

Рейтинг@Mail.ru