Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Программирование на языке высокого уровня. Лабораторный практикум

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО
ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное
образовательное учреждение высшего образования
«Воронежский государственный технический
университет»
ПРОГРАММИРОВАНИЕ
НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ
Лабораторный практикум
Воронеж 2021
УДК 681.3.06(07)
Гребенникова, Н. И.
ISBN
978-5-7731-0946-4
ББК 32.973-018я7 Г79
Рецензенты:
кафедра вычислительной техники и информационных систем
Воронежского государственного лесотехнического
университета имени Г. Ф. Морозова
(зав. кафедрой канд. техн. наук, доц. Е. А. Аникеев);
д-р техн. наук, проф. А. М. Литвиненко
Г79
С++, а также приведены задания для разработки программ.
и вычислительная техника» (профили «Вычислительные машины, комплексы, системы и сети», «Системы автоматизированного проектирования», «Программное обеспечение автоматизированных систем») очной и заочной форм обучения при изучении дисциплины «Программирование на языке высокого уровня».
Программирование на языке высокого уровня: лабораторный практикум [Электронный ресурс]. - Электрон, текстовые и граф. данные ( Мб) / Н. И. Гребенникова, М. Ю. Сергеев, Т. И. Сергеева.
- ФГБОУ ВО «Воронежский государственный технический универ­ситет», 2021. - 1 электрон. опт. диск (CD-ROM): цв. - Систем. требования: ПК 500 и выше; 256 Мб ОЗУ; Windows 7; SVGA с разрешением 1024x768;. Adobe Acrobat; CD-ROM дисковод; мышь.
- Загл. с экрана.
ISBN 978-5-7731-0946-4 Рассматриваются основные приемы программирования на языке
Предназначено для студентов направления 09.03.01 «Информатика
Ил. 20. Табл. 12. Библиогр.: 9 назв.
Издается по решению редакционно-издательского совета
Воронежского государственного технического университета
УДК 681.3.06(07) ББК 32.973-018я7
 Гребенникова Н. И., Сергеев М. Ю., Сергеева Т. И., 2021
