Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Вологодский государственный технический университет»
Кафедра автоматики и вычислительной техники
ОТЧЕТ
лабораторная работа 6
по информатике
Выполнил: Симанов Алексей Николаевич
Проверил(а): Давыдова Е.Н.
Группа: ЭПО-11
Вариант: 5
Вологда 2011
Содержание
Задача 1...........................................................................................................................................................2
Задача 2……………………………………………………………………………………………………………………………………………………..4
Задача 3……………………………………………………………………………………………………………………………………………………..7
Задача 4…………………………………………………………………………………………………………………………………………………….10
Задача 1
Записать на место отрицательных элементов матрицы нули, а на место положительных элементов матрицы — единицы.
Работа программы
Задается двумерный массив(a[i,j])путем рандомизации, после чего программа переписывает данный массив следующим образом вместо всех положительных чисел пишет единицы, а вместо всех отрицательных нули.
Назначение переменных
Назначение переменных, используемых в задаче, приведено в таблице 1
Таблица 1 – Назначение переменных
Переменная |
Тип |
Назначение |
а |
Array of Integer |
Двумерный массив |
I,N,J,M |
Integer |
N,M,I,J целочисленные переменные |
Блок – схема алгоритма программы
Начало
Вывод
массива
I:=1
to n do
J:=1
to m do
A[I,j]<=0 Да Нет
a[I,j]:=0 a[I,j]:=1
Вывод
массива
Конец
Рис. 1 Блок схема алгоритма программы
Текст программы
program nuli;
uses crt;
var a:array [1..100,1..100] of integer;
i,j,n,m:integer;
begin
randomize;
n:=5;
m:=5;
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=random(10)-5;
write(a[i,j]:2,' ');
end;
writeln;
end;
for i:=1 to n do
begin
for j:=1 to m do
begin
if a[i,j]<=0 then
a[i,j]:=0 else
a[i,j]:=1;
write(a[i,j],' ');
end;
writeln;
end;
readln;
end.
Тестирование
Задается двумерный массив(a[i,j])путем рандомизации, после чего программа переписывает данный массив следующим образом вместо всех положительных чисел пишет единицы, а вместо всех отрицательных нули.
1:
Массив 2 3 -3-4-5
2-2 1-5 0
-2-5 4-5 4
-4 3-5 0-2
-5-2-3 4-4
Новый массив 1 1 0 0 0
1 0 1 0 0
0 0 1 0 1
0 1 0 0 0
0 0 0 1 0
Задача 2
В двумерном массиве целых чисел поменять местами строки и столбцы с одинаковыми номерами.
Работа программы
Задаются 2 двухмерных массива(a,b[i,j]) путем рандомизации, после чего программа меняет местами их строки и столбцы.
Назначение переменных
Назначение переменных, используемых в задаче, приведено в таблице 1
Таблица 1 – Назначение переменных
Переменная |
Тип |
Назначение переменных |
А,B |
Array of integer |
Исходные массивы |
I,N,J,M |
Integer |
Целочисленные переменные, n, m=const |
Блок – схема алгоритма программы
Начало
Заполняем
массив
Вывод
массива
j:=1
to m do
b[I,j]:=a[I,j]
Вывод
массива
Конец
Текст программы
program obmenmestami;
uses crt;
var a,b:array [1..100,1..100] of integer;
i,j,n,m,t:integer;
begin
n:=3;
m:=3;
randomize;
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=random(10);
write(a[i,j],' ');
end;
writeln;
end;
writeln;
for i:=1 to n do
begin
for j:=1 to m do
begin
b[i,j]:=a[j,i];
write(b[i,j],' ');
end;
writeln;
end;
readln;
end.
Тестирование
Введите 7 целых чисел, после чего программа выдаст вам новый массив в зависимости от введенных вами чисел.
1:
Первый массив
844
398
420
Второй массив
834
492
480
Задача 3
Дана вещественная матрица размерности n * m. Сформировать вектор b, в котором элементы вычисляются как:
- произведение элементов соответствующих строк;
- среднее арифметическое соответствующих столбцов;
- разность наибольших и наименьших элементов соответствующих строк;
- значения первых отрицательных элементов в столбце.
Работа программы
Вводится исходный двухмерный массив(a[i,j]), после чего программа начинает выполнять следующие действия, находит произведение элементов соответствующих строк, среднее арифметическое соответствующих столбцов, разность наибольших и наименьших элементов соответствующих строк, значения первых отрицательных элементов в столбцах.
Назначение переменных
Назначение переменных, используемых в задаче, приведено в таблице 1
Таблица 1 – Назначение переменных
Переменная |
Тип |
Назначение переменной |
a |
Array of integer |
Исходный двухмерный массив |
i,j,t,b,mi,ma |
integer |
Целочисленные переменные необходимые в теле программы. |
Блок – схема алгоритма программы
i:=1
to n do
b:=1
j:=1
to m do
b:=b*a[I,j]
Вывод
результата
i:=1
to n do
mi:=0
ma:=0
j:=1
to m do
mi>a[I,j] Да Нет
mi:=a[I,j]
ma<a[I,j]
Да Нет
ma:=a[I,j]
Вывод
результата
j:=1
to m do
b:=0
i:=1
to n do
A[I,j]<0
and b=0 Да Нет
b:=4
Вывод
результата
Конец