Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Тема 3- Алгоритмические модели поиска и сортировки данных Разработал- ст

Работа добавлена на сайт samzan.net: 2016-06-20

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 18.5.2024

Воронежский институт МВД России

Кафедра автоматизированных информационных систем

органов внутренних дел

УТВЕРЖДАЮ

Начальник кафедры АИС ОВД

полковник полиции

                                  И.В. Атласов

« ___ »   ____________    2012 г.

ПЛАН

и методические указания курсантам на лабораторное занятие

ТМ № 1 Тема 3: «Алгоритмические модели поиска и сортировки данных»

Разработал:

ст. преподаватель кафедры

АИС ОВД, майор полиции

                              В.В. Конобеевских

Обсуждено и одобрено

на заседании методической

секции кафедры АИС ОВД

Протокол №     от «   »         2012 г.

Обсуждено и одобрено

на заседании кафедры  АИС ОВД

Протокол №      от «   »          2012 г.

Воронеж 2012

Тематический модуль № 1

Тема 3

Лабораторное занятие № 2 «Алгоритмы нахождения заданных элементов в двумерных числовых массивах»

Цели занятия:

Учебно-воспитательные:

  1.  Получение практических умений и навыков разработки алгоритмов обработки двумерных массивов, развить познавательные интересы и творческих способности
  2.  Сформировать компетенции анализа и синтеза при решении задач циклической обработки последовательности значений.

Категория слушателей: 2 курс РТФ.

Время: 90 мин.

Место проведения: дисплейный класс.

Материально-техническое обеспечение:

1) персональный компьютер IBM PC, с операционной системой Windows;

2) текстовый процессор Microsoft Office Word 2003 и выше;

3) тестирующая программа tTester.

ПЛАН   ЗАНЯТИЯ

Учебные вопросы

Время, мин

Вступительная часть . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1. Алгоритмы обработки двумерных числовых массивов . . . .

2. Выполнение индивидуального задания . . . . . . . . . . . . . . . .  . .

Заключительная часть……………………………………………..

5

20

50

15

Литература:

основная:

  1.   Фаронов, В. В. Delphi. Программирование на языке высокого уровня [Текст] : [учебник] : доп. М-вом образования / В. В. Фаронов. − СПб : Питер, 2009. − 639 с.
  2.  С++: процедурно-ориентированное программирование [Текст] : учеб. пособие / Воронежский ин-т МВД России ; авт.-сост. : О. И. Каляпина, С. А. Мишин. − Воронеж : ВИ МВД России, 2008. − 174 с.

дополнительная:

3. Информатика. Ч. I. Технические и программные средства реализации информационных процессов: курс лекций [Текст] / Авт.-сост. С. А. Мишин, О. И. Каляпина. – Воронеж: Воронежский институт МВД России, 2008. − 292

 ЗадАние и МЕТОДИЧЕСКИЕ УКАЗАНИЯ курсантам по подготовке к лаборатороному занятию

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

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

Элементы теории

Двумерный массив - это структура однотипных элементов, расположенных в виде таблицы значений. Такое представление значений соответствует математическому понятию двумерный массив. Каждый элемент в двумерном массиве идентифицируется номером строки и номером столбца, на пересечении которых он расположен. Например, в двумерном массиве А, изображенном на рис. 1, элемент со значением 5 расположен на пересечении третьей строки и второго столбца. Этот элемент будет обозначаться как А(3,2). А элемент А(1,4) имеет значение , равное нулю. Такое представлениенабора значений позволяет выполнять обработку как отдельных значений в двумерном массиве, так и последовательности значений, расположенных в строках или столбцах.

Рис. 1. Пример двумерного массива

В дальнейшем будем считать, что для двумерного массива A(N,М) в обозначении элемента А(i,j) первое значение i соответствует номеру строки и изменяется от 1 до N, а j-номеру столбца и изменяется от 1 до М. В отличие от одномерного массива, в котором использовался только один номер для определения местоположения элемента и требовался только один цикл для ввода элементов, в двумерном массиве для обработки элементов необходимы два вложенных друг в друга цикла. Внешний цикл предназначен для изменения номера строки i, а второй, внутренний, - для изменения номера столбца j в текущей строке i.

На рис. 2 представлен простой алгоритм ввода элементов, построенный в виде структуры из вложенных циклов.

Рис. 2. Алгоритм ввода элементов двумерного массива

Алгоритм ввода-вывода матриц

Матрицы, как и массивы, нужно вводить (выводить) поэлементно. Блок-схема ввода элементов матрицы изображена на рис. 3. Вывод матрицы организуется аналогично вводу.

Рис. 3 Ввод элементов матрицы

Рис. 4. Свойства элементов матрицы

Рассмотрим несколько задач обработки матриц. Для их решения напомним читателю некоторые свойства матриц (рис. 4):

  •  если номер строки элемента совпадает с номером столбца (i = j), это означает что элемент лежит на главной диагонали матрицы;
  •  если номер строки превышает номер столбца (i > j), то элемент находится ниже главной диагонали;
  •  если номер столбца больше номера строки (i<j), то элемент находится выше главной диагонали.
  •  элемент лежит на побочной диагонали, если его индексы удовлетворяют равенству i+j-1 = n;
  •  неравенство i+j-1 < n характерно для элемента находящегося выше побочной диагонали;
  •  соответственно, элементу лежащему ниже побочной диагонали соответствует выражение i+j-1 > n.

Задача. .Найти сумму элементов матрицы, лежащих выше главной диагонали.

Рис. 5 . Матрица элементов

