Академический Документы
Профессиональный Документы
Культура Документы
КУРСОВАЯ РАБОТА
Астана 2023
1
НАО «Казахский агротехнический исследовательский университет
им. С. Сейфуллина»
ЗАДАНИЕ
на курсовую работу
обучающийся Куржепо Кирилл Сергеевич
Литература:
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
3
СОДЕРЖАНИЕ
ВВЕДЕНИЕ ……………………………………………………………… 5
1 ТЕОРЕТИЧЕСКИЕ ОСНОВЫ АЛГОРИТМИЗАЦИИ И
ПРОГРАММИРОВАНИЯ………………………………………………. 5
1. Алгоритмы………………………………………………………………… 5
1 Линейные структуры…………………………………………………….. 5
1. Развлетвления…………………………………………………………….. 6
2 Циклы……………………………………………………………………... 6
1. Одномерные массивы……………………………………………………. 7
3 Двумерные массивы……………………………………………………… 7
1. ЗАКЛЮЧЕНИЕ…………………………………………………………... 8
4 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ……………………..
1.
5
1.
6
4
Нумерация страниц должна быть отображена только со страницы Введение
ВВЕДЕНИЕ
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
ЗАКЛЮЧЕНИЕ
(каждый раздел заглавными буквами и с новой страницы по центру)
9
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
Не менее 15 источников
10