ФГБОУ ВО «Воронежский государственный технический
университет», 2021
2
ВВЕДЕНИЕ
В лабораторном практикуме рассматриваются основы алгоритмизации вычислительных задач, базовые средства и конструкции языка C++, работа с массивами, матрицами, строками и структурами.
Первая часть практикума касается основ алгоритмизации вычислительных задач, рассматривает формы представления алгоритмов и базовые алгоритмические структуры.
Вторая часть предоставляет справочную информацию по программированию на языке C++.
В третьей части содержатся задания для лабораторной работы, посвященной программной реализации линейных и разветвляющихся вычислений.
Четвертая и пятая части практикума приводят теорети­ческие сведения и практические задания по программирова­нию задач, обрабатывающих массивы.
Шестая и седьмая части практикума содержат описание программирования с применением строковых данных и струк­тур данных и практические задания на программирование.
Восьмая часть практикума приводит краткую инструк­цию по отладке и решению программ в консольном режиме в среде Visual Studio.
Материалы практикума необходимы для организации лабораторных работ по дисциплине «Программирование на языке высокого уровня». Теоретические сведения и практиче­ские задания могут быть применимы при выполнении курсо­вого проектирования по данной дисциплине.
Издание соответствует типовой программе по дисцип­лине «Программирование на языке высокого уровня» и пред­назначено для студентов бакалавриата направления подготов­ки 09.03.01 «Информатика и вычислительная техника» очной и заочной форм обучения.
3
1. ОСНОВЫ АЛГОРИТМИЗАЦИИ ВЫЧИСЛИТЕЛЬНЫХ ЗАДАЧ
1.1. Формы представления алгоритмов
Разработка программных систем в современной инстру­ментальной среде требует соответствующих теоретических знаний в области программирования и наличия практических навыков проектирования, разработки и отладки программных систем.
Программная система – это совокупность программ определенного назначения, пригодных для выполнения на компьютере, прошедших испытания с зафиксированными по­казателями, снабженных комплектом документации, доста­точным для правильной эксплуатации этих программ [1].
Программное обеспечение (ПО) – совокупность про­грамм определенного назначения и необходимых для их экс­плуатации документов. Будем считать, что программная сис­тема, или программное обеспечение, или программное сред­ство – это эквивалентные понятия.
Программа – это любой текст на языке программирова­ния, пригодный для выполнения на компьютере [1].
Программа состоит из последовательности команд (опе­раторов), реализующих алгоритм решения конкретной задачи.
Алгоритм – конечная последовательность предписаний, однозначно определяющая процесс преобразования исходных и промежуточных данных в результат решения задачи [1].
Алгоритм дает точное описание способа решения зада­чи, устанавливающее необходимые входные данные для ре­шения задачи, состав действий и последовательность их вы­полнения, описание выходных результатов.
Существуют две основные формы представления ал- горитмов: словесная; графическая.
4
Словесная форма представления алгоритма использует-
b
ся для укрупненного и упрощенного описания решения зада­чи. Словесная форма может применяться для описания задач с линейной структурой или с упрощенной разветвляющейся или циклической структурой [1].
Графическая форма представления алгоритмов являет­ся более компактной и наглядной. Алгоритм изображается в виде последовательности связанных между собой блоков, ка­ждый из которых соответствует определенному типовому действию [1]. Такое графическое представление называется структурной схемой алгоритма.
Условные графические обозначения типовых действий (блоки) стандартизированы. Наиболее часто используемые блоки приведены в табл. 1 [1].
Отдельные блоки алгоритмов соединяются между собой линиями. Линии, идущие сверху вниз и слева направо без из­ломов, стрелками не обозначаются. Остальные линии должны иметь стрелку.
Таблица 1
Блоки структурной схемы
Процесс (вычисле­ния)
Предопре­деленный процесс (подпро­грамма)
0.15a
b
а
а
5
Решение (проверка условия)
Ввод­вывод
a
b
a
b 0.25a
Соедини-
0.5a
тельные линии
Модифи­кация (начало цикла)
Окончание табл. 1
a
а
b
Начало­конец
Коммен­тарии
a
b
0.5a Внутри­странич­ный со­единитель
0.5a
Меж­странич­ный со­едини-
0.5a
0.5a
тель
Примечание. Значение a принимается из ряда чисел 10;
15; 20… мм; b = 1,5 a.
Представление алгоритма в виде структурной схемы яв­ляется промежуточным, так как алгоритм в таком виде не мо­жет быть непосредственно выполнен ЭВМ. Составление структурной схемы алгоритма является важным и в большин­стве случаев необходимым этапом решения задачи на ЭВМ, значительно облегчающим процесс составления программ.
Алгоритм, записанный на языке программирования, на­зывается программой.
1.2. Базовые алгоритмические структуры
Базовые алгоритмические структуры, применяемые при программировании, следующие:
6
– линейные структуры (следование);
– разветвляющиеся структуры (разделение на ветки);
– циклические структуры (повторение).
В линейной структуре операторы выполняются в той последовательности, в которой они записаны.
Под оператором понимается формальная запись неко­торого типового действия.
В разветвляющейся структуре происходит разветвле­ние выполняемой последовательности действий в зависимо­сти от результатов проверки некоторого условия.
Циклическая структура – это многократное выполне­ние одинаковой последовательности действий (операторов).
Схемы алгоритмов. Любой вычислительный процесс можно наглядно представить в структурной схемы алгоритма. Как правило, алгоритмы строятся с применением трех основ­ных конструкций, которые получили название базовых [1]:
– следование; обозначает последовательное выполнение действий (рис. 1);
– ветвление; соответствует выбору одного из двух ва­риантов действий (рис. 2);
– цикл с предусловием; определяет повторение дейст­вий, пока не будет нарушено некоторое условие, выполнение которого проверяется в начале цикла (рис. 3).
На рис. 1 приведена структурная схема реализации сле­дования, которую называют ещё линейной структурой.
Рис. 1. Структурная схема реализации следования
Действие 1
Действие 2
Действие 3
7
На рис. 2 приведена структурная схема реализации ветв-
Дейс
т
вие
3
ления. Если условие выполняется, то выполняют действие 1, затем действие 3. Если условие не выполнено, то выполняют действие 2, затем действие 3.
Рис. 2. Структурная схема реализации ветвления
Рис. 3. Структурная схема реализации цикла с предусловием
Да
Действие 1
Да
Усло-
Действие 3
Действие 1
Действие 2
Усло-
Нет
Действие 2
Нет
8
На рис. 3 показано, что если условие выполняется, то
Действие 1
Действие 3
Код
1
Код
2 Иначе
выполняются действия 1 и 2. Затем происходит возврат на на­чало цикла и условие проверяется снова. Если условие не вы­полняется, то выполняется действие 3.
Кроме базовых конструкций, процедурные языки про­граммирования высокого уровня обычно используют еще три конструкции, которые можно составить из базовых конструк­ций [1]:
- выбор; обозначает выбор одного варианта из не-
скольких в зависимости от значения некоторой величины;
- цикл с постусловием; обозначает повторение неко­торых действий до выполнения заданного условия, проверка которого осуществляется после выполнения действий в цикле;
– цикл с заданным числом повторений (цикл с пара-
метром).
Перечисленные шесть конструкций были положены в
основу структурного программирования.
На рис. 4 приведена структура алгоритма выбора. Если переменная «Код» равна переменной «Код 1», то выполняется действие 1. Если переменная «Код» равна переменной «Код 2», то выполняется действие 2. В противном случае выполня­ется действие 3.
Рис. 4. Структура алгоритма выбора
Код
Действие 2
9
На рис. 5 приведена структура цикла с постусловием.
Да
Сначала выполняются действия 1 и 2. Затем осуществляется проверка условия. Если условие не выполнено, то происходит повтор действий 1 и 2. Если условие выполнено, то цикл пре­кращается и выполняется действие 3. Действия 1 и 2 образуют цикл. В общем случае в цикле может выполняться одно или более действий.
Действие 1
На рис. 6 приведена структура цикла с заданным числом повторений. N1 – это начальное значение параметра I. N2 – это последнее значение параметра I. H – это шаг изменения параметра I.
Первоначально параметр цикла I принимает значение N1. Повторяются действия 1 и 2, которые в данном примере образуют цикл.
Нет
Рис. 5. Структура цикла с постусловием
Действие 2
Условие
Действие 3
10
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]