КОМИТЕТ ОБРАЗОВАНИЯ, НАУКИ И МОЛОДЕЖНОЙ ПОЛИТИКИ ВОЛГОГРАДСКОЙ ОБЛАСТИ   ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ПРОФЕССИОНАЛЬНОЕ
Цели и задачи практики:
Место и время проведения практики:
Решение индивидуального задания по производственной практике
Решение индивидуального задания по производственной практике
Решение индивидуального задания по производственной практике
Быстрая сортировка Хоара
Основные правила, понятия и теоремы Рекуррентные соотношения.
Псевдокод
Результаты прохождения практики:
11.38M
Category: softwaresoftware

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

1. КОМИТЕТ ОБРАЗОВАНИЯ, НАУКИ И МОЛОДЕЖНОЙ ПОЛИТИКИ ВОЛГОГРАДСКОЙ ОБЛАСТИ   ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ПРОФЕССИОНАЛЬНОЕ

КОМИТЕТ ОБРАЗОВАНИЯ, НАУКИ И МОЛОДЕЖНОЙ ПОЛИТИКИ ВОЛГОГРАДСКОЙ ОБЛАСТИ
ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ПРОФЕССИОНАЛЬНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
«ВОЛГОГРАДСКИЙ СОЦИАЛЬНО-ПЕДАГОГИЧЕСКИЙ КОЛЛЕДЖ»
Кафедра информационных технологий
Специальность 09.02.07 «Информационные системы и программирование»
ПМ 01. Разработка модулей программного обеспечения для компьютерных систем
Автор: студентка группы 3 «Д»
Колесниченко Анастасия Павловна
Руководитель:
Авдосиева Светлана Васильевна
Волгоград
2022 г.

2. Цели и задачи практики:

Цель:
Oвладение студентами профессиональной
деятельностью по специальности, знакомство с
основными показателями производственной
деятельности предприятия.
Задачи:
• формирования умений самостоятельно
ориентироваться в новой операционной
программной среде;
• самостоятельное изучение видов
обеспечения автоматизированных систем
предприятия (организации) и способов
(методов) их защиты.

3.

Профессиональные и общие
компетенции:
ПК 1.1 Формировать алгоритмы
разработки программных
модулей в соответствии с
техническим заданием..
ПК 1.2 Разрабатывать
программные модули в
соответствии с техническим
заданием.
ПК 1.3 Выполнять отладку
программных модулей с
использованием
специализированных
программных средств.
ПК 1.4 Выполнять тестирование
программных модулей.
ПК 1.5 Осуществлять
рефакторинг и оптимизацию
программного кода.
ПК 1.6 Разрабатывать модули
программного обеспечения для
мобильных платформ.
ОК 01 Выбирать способы
решения задач
профессиональной деятельности,
применительно к различным
контекстам.
ОК 02 Осуществлять поиск,
анализ и интерпретацию
информации, необходимой для
выполнения задач
профессиональной деятельности.
ОК 03 Планировать и
реализовывать собственное
профессиональное и личностное
развитие.
ОК 04 Работать в коллективе и
команде, эффективно
взаимодействовать с коллегами,
руководством, клиентами.
ОК 05 Осуществлять устную и
письменную коммуникацию на
государственном языке с учетом
особенностей социального и
культурного контекста.
ОК 06 Проявлять гражданскопатриотическую позицию,
демонстрировать осознанное
поведение на основе
традиционных
общечеловеческих ценностей.
ОК 07 Содействовать
сохранению окружающей среды,
ресурсосбережению, эффективно
действовать в чрезвычайных
ситуациях.
ОК 08 Использовать средства
физической культуры для
сохранения и укрепления
здоровья в процессе
профессиональной деятельности
и поддержания необходимого
уровня физической
подготовленности.
ОК 09 Использовать
информационные технологии в
профессиональной деятельности.
ОК 10 Пользоваться
профессиональной
документацией на
государственном и иностранном
языке.

4. Место и время проведения практики:

Курс: 3
Семестр: 6
Место и время
проведения
практики:
Сроки: 08.06.22 – 05.07.22
База: учебные кабинеты информатики
Общая трудоемкость: 144ч.

5. Решение индивидуального задания по производственной практике

«Алгоритмы быстрой сортировки»
Алгоритм (algorithm) - это любая корректно определенная вычислительная процедура, на вход (input),
которой подается некоторая величина или набор величин, и результатом выполнения которой
является выходная (output) величина или набор значений. Таким образом, алгоритм представляет
собой последовательность вычислительных шагов, преобразующих входные величины в выходные.
Алгоритм также можно рассматривать как инструмент, предназначенный для решения корректно
поставленной вычислительной задачи. В алгоритме описывается конкретная вычислительная
процедура, с помощью которой удается добиться выполнения указанных отношений.
Например, может понадобиться выполнить сортировку последовательности чисел в неубывающем
порядке. Эта задача часто возникает на практике и служит благодатной почвой для ознакомления на
ее примере со многими стандартными методами разработки и анализа алгоритмов.
Сортировка представляет собой процесс упорядочения множества подобных информационных
объектов в порядке возрастания или убывания их значений.

6. Решение индивидуального задания по производственной практике

