Вы находитесь на странице: 1из 10

Министерство сельского хозяйства Республики Казахстан

Казахский агротехнический исследовательский университет


им. С. Сейфуллина

Кафедра «Информационные системы»

КУРСОВАЯ РАБОТА

Образовательная программа «Программная инженерия» направление


подготовки 6В061 – «Информационно-коммуникационные технологии»

Дисциплина: Алгоритмы, структуры данных и программирование

Тема: Применение теоретических знаний и практических навыков для


построения алгоритмов решения задач и их программной реализации

Выполнили: студент группы 23-17


Куржепо К. С.

Проверила: ст.преподаватель, PhD


Бельдеубаева Ж.Т.

Курсовая работа допущена к защите


(подпись преподавателя)

Астана 2023
1
НАО «Казахский агротехнический исследовательский университет
им. С. Сейфуллина»

Факультет «Компьютерные системы и профессиональное обучение»


Кафедра «Информационные системы»
Образовательная программа 6B06101 “Программная инженерия”

ЗАДАНИЕ
на курсовую работу
обучающийся Куржепо Кирилл Сергеевич

Тема работы : Применение теоретических знаний и практических


навыков для построения алгоритмов решения задач и их
программной реализации

№ Содержание пояснительной записки Сроки Примерный


выполнения объем
1 Введение 10.11.2023 1 страница
2 Основная часть стр
3 Заключение стр

№ Содержание графической части Сроки Количество Формат


выполнени листов
я
1 А4
2 А4
3 А4
4 А4
5 А4
6 А4
7 А4

Литература:
1. Томас Х. Кормен "Алгоритмы: построение и анализ".(Электронный
вариант) Доступно по ссылке: http://www.r-5.org/files/books/computers/algo-
list/common/Cormen_Leiserson_Rivest_Stein-Introduction_to_Algorithms-
RU.pdf
2. Горностаева, Татьяна Николаевна, Алгоритмы. Учебное пособие – Мир
науки, 2019. (Электронный вариант) Доступен по ссылке: https://izd-
mn.com/PDF/33MNNPU19.pdf
3. Теория алгоритмов (Электронная версия) Доступна по ссылке:
https://ru.wikiversity.org/wiki/%D0%A2%D0%B5%D0%BE
2
%D1%80%D0%B8%D1%8F_%D0%B0%D0%BB%D0%B3%D0%BE
%D1%80%D0%B8%D1%82%D0%BC%D0%BE%D0%B2
4. Н. В. Пацей Основы алгоритмизации и программирования (Электронный
вариант) Доступен по ссылке:https://core.ac.uk/download/pdf/144004392.pdf
5. Книга: C# 4.0: полное руководство (Электронный вариант) Доступен по
ссылке: https://wm-help.net/lib/b/book/1368874890/70

Дата выдачи задания: 20.09.2023


Дата защиты работы:
Руководитель работы : Старший преподаватель, PhD Бельдеубаева Ж.Т.
Задание приняли к исполнению Куржепо К.С.

3
СОДЕРЖАНИЕ

ВВЕДЕНИЕ ……………………………………………………………… 5
1 ТЕОРЕТИЧЕСКИЕ ОСНОВЫ АЛГОРИТМИЗАЦИИ И
ПРОГРАММИРОВАНИЯ………………………………………………. 5
1. Алгоритмы………………………………………………………………… 5
1 Линейные структуры…………………………………………………….. 5
1. Развлетвления…………………………………………………………….. 6
2 Циклы……………………………………………………………………... 6
1. Одномерные массивы……………………………………………………. 7
3 Двумерные массивы……………………………………………………… 7
1. ЗАКЛЮЧЕНИЕ…………………………………………………………... 8
4 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ……………………..
1.
5
1.
6

После завершения оформления таблицы обрамление сделайте невидымым

Должен быть раздел 2 – практическая реализация

4
Нумерация страниц должна быть отображена только со страницы Введение

ВВЕДЕНИЕ

В современном динамично развивающимся мире информационных


технологий важность освоения основ алгоритмов, структур данных и умений
программирования становится неотъемлемой для успешной подготовки к
будущей карьере в сфере IT. Студенты, обучающиеся на специальности
программная инженерия, сталкиваются с необходимостью овладения
навыками создания алгоритмических структур и написания программного
кода. Этот курс предоставляет студентам группы 05-057-23-17 уникальную
возможность закрепить теоретические основы и развить навыки
самостоятельной разработки алгоритмов и их программной реализации.

Введение не менее 1,5 стр

5
1 ТЕОРЕТИЧЕСКИЕ ОСНОВЫ АЛГОРИТМИЗАЦИИ И
ПРОГРАММИРОВАНИЯ

1.1.Алгоритмы
Алгоритм (algorithm) – это формально описанная вычислительная
процедура, получающая исходные данные (input), называемые также входом
алгоритма или его аргументом, и выдающая результат вычислений на выход
(output).
Алгоритмы строятся для решения тех или иных вычислительных задач
(computational problems). Формулировка задач описывает, каким требованием
должно удовлетворять решение задачи, а алгоритм, решающий эту задачу,
находит объект, этим требованием удовлетворяющий.[1]

1.2.Линейные структуры
Алгоритм называется линейным, если все его указания (команды)
выполняются в порядке их следования в алгоритме независимо от исходных
и промежуточных данных[2]. Алгоритм обрабатывает данные в строгой
последовательности, начиная с первого элемента и заканчивая последним
элементом, без переходов и итеративных шагов. Для него характерно
отсутствие ветвлений, когда каждый шаг зависит от предыдущего и
предшествует следующему. Кроме того, поскольку нет циклов, каждая
команда выполняется только один раз. Линейные алгоритмы часто
используются в тех случаях, когда задача может быть разбита на
последовательные шаги, не требующие условий или многократного
выполнения.

