
- •Содержание
- •Введение
- •1 Понятие алгоритма
- •2 Графическое описание алгоритма
- •2.1 Виды и назначение основных блоков
- •2.2 Базовые структуры алгоритмов
- •4 Методические указания по выполнению домашней контрольной работы
- •Методические указания по выполнению задания № 2
- •4.2 Методические указания по выполнению задания № 3
- •5 Задания для контрольной работы
- •1 Вариант
- •2 Вариант
- •3 Вариант
- •4 Вариант
- •5 Вариант
- •6 Вариант
- •7 Вариант
- •8 Вариант
- •9 Вариант
- •10 Вариант
- •6 Экзаменационные теоретические вопросы по дисциплине теория алгоритмов
- •Список использованных источников
Федеральное агентство связи
Федеральное государственное образовательное бюджетное учреждение
высшего профессионального образования
«Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича»
Архангельский колледж телекоммуникаций (филиал) федерального государственного образовательного бюджетного учреждения высшего профессионального образования «Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича»
Составил
С.В. Лукина
Теория алгоритмов
Методические указания
по изучению дисциплины, контрольное задание
для студентов заочной формы обучения
по специальности:
230115 – Программирование в компьютерных системах
Архангельск 2012
Лукина С.В. Теория алгоритмов. Методические указания по изучению дисциплины, контрольное задание Архангельск. АКТ (ф) СПбГУТ, 2012.
Рассмотрено и одобрено цикловой комиссией Информационных технологий и математических дисциплин АКТ (ф) СПбГУТ.
Пособие содержит задания для контрольной работы, теоретические основы и методические указания по выполнению заданий, примеры решения задач и список литературы.
Архангельский колледж телекоммуникаций (филиал) федерального государственного образовательного бюджетного учреждения высшего профессионального образования «Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича», 2012.
Усл. печ. л. 0,84
Содержание
Введение 4
1 Понятие алгоритма 5
2 Графическое описание алгоритма 8
2.1 Виды и назначение основных блоков 10
2.2 Базовые структуры алгоритмов 12
3 Основные виды алгоритмов 16
3.1 Линейный алгоритм 16
3.2 Разветвляющийся алгоритм 16
3.3 Циклический алгоритм 17
Методические указания по выполнению
домашней контрольной работы 19
Методические указания по выполнению задания № 2 19
4.2 Методические указания по выполнению задания № 3 24
5 Задания для контрольной работы 30
6 Экзаменационные теоретические вопросы по дисциплине
теория алгоритмов 34
Список использованных источников 36
Введение
В настоящее время компьютер является важнейшим средством для решения инженерных, научных и управленческих задач, которые характеризуются ярко выраженной практической направленностью и значительным объёмом выполняемой вычислительной работы. Как правило, инженерные задачи решают специалисты, имеющие техническое образование, но не являющиеся профессиональными программистами. Поэтому знание базовых принципов алгоритмизации и основ программирования необходимо для современного специалиста в области информатики и вычислительной техники.
Учебная дисциплина «Теория алгоритмов» является общепрофессиональной, формирующей базовый уровень знаний для освоения других общепрофессиональных дисциплин и профессиональных модулей. Основная цель учебной дисциплины «Теория алгоритмов» состоит в освоении основ структурной методики программирования.
В результате изучения дисциплины студент д о л ж е н:
уметь:
разрабатывать алгоритмы для конкретных задач;
определять сложность работы алгоритмов;
знать:
основные модели алгоритмов;
методы построения алгоритмов;
методы вычисления сложности работы алгоритмов.
Для успешного выполнения контрольной работы студент должен самостоятельно изучить соответствующий теоретический материал и ознакомиться с решением типовых задач, приведенных в настоящем пособии. Контрольная работа составлена так, что если студент выполняет её самостоятельно, то подготовка его к экзамену займет небольшое время.
Работа должна быть оформлена аккуратно. План ответа: условие вопроса №1 (полностью)- развёрнутый ответ на вопрос, условие задачи №2 (полностью)- её решение, согласно принципам алгоритмизации; условие задачи №3 (полностью)- её решение, согласно принципам алгоритмизации. После решения последней задачи приводится список использованной литературы с указанием издательства и года издания, личная подпись и дата выполнения работы. Работа высылается на рецензирование в соответствии с учебным графиком. После получения зачтенной работы студент должен внести исправления в соответствии с рецензией и показать их преподавателю во время экзаменационной сессии до экзамена. Если работа не зачтена, то в этой же работе должны быть заново решены задачи, указанные рецензентом; затем работа высылается для повторного рецензирования.
1 Понятие алгоритма
Компьютер может выполнять и решать задачи только в том случае, если ему предписана точная последовательность действий. Подобные задачи встречаются и в жизни, когда к выполнению какой – либо работы требуется привлечь человека, который не умеет ее выполнять.
Алгоритм – это центральное понятие информатики. Составление такого описания обычно очень сложный процесс, но следуя ему, исполнитель механически исполняет все в требовательном порядке и всегда решит правильно задачу. Например, алгоритмами являются правила умножения и деления.
Алгоритм – это точная последовательность действий, ведущая от варьируемых исходных данных к требуемому результату.
Любой применимый алгоритм обладает следующими основными свойствами:
результативность – возможностью получения результата после выполнения конечного количества операций;
определенность – каждая команда должна быть понятна исполнителю, исключено неоднозначное толкование и неопределенность действий;
массовость – возможность применения алгоритма к целому классу однотипных задач, различающихся конкретными значениями исходных данных;
дискретность – выполнение алгоритма разбивается на последовательность законченных шагов, каждое действие должно быть закончено прежде, чем наступит следующее действие.
В зависимости от цели составления алгоритма могут использоваться разные способы его описания. Например, словесно – формульное описание, графическое описание, описание на алгоритмическом языке.
В словесно – формульном описании каждый шаг нумеруется и записывается в виде текста с формулами. Такой способ менее всего формализован и чаще всего используется, например, при записи различного рода инструкций, предписаний.
Например, составим алгоритм по предложенному условию задачи: «Если стаж работника менее 5 лет, то заработная плата составляет 200 ед., при стаже от 5 до 15 лет 250 ед. При стаже свыше15 лет, с каждым годом заработная плата повышается на 10 ед.»
Решение.
Исходные данные: СТ - стаж
Результат: ЗП - заработная плата
Выбор метода:
Проанализируем условие задачи:
ЗП=
Словесно – формульном описании:
п.1 Ввести СТ и перейти к п.2
п.2 Если СТ<5, то ЗП=200 и перейти к п.5,
иначе перейти к п.3
п.3 Если СТ≤15, то ЗП=250 и перейти к п.5,
иначе перейти к п.4
п.4 Вычислить ЗП=250+(СТ-15)10 и перейти к п.5
п.5 Вывести ЗП и перейти к п.6
п.6 Прекратить вычисления.
Описание на алгоритмическом языке – это способ записи алгоритма в аналитическом виде на промежуточном языке между естественным и языком компьютера. Отличие от словесно – формульного описания состоит в том, что описание носит более строгий вид и используется особый набор терминов.
Например,
алг Зарплата (цел. СТ, вещ. ЗП)
арг СТ
результат ЗП
нач
ввести СТ
если СТ<5
то ЗП = 200
иначе
если СТ≤15
то ЗП = 250
иначе ЗП = 250=(СТ-15)*10
все
все
вывести СТ
кон
Графическое описание является наиболее наглядным способом из рассмотренных способов описаний. При данном описании алгоритм изображается геометрическими фигурами (блоками), связанными по управлению линиями. Внутри блока дается описание соответствующего действия.
Например,
Рисунок 1 - Графическое описание алгоритма