Цель сортировки - облегчить поиск элементов в отсортированном множестве. В этом смысле
элементы сортировки присутствуют почти во всех задачах. Упорядоченные объекты содержатся в
телефонной книге, в оглавлениях, в библиотеках, в словарях, да почти всюду. Даже маленьких детей
приучают привадить вещи «в порядок», и они сталкиваются с некоторым видом сортировки за долго
до того, как узнают что-либо об арифметике.
Если речь идет о задаче сортировки, обычно предполагается, что входные данные состоят только из
чисел. Преобразование алгоритма, предназначенного для сортировки чисел, в программу для
сортировки записей не представляет трудностей, хотя в практической ситуации иногда возникают
различные тонкие нюансы, усложняющие задачу программиста.

7. Решение индивидуального задания по производственной практике

Основные способы и алгоритмы сортировки массивов
Сейчас будет рассмотрена только сортировка массивов, которая имеет три основных способа:
сортировка обменом;
сортировка выбором;
сортировка вставкой.
Пусть на столе лежит колода карт. Для сортировки обменом их необходимо разложить лицевой стороной вверх и затем менять местами те
карты, которые расположены в неправильном порядке, делая это до тех пор, пока колода карт не станет упорядоченной.
Для сортировки выбором вы должны разложить карты на столе, выбрать самую младшую карту и взять ее в свою руку. Затем вы должны
из оставшихся на столе карт вновь выбрать наименьшую по значению карту и поместить ее позади той карты, которая уже имеется у вас в руке.
Этот процесс вы должны продолжать до тех пор, пока все карты не окажутся у вас в руках. Поскольку каждый раз вы выбираете
наименьшую по значению карту из оставшихся на столе, по завершению такого процесса карты у вас в руке будут отсортированы.
Для сортировки вставкой вы должны держать карты в своей руке, поочередно снимая карту с колоды. Каждая взятая вами карта
помещается в новую колоду на столе, причем она ставится на соответствующее место. Колода будет отсортирована, когда у вас в руке не
окажется ни одной карты.
Для каждого способа сортировки имеется много алгоритмов. Каждый алгоритм имеет свои достоинства, но в целом оценка алгоритма
сортировки зависит от ответов, которые будут получены на следующие вопросы:
с какой средней скоростью этот алгоритм сортирует информацию;
какова скорость для лучшего случая и для худшего случая;
поведение алгоритма является естественным или является не естественным;
выполняется ли перестановка элементов для одинаковых ключей?

8. Быстрая сортировка Хоара

Метод быстрой сортировки был разработан в 1960 году Ч.Ф.Р. Хоаром (C.A.R.Hoare) и он же дал ему это название. В настоящее время
этот метод сортировки считается наилучшим. Он основан на использовании обменного метода сортировки. Это тем более удивительно, если
учесть очень низкое быстродействие сортировки пузырьковым методом, который представляет собой простейшую версию обменной
сортировки.
В основе быстрой сортировки лежит принцип разбиения. Сначала выбирается некоторое значение в качестве "основы" и затем весь
массив разбивается на две части. Одну часть составляют все элементы, равные или большие "основы", а другую часть составляют все
элементы меньшего значения, по которому делается разбиение. Этот процесс продолжается для оставшихся частей до тех пор, пока весь
массив не будет отсортирован. Например, для массива " 7356821 " при использовании в качестве значения разбиения "5" будут получены
следующие проходы при выполнении быстрой сортировки:
исходное состояние: 7356821;
первый проход: 2135687;
второй проход: 1235678.
Этот процесс продолжается для каждой части "2135" и "687". Фактически этот процесс имеет рекурсивную природу. И действительно,
наиболее "аккуратно" быстрая сортировка реализуется посредством рекурсивного алгоритма.
Однако следует иметь в виду одно неприятное свойство быстрой сортировки. Если выбираемое для разбиения значение оказывается
совпадающим с максимальным значением, то быстрая сортировка превращается в самую медленную с временем выполнения n. Однако на
практике этот случай не встречается.

9. Основные правила, понятия и теоремы Рекуррентные соотношения.

Для определения времени работы алгоритма, используются так называемые рекуррентные соотношения Получение рекуррентного
соотношения для времени работы алгоритма, основанного на принципе "разделяй и властвуй", базируется на трех этапах.
Обозначим через T(n) время решения задачи, размер которой равен n. Если размер задачи достаточно мал, скажем, n≤с, где с - некоторая
заранее известная константа, то задача решается непосредственно в течение определенного фиксированного времени, которое мы обозначим
через θ(1). Предположим, что наша задача делится на a подзадач, объем каждой из которых равен 1/b от объема исходной задачи. Если
разбиение задачи на вспомогательные подзадачи происходит в течение времени D(n), а объединение решений подзадач в решение исходной
задачи - в течение времени С(n), то мы получим такое рекуррентное соотношение:

10. Псевдокод

11. Результаты прохождения практики:

Результаты работы:
• Разработала алгоритм поставленной задачи и реализации его
средствам и автоматизированного проектирования;
• Разработала код программного продукта на основе готовой
спецификации на уровне модуля;
• Использовала инструментальные средств на этапе отладки
программного продукта;
• Провела тестирование программного модуля по
определенному сценарию
• Разработала и создала:
• Индивидуальный план по производственной практике ПМ 01.
Разработка модулей программного обеспечения для
компьютерных систем.
• Ежедневные приложения к ежедневным отчётам.
• Решила индивидуальное задание.
• Отчетную презентацию по результатам производственной
практике ПМ 01. Разработка модулей программного обеспечения
для компьютерных систем.
• Итоговую документацию.

12.

Спасибо за внимание!
Автор: студентка группы 3 «Д»
Колесниченко Анастасия Павловна
Руководитель:
Авдосиева Светлана Васильевна
Волгоград
2022 г.
English     Русский Rules