Файл: Отчет по лабораторной работе 7 по дисциплине Компьютерные основы инфокоммуникационных технологий.docx

ВУЗ: Не указан

Категория: Отчеты по практике

Дисциплина: Не указана

Добавлен: 10.04.2024

Просмотров: 10

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


Задание № 7

В данной действительной квадратной матрице порядка n найти наибольший по модулю элемент. Получить квадратную матрицу порядка n-1 путем выбрасывания из исходной матрицы какой-нибудь строки и столбца, на пересечении которых расположен элемент с найденным значением.

1) составить алгоритм

  1. Начало

  2. Ввод n, zn_min, zn_max

  3. Цикл i (n)

  4. Ввод b

  5. Цикл j (n)

  6. Присвоить к массиву b числа в диапазоне (zn_min, zn_max)

  7. Присвоить к a массив b

  8. Вывод b[j], ()

  9. Ввод m, x, y

  10. Задать цикл i(n), j(n)

  11. ЕСЛИ m

ТО присвоить m = [i][j]; x,y = i, j

  1. Вывод m

  2. Ввод a

  3. Цикл i(n), j(n)

  4. ЕСЛИ i != x и j != y,

ТО вывод a

  1. Конец

В таблице 7 приведены переменные и их параметры

Таблица 7 – Описание переменных к заданию 7

п/п

Обозначение

Наименование

Тип

Диапазон

Единица измерения

Примечание

1

n

Количество строк и столбцов матрицы

входная

n >= 2

-

натуральное число

2

zn_min

Минимальное значение матрицы

входная

-∞< zn_min <∞

-




3

zn_max

Максимальное значение матрицы

входная

-∞< zn_max <∞

-




4

a

Изменённая матрица

выходная










5

b

Начальная матрица

выходная










6

m

Максимальное значение в имеющейся матрице

выходная










7

x

Строки матрицы

промежуточная










8

y

Столбцы матрицы

промежуточная











2) разработать блок-схему алгоритма:

Блок-схема алгоритма представлена на рисунке 7.



Рисунок 7 – Блок-схема алгоритма к задаче №7

Вывод: в ходе выполнения лабораторной работы были изучены методы составления и реализации алгоритмов. Также был изучен графический способ описания алгоритма. Научились составлять словесный алгоритм и псевдокод для решения задач. Составили блок-схемы по данным алгоритмам и проверили их правильность.

Контрольные вопросы:

1.   Что такое алгоритм?

Алгоритм – описанная на некотором языке точная конечная система правил, определяющая содержание и порядок действий над некоторыми объектами, строгое выполнение которых дает решение поставленной задачи.

2.   Какими свойствами обладает алгоритм?

Алгоритм характеризуется следующими свойствами:

1)  дискретность (разрывность – противоположно непрерывности) – свойство алгоритма, характеризующее его структуру: каждый алгоритм состоит из отдельных законченных действий, «делится на шаги»;

2)  массовость – применимость алгоритма ко всем задачам рассматриваемого типа, при любых исходных данных;

3)  определенность (детерминированность, точность) – свойство алгоритма, указывающее на то, что каждый шаг алгоритма должен быть строго определен и не допускать различных толкований; также строго должен быть определен порядок выполнения отдельных шагов;

4)  результативность – свойство, состоящее в том, что любой алгоритм должен завершаться за конечное число шагов.

5)  формальность – это свойство указывает на то, что любой исполнитель, способный воспринимать и выполнять инструкции алгоритма, действует формально, т.е. отвлекает от содержания поставленной задачи и лишь строго выполняет инструкции.

3.   Что из себя представляет алгоритмический язык?

Алгоритм моделирует решение задачи в виде точно определенной последовательности действий для некоторого исполнителя по преобразованию исходных данных в результирующие.

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

4.   Какие существуют изобразительные средства алгоритмов?


Основными изобразительными средствами алгоритмов являются следующие способы их записи:

    словесный;

    формульно-словесный;

    графический;

    псевдокод;

    табличный;

    операторный.

5.   Что из себя представляет графический способ описания алгоритма?

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

Каждый этап процесса переработки данных представляется в виде геометрических фигур (блоков), имеющих определенную конфигурацию в зависимости от характера выполняемых операций 

6.   Опишите линейную алгоритмическую структуру