1.3.Развлетвления
Ветвящийся алгоритм представляет собой вычислительную процедуру, в
рамках которой предусмотрена возможность ветвления или отклонения. Эта
характеристика позволяет осуществлять различные последовательности
операций в зависимости от условий и входных данных. Такие алгоритмы
обеспечивают разнообразные маршруты выполнения и способны
адаптироваться к различным сценариям в соответствии с логическими
условиями. В качестве условия в разветвляющемся алгоритме может быть
использовано любое понятное исполнителю утверждение, которое может
соблюдаться( быть истинным) или не соблюдаться( быть ложным). Такое
утверждение может быть выражено как словами, так и формулой. Обычно
различают два вида условий простые и составные. Простым условием
называется выражение, составленное из двух арифметических выражений
6
или двух текстовых величин, связанных одним из знаков<( меньше),< =
( меньше или равно),>( больше),> = ( больше или равно), = ( равно),<>( не
равно). Составные условия состоят из двух или более простых, связанных
логическими операциями И, ИЛИ, НЕ. [3]

1.4.Циклы
Циклические алгоритмы существуют для эффективной обработки
повторяющихся задач, где выполнение одних и тех же инструкций требуется
многократно. Цикл в алгоритме предоставляет механизм повторения блока
операций, пока логическое условие, определенное перед началом цикла,
остается выполненным. Многие из реально существующих алгоритмов
имеют смешанный характер, т.е. могут содержать линейные участки,
разветвления, циклы с известным количеством повторений и итерационные
циклы. В связи с этим составление алгоритмов сразу в законченной форме
затруднено. Поэтому для составления сложных алгоритмов рекомендуется
использовать нисходящее проектирование программ (метод пошаговой
детализации, метод последовательных уточнений). Его суть: первоначально
продумывается общая структура алгоритма, без детальной проработки его
отдельных частей. Далее прорабатываются отдельные блоки, не
детализированные на предыдущем шаге. Таким образом, на каждом шаге
разработки уточняется реализация фрагмента алгоритма, т.е. решается более
простая задача[4]

1.5.Одномерные массивы
Массив представляет собой совокупность переменных одного типа с
общим для обращения к ним именем. В C# Python C++ массивы могут быть
как одномерными, так и многомерными, хотя чаще всего применяются
одномерные массивы. Массивы служат самым разным целям, поскольку они
предоставляют удобные средства для объединения связанных вместе
переменных. Например, в массиве можно хранить максимальные суточные
температуры, зарегистрированные в течение месяца, перечень биржевых
курсов или же названия книг по программированию из домашней
библиотеки.[5] Главное преимущество массива — в организации данных
таким образом, чтобы ими было проще манипулировать. Так, если имеется
массив, содержащий дивиденды, выплачиваемые по определенной группе
акций, то, организовав циклическое обращение к элементам этого массива,
можно без особого труда рассчитать средний доход от этих акций. Кроме
того, массивы позволяют организовать данные таким образом, чтобы легко
отсортировать их. В программировании одномерный массив - это структура
данных, предназначенная для хранения упорядоченной последовательности
элементов одного типа. Каждый элемент массива идентифицируется
уникальным индексом, который позволяет эффективно обращаться к данным
и манипулировать ими. В этой структуре использование индексов упрощает
такие операции, как сортировка, поиск и замена элементов.
7
1.6 Двумерные массивы
Двумерный массив - это структура данных, применяемая в
программировании для упорядочивания элементов одного типа в таблице с
двумя измерениями. Каждый элемент массива определяется двумя
индексами, которые указывают на его местоположение в строке и столбце.
Это обеспечивает эффективную работу с матричными данными и решение
разнообразных задач в программировании. Также двумерные массивы
используются для анализа данных, обработки изображения и научных
вычислений.

После последней цифры и названия разделов, подразделов точку не


ставьте

8
ЗАКЛЮЧЕНИЕ
(каждый раздел заглавными буквами и с новой страницы по центру)

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


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

Заключение не менее 1,5 стр

9
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Томас Х. Кормен "Алгоритмы: построение и анализ".(Электронный


вариант) Доступно по ссылке: http://www.r-5.org/files/books/computers/algo-
list/common/Cormen_Leiserson_Rivest_Stein-Introduction_to_Algorithms-
RU.pdf
2. Горностаева, Татьяна Николаевна, Алгоритмы. Учебное пособие – Мир
науки, 2019. (Электронный вариант) Доступен по ссылке: https://izd-
mn.com/PDF/33MNNPU19.pdf
3. Теория алгоритмов (Электронная версия) Доступна по ссылке:
https://ru.wikiversity.org/wiki/%D0%A2%D0%B5%D0%BE
%D1%80%D0%B8%D1%8F_%D0%B0%D0%BB%D0%B3%D0%BE
%D1%80%D0%B8%D1%82%D0%BC%D0%BE%D0%B2
4. Н. В. Пацей Основы алгоритмизации и программирования (Электронный
вариант) Доступен по ссылке:https://core.ac.uk/download/pdf/144004392.pdf
5. Книга: C# 4.0: полное руководство (Электронный вариант) Доступен по
ссылке: https://wm-help.net/lib/b/book/1368874890/70

Не менее 15 источников

10

Вам также может понравиться