- •Информатика
- •Введение
- •Лабораторная работа № 12 рекурсивные алгоритмы. Создание рекурсивной функций
- •Лабораторная работа № 13 обработка текстовых файлов
- •Подготовка к лабораторной работе
- •Лабораторная работа № 14 создание и обработка бинарных файлов
- •Лабораторная работа № 15 динамические структуры данных стеки и очереди
- •Лабораторная работа № 16 динамические структуры данных списки
- •Лабораторная работа № 17 операции над бинарными деревьями
- •Лабораторная работа № 18
Федеральное агентство связи
О.И.Моренкова
Л.Ф.Лебеденко
Т.И.Парначева
Информатика
программирование на языке С++
Методические указания
к лабораторным работам
Часть 2
Новосибирск
2012
Федеральное агентство связи
Федеральное государственное образовательное бюджетное
учреждение высшего профессионального образования
"Сибирский государственный университет
телекоммуникаций и информатики"
О.И. Моренкова
Л.Ф. Лебеденко
Т.И. Парначева
информатика
программирование на языке с++
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
к лабораторным работам
Часть 2
Новосибирск
2012
УДК
О.И. Моренкова, Л.Ф.Лебеденко, Т.И. Парначева
В методических указаниях описан цикл лабораторных работ по дисциплине «Информатика» для специальностей 230100 и 210700 подготовки бакалавров, а также подготовки специалистов по направлению 090302 . Учебные материалы указаний будут полезны студентам и магистрантам соответствующих специальностей очного, заочного и дистанционного обучения для приобретения профессиональных навыков работы с современными языками программирования
Лабораторные работы ориентированы на работу в среде Visual Studio.
Кафедра телекоммуникационных средств и вычислительных систем
Таблиц - 5, литературы - 3.
Рецензент – к.т.н., доцент Е.В.Кокорева
Утверждено редакционно-издательским советом СибГУТИ в качестве методических указаний.
© Сибирский государственный университет
телекоммуникаций и информатики, 2013
Введение
Настоящие методические указания предназначены для использования в процессе лабораторного практикума по дисциплине «Информатика» студентами специальностей 230100 и 210700 подготовки бакалавров, а также подготовки специалистов по направлению 090302.
В ходе выполнения лабораторных работ студенты должны приобрести теоретические знания в области программирования и навыки разработки несложного программного обеспечения на конкретном алгоритмическом языке. В процессе решения задач студенты должны правильно выбирать и описывать типы данных, изучить синтаксис и правильно использовать операторы алгоритмического языка, освоить работу с такими структурами данных, как массивы, разрабатывать программы с использованием базовых вычислительных структур.
В данном руководстве предлагается 12лабораторных работ, посвященных изучению базовых конструкций языка Си (условия, циклы и функции) и способов хранения и обработки данных (массивы, структуры, рекурсия).
Лабораторная работа № 12 рекурсивные алгоритмы. Создание рекурсивной функций
Цель работы: Приобрести навыки разработки несложных рекурсивных функций. Закрепление конструкций базовой структуры цикл.
Подготовка к лабораторной работе
Повторить особенности организации конечного цикла.
Изучить следующие вопросы и понятия:
понятие рекурсии, рекурсивного алгоритма, взаимосвязь понятий итерации и рекурсии;
организацию конечных и итерационных алгоритмов на примерах расчета суммы конечного и бесконечного ряда.
Изучить разделы учебного пособия «ОСНОВЫ ПРОГРАММИРОВАНИЯ НА С++», стр. 104-105.
В соответствии с вариантом задания составить схему рекурсивного алгоритма.
Составить программу на алгоритмическом языке по разработанной схеме алгоритма.
Порядок выполнения работы
Проверить правильность выполнения домашнего задания у преподавателя и получить допуск к работе.
Ввести текст программы.
Провести откладку программы.
Выполнить программу, провести анализ результатов и убедившись в правильности решения предъявить их преподавателю.
Содержание отчета
Задание к лабораторной работе.
Схема рекурсивного алгоритма и программа на алгоритмическом языке.
Результат отчета.
Показать отчет преподавателю.
Контрольные вопросы
Что такое рекурсия, рекурсивный алгоритм? Примеры применения рекурсивных алгоритмов.
Взаимосвязь понятий итерации и рекурсии, итерационного и рекурсивного алгоритмов.
Как средствами алгоритмического языка организовать итерационный цикл?
Задание к лабораторной работе
Написать программу и рекурсивную функцию для вычисления значения суммы бесконечного ряда с заданной точностью. На печать вывести значение суммы и число членов ряда, вошедших в сумму. Вычислить значение ряда, используя заданную формулу или воспользовавшись библиотечной функцией. Сравнить полученные результаты (они должны быть достаточно близки).
Варианты заданий: