Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Постановка задачи. Тема: Изменение порядка элементов матрицы

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

Тема: Изменение порядка элементов матрицы

Исполнитель:

Плотникова А.Ю

Руководитель:

Крапивко Л.П.

 

Миасс

2016
Изменение порядка элементов матрицы

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

Оборудование:

1) персональный компьютер;

2) среда Microsoft Office

 

Ход работы

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

Дана вещественная квадратная матрица размерности n. Поменять местами элементы главной и побочной диагоналей матрицы:

- по строкам;

- по столбцам.

Составим блок-схему, реализующую данную функцию.

 

 
 

 

 


Нет
Да

 
 

 


Нет
Да

 


Рисунок 1- Блок-схема программы

Напишем программу на языке программирования C++, реализующую данную функцию.

#include < cstdlib>

#include < iostream>

 

#define SIZE 5

 

using namespace std;

 

void printer(int array[SIZE][SIZE])

{

for(int i = 0; i < SIZE; i++)

{

for(int j = 0; j < SIZE; j++)

{

cout < < array[i][j] < < " ";

}

 

cout < < endl;

}

cout < < endl < < endl;

}

 

int editor(int array[SIZE][SIZE], string type = " line")

{

int mass[SIZE][SIZE];

 

for(int i = 0; i < SIZE; i++)

{

for(int j = 0; j < SIZE; j++)

{

if(type == " line")

{

if(i == j) mass[i][j] = array[i][SIZE - j - 1];

else if(i == (SIZE - j - 1)) mass[i][j] = array[i][SIZE - j - 1];

else mass[i][j] = array[i][j];

}

else

{

if(i == j) mass[i][j] = array[SIZE - i - 1][j];

else if((SIZE - i - 1) == j) mass[i][j] = array[SIZE - i - 1][j];

else mass[i][j] = array[i][j];

}

}

}

 

printer(mass);

}

 

int main()

{

int array[SIZE][SIZE];

int mass[SIZE][SIZE];

 

for(int i = 0; i < SIZE; i++)

{

for(int j = 0; j < SIZE; j++)

{

array[i][j] = rand()%9;

}

}

 

cout < < " First Matrix: " < < endl;

printer(array);

 

cout < < " Result Matrix: " < < endl;

editor(array, " ");

 

cout < < " Result Matrix (line): " < < endl;

editor(array, " line");

 

system(" PAUSE; ");

}

 

 

Рисунок 2 - Результат выполнения программы

 

<== предыдущая лекция | следующая лекция ==>
Последовательность технологических операций | 




© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.