Линейный алгоритм — это алгоритм, образуемый командами, которые выполняются однократно и именно в той последовательности, в которой записаны. Линейная структура, по сути, проста. Записать её можно как в текстовой, так и в графической форме.



7.   Опишите алгоритмическую структуру «разветвление»

Структура «Разветвление»

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



Проверка «Условие?» представляется предикатом, т.е. функцией, задающей логическое выражение или условие, значением которого может быть истина («+») или ложь («-»). Эта структура может быть неполной, когда отсутствует действие, выполняемое при ложном (или истинном) значении логического выражения.



8.   Опишите алгоритмическую структуру «цикл»

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

В алгоритмической структуре цикл серия команд (тело цикла) выполняется многократно.

Циклические алгоритмические структуры бывают двух типов:

• циклы со счётчиком, в которых тело цикла выполняется определённое количество раз;
• циклы по условию, в которых тело цикла выполняется, пока истинно (или ложно) заданное условие.


Алгоритмическая структура цикл может быть описана графически с помощью блок-схемы.



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

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

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

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

9.   Какие виды циклов вы знаете?

  • безусловный цикл

Безусловные циклы – это циклы, которые выполняются бесконечно. Пример, «пока 1 = 1, напечатать 1 = 1». Такая программа будет выполняться пока её не прервут вручную.

  • цикл с предусловием

Цикл с предусловием – это цикл, который выполняется, пока истинно некоторое условие, указанное перед его началом. Это условие проверяется до выполнения тела цикла, поэтому тело может быть не выполнено ни разу (если условие с самого начала ложно). В большинстве процедурных языков программирования реализуется оператором while, отсюда его второе название – while – цикл.

  • цикл с постусловием

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

  • цикл со счётчиком

Цикл со счётчиком – цикл, в котором некоторая переменная изменяет своё значение от заданного начального значения до конечного значения с некоторым шагом, и для каждого значения этой переменной тело цикла выполняется один раз.

  • цикл с выходом из середины

Цикл с выходом из середины – это цикл, в котором есть команды, нарушающие порядок выполнения конструкций цикла. Существует команда досрочного выхода из цикла – break и команда пропуска итерации – continue. Это команды служат для управления работой цикла.

  • вложенный цикл

Вложенные циклы – это циклы, организованные в теле другого цикла. Вложенный цикл в тело другого цикла, называется внутренним циклом. Цикл, в теле которого существует вложенный цикл, называется внешним.


  • совместный цикл

Совместный цикл (цикл по коллекции, цикл просмотра) – это цикл, задающий выполнение некоторой операции для объектов из заданного множества, без явного указания порядка перечисления этих объектов. Совместный цикл, теоретически, никак не определяет, в каком порядке операция будет применяться к элементам множества, хотя конкретные языки программирования, разумеется, могут задавать конкретный порядок перебора элементов.

10.             Какие данные называются структурированными?

Структурными называются упорядоченные количественные данные – это чаще всего численные или текстовые, - имеющие некоторый стандартный формат и существующие в фиксированном поле в рамках файла или записи. Распространенные примеры структурированных данных – это информация в таблицах.

11.             Какие типы массивов вы знаете?

Существует два типа массивов: одномерные и многомерные. Одномерные массивы представляют собой простейшие линейные структуры, а многомерные – вложенные, также включают другие массивы.

12.             Что такое размерность массива?

Размерность массива – это количество индексов, необходимое для однозначной адресации элемента в рамках массива.

13.             Дайте определения понятиям «переменная», «оператор», «функция»

Переменная – есть именованный объект (ячейка памяти), который может изменять свое значение. Имя переменной указывает на значение, а способ ее хранения и адрес остаются скрытыми от пользователя. Кроме имени и значения, переменная имеет тип, определяющий, какая информация находится в памяти. Тип переменной задает:

    используемый способ записи информации в ячейки памяти;

    необходимый объем памяти для ее хранения.

Оператор – это составная часть программы, фраза алгоритмического языка, предписывающая определённый порядок преобразования информации. Любая программа содержит операторы. Наиболее близкой аналогией оператору является предложение. Операторы образуют программу так же, как обычные предложения образуют текст рассказа.

Функции – это блоки кода, выполняющие определённые операции. Если требуется, функция может определять входные параметры, позволяющие вызывающим объектам передавать ей аргументы. При необходимости функция также может возвращать значение как выходное.

14.             Какие операции с массивами вы знаете?