Алгоритм решения данной задачи (рис. 6) построен следующим образом: обнуляется ячейка для накапливания суммы (переменная S). Затем с помощью двух циклов (первый по строкам, второй по столбцам) просматривается каждый элемент матрицы, но суммирование происходит только в том случае если, этот элемент находится выше главной диагонали, то есть выполняется свойство i < j.

Рис. 6 . Алгоритм нахождения суммы  элементов матрицы, лежащих выше главной диагонали.

На рисунке 7 изображен еще один вариант решения данной задачи. В нем проверка условия i<j не выполняется, но, тем не менее, в нем так же суммируются элементы матрицы, находящиеся выше главной диагонали. Для того чтобы понять, как работает этот алгоритм, вернемся к рисунку 5. В первой строке заданной матрицы необходимо сложить все элементы, начиная со второго. Во второй - все, начиная с третьего, в i-й строке процесс начнется с (i+1)-го элемента и так далее. Таким образом, первый цикл работает от 1 до N, а второй от i+1 до M..

Рис. 7 . Алгоритм нахождения суммы  элементов матрицы, лежащих выше главной диагонали.

Задача.  

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

Для решения данной задачи необходимо найти в каждой строке сумму элементов, которую разделить на их количество. Полученный результат записать в первый элемент соответствующей строки. Блок-схема алгоритма решения приведена на рис. 8.

Рис. 8

Задача.  

Задана матрица An, m. Сформировать вектор Pm, в который записать номера строк максимальных элементов каждого столбца.

Алгоритм решения этой задачи следующий: для каждого столбца матрицы находим максимальный элемент и его номер, номер максимального элемента j-го столбца матрицы записываем в j-й элемент массива P. Блок-схема алгоритма приведена на рис. 9.

Рис.9

Вопросы и задания для самопроверки

  1.  Дайте определение понятия массив?
  2.  Как задается массив?
  3.  Как обратиться к элементу массива?
  4.  Какой массив называется двумерным? Приведите примеры.
  5.   Выберите последовательности данных, которые можно представить в виде двумерного массива, определите в нем количество строк и столбцов:

{-2, 5, 9, 14, 0, -32}

{3, 3.4, -4.0, 25, -6, 1.7}

{‘d’, ‘Q’, ‘1’, ‘v’}

{‘Ivanov’, ‘Petrov’, ‘Dmitriy’}

{‘s’, ‘w’, 2, ‘33’, ‘s’}

{‘Ivan’, ‘A’, ‘R’}.

МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ОТРАБОТКЕ УЧЕБНЫХ ВОПРОСОВ

2. Выполнение индивидуального задания

Задание 1. Составить циклические алгоритмы (в виде схемы и псевдокода) и таблицы трассировки для следующих задач обработки двумерных массивов:

  1.  Дана матрица А(n,m). Сформировать массив В(m), каждый элемент которого есть среднее арифметическое значение соответствующего столбца матрицы А.
  2.  Дана матрица А(n,m). Сформировать массив В(m), каждый элемент которого есть сумма четных элементов соответствующего столбца матрицы А.
  3.  Дана матрица А(n,m). Сформировать массив В(n), каждый элемент которого есть количество положительных элементов соответствующей строки матрицы А.
  4.  Дана матрица А(n,m). Сформировать массив В(m), каждый элемент которого есть третий элемент соответствующего столбца матрицы А, где n>3.
  5.  Дана матрица А(n,m). Сформировать массив В(n), каждый элемент которого есть количество элементов больших x соответствующей строки матрицы А.
  6.  Дана матрица А(n,m). Сформировать массив В(m), каждый элемент которого есть количество элементов меньших y соответствующего столбца матрицы А.

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

1. Опишите алгоритм ввода элементов двумерного массива.

2. Опишите алгоритм выводы элементов двумерного массива.

3. Как поменять местами два элемента массива?

4. Опишите алгоритм нахождения суммы всех элементов двумерного массива?

5. Опишите алгоритм нахождения произведения всех элементов двумерного массива?




1. а Гончарное б Стекольное в Изготовление кирпичасырца процесс и технология строительства пирамид г
2. Ядерные реакции. Энергетический выход реакций
3. Реферат- Мотивационно-ценностные отношения в профессиональном становлении студентов дошкольного факультета
4. Тоговая контрольная работа по информатике, 1 курс, 1 семестр, 2 вариант
5. Vtofresh. Разработанный вебсайт содержит общую информацию об автомойках которая включает в себя- информацию о
6. Расчеты и прогнозирование свойств органических соединени
7. Доки ми чекаємо від законодавства що воно вилікує бідність та ліквідує привілеї нам судитиметься й надал
8. Объединенные кондитеры
9.  ЛИНЕЙНЫЕ ЭЛЕКТРИЧЕСКИЕ ЦЕПИ 1
10. Теоретическое обоснование проблемы развития физических качеств дошкольников во взаимодействии ДОУ с семье
11. Сельскохозяйственные предприятия
12. Путешествие в страну здоровья
13. ЛАБОРАТОРНАЯ РАБОТА ’ 6 НАСТРОЙКА ЗУБОДОЛБЁЖНОГО ПОЛУАВТОМАТА модели 5А12 Методические указани.html
14. Да здравствует мыло душистое
15. Издержки производства в долгосрочном периоде Эффект масштаба.html
16. пайдос дитя аговести
17.  Предмет и метод экономики АПК Под экономикой в широком смысле этого слова понимается совокупность обще
18. Война и мир может произвести впечатление хаотичности разбросанности и неслаженности множества персонажей
19. правовой работы в Вооруженных Силах Республики Казахстан
20. Тема - Травматизм і професійні захворювання.