Балтийский государственный технический университет «Военмех» им.

Кафедра И5

«Информационные системы и компьютерные технологии»

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

«Двумерные массивы»

Вариант 1

Выполнил:

Студент

Группа ИВ311

Преподаватель:

Санкт-Петербург

2013

Цель работы – освоить работу с матрицами, научиться правильно организовывать циклы для обработки многомерных массивов.

Задача 6.1

Постановка задачи

1. Заполнить матрицу А (7х8) нулями и единицами по следующему правилу: если сумма индексов элемента четная, элемент будет нулевым, если нечетная – единичным.

Блок-схема:

Листинг программы:

#include <stdio. h>

#include <conio. h>

#include <iostream. h>

int main() {

int A[7][8], row, column;

for (row = 0; row < 7; ++row)

{ for (column = 0; column < 8; ++column)

{ if ((row+column)%2==0)

{ A[row][column] = 0;

} else

{ A[row][column] = 1;

}

}

}

cout << "Matrix A\n";

for (int row = 0; row < 7; ++row) {

for (int column = 0; column < 8; ++column) {

cout << A[row][column];

}

cout << "\n";

}

getch();

return 0;

}

Тестирование

Должно быть

Получено

Matrix A

Matrix A

Вывод: программа работает правильно.

Задача 6.2

Постановка задачи

1. Вычислить , где Xmin и Xmax – минимальный положительный и максимальный элементы матрицы
X (6х8).

Блок-схема:

Листинг программы:

#include <stdlib. h>

#include <time. h>

#include <conio. h>

#include <stdio. h>

int main() {

float Z;

int A[6][8];

int Min, Max, row, column;

Min=100;

Max=1;

srand(time(NULL));

for (row = 0; row < 6; ++row)

{

for (column = 0; column < 8; ++column)

{

A[row][column] = rand() % 100 +1;

if (A[row][column] < Min )

{

Min = A[row][column];

} else if (A[row][column] > Max)

{

Max = A[row][column];

}

}

}

Z=float (Min) /(float (Max)+ float (Min));

printf("Min=%d, Max=%d, Z=%f",Min, Max, Z);

getch();

return 0;

}

Тестирование

Ответ

Должно быть

Получено

A(6x8, 5…100)

Min=5, Max=100, Z=0.047619

Min=5, Max=100, Z=0.047619

A(6x8, 1…96)

Min=1, Max=96, Z=0.010309

Min=1, Max=96, Z=0.010309

Вывод: программа работает правильно.