Алгоритмизация линейного, разветвляющегося и
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
к лабораторным и самостоятельной работам
по дисциплине
«АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ»
(для студентов специальности 6.050101)
У т в е р ж д е н о
на заседании кафедры
компьютерных информа-
ционных технологий.
Протокол № от . .13г.
Краматорск 2013
УДК 681.31:001.8
Методические указания к лабораторным и самостоятельной работам по дисциплине ”Алгоритмизация и программирование” (для студентов специальности 6.050101)/Сост.: О.В.Веремей -Краматорск: ДГМА, 2013. - 95 с.
Методическая разработка состоит из двух частей. Часть 1 содержит основные типы задач, позволяющих самостоятельно освоить приемы и методы алгоритмизации, получить навыки в составлении блок-схем. Часть 2 содержит описание пятнадцати лабораторных работ, позволяющее получить навыки составления и отладки программ на языке СИ. Также даны краткие теоретические сведения, позволяющие самостоятельно подготовиться к выполнению приведенных работ.
Задания расположены в порядке возрастания сложности. Большое количество вариантов для индивидуальной работы позволит вовлечь всех студентов в процесс активного изучения материала.
Составители О.В.Веремей, ст.препод.,
Отв. за выпуск А.Ф.Тарасов, проф.
С О Д Е Р Ж А Н И Е
Часть 1.Понятие алгоритма и принципы алгоритмизации 4
Основные принципы разработки алгоритмов и программ. . . . . . 4
Лабораторная работа 1 Алгоритмизация линейного, разветвляющегося
и циклического вычислительного процесса 6
Лабораторная работа 2 Селективная обработка массивов 12
Лабораторная работа 3 Вложенные циклы. Обработка двумерных
массивов 21
Часть 2. Составление и отладка программы. Вычисление и
обработка результатов 32
Лабораторная работа № 4 Изучение интегрированной среды С 33
Лабораторная работа 5. Операторы присваивания, ввода, вывода.
Программирование линейного вычислительного процесса . . . . . 34
Лабораторная работа 6. Разветвляющийся вычислительный процесс с
различными логическими условиями: оператор if... else, условная
операция (?:).. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Лабораторная работа 7. Программирование циклического
вычислительного процесса.. . . . . . . . . . . . . . 50
Лабораторная работа 8. Оператор switch, оператор break, оператор
goto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Лабораторная работа 9. Операции С, их приоритеты и
использование.Преобразование типов. . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Лабораторная работа 10. Массивы.. Селективная обработка массивов. . 69
Лабораторная работа 11. Формирование рабочих массивов
с помощью операции селекции исходного массива. . . . . . . . . . . . 73
Лабораторная работа 12. Сортировка одномерных массивов. . . . . . . . . 78
Лабораторная работа 13Многомерные массивы. . . . . . . . . . . . . . . 82
Лабораторная работа 14 Вложенные циклы. Многомерные массивы. 86
Лабораторная работа 15. Изучение графических средств С . . . . . . . . 88
Список рекомендуемой литературы. . . . . . . . . . . . . . . . . . . . . . . . 94
ЧАСТЬ 1.ПОНЯТИЕ АЛГОРИТМА И ПРИНЦИПЫ АЛГОРИТМИЗАЦИИ
Порядок выполнения лабораторных работ
1 Выучите теоретический материал к лабораторной работе.
2 Ознакомьтесь с примерами блок-схем.
3 Составьте блок-схему по указанному варианту.
4 Оформите отчет о выполненной работе.
Содержание отчета
Отчет должен содержать:
1) цель работы;
2) условие задачи;
3) блок-схему алгоритма решения задачи;
4) короткие выводы из работы.
Основные принципы разработки алгоритмов
И программ
Решение любой задачи на ЭВМ состоит из нескольких этапов, среди которых основными являются следующие: 1) постановка задачи; 2) формализация (математическая постановка задачи); 3) выбор (или разработка) метода решения; 4) разработка алгоритма (алгоритмизация); 5) составление программы (программирование); 6) отладка программы; 7) вычисление и обработка результатов.
При постановке задачи первостепенное внимание должно быть уделено выяснению конечной цели и выработке общего подхода к исследуемой проблеме; изучению общих свойств рассматриваемого физического явления или объекта; анализу возможностей конкретной ЭВМ и данной системы программирования. Правильно сформулировать задачу иногда не менее сложно, чем ее решить.
Формализация, как правило, сводится к построению математической модели рассматриваемого явления, когда в результате анализа существа задачи определяются объем и специфика исходных данных, вводится система условных обозначений, устанавливается принадлежность решаемой задачи к одному из известных классов задач и выбирается соответствующий математический аппарат.
Разработка алгоритма заключается в разложении вычислительного процесса на возможные составные части, установлении порядка их следования. В практике программирования широкое распространение получили схемы алгоритмов. Схема - это последовательность блоков, предписывающих выполнение определенных функций, и связей между ними. Внутри блоков дается информация, характеризующая выполняемые ими действия. Некоторые, наиболее часто употребляемые блоки и пояснения к ним приведены в таблице 1. Алгоритм синтезируется из типовых структурных блоков. По характеру связей между блоками, т.е. по структуре, алгоритмы делятся на линейные, разветвляющиеся и циклические.
Таблица 1 - Условные графические обозначения, применяемые при составлении блок-схем
Название символа | Символ | Отображаемая функция |
1 Блок вычислений | Вычислительное действие или последовательность вычислительных действий | |
2 Логический блок | Выбор направления выполнения алгоритма в зависимости от некоторых условий (условия) | |
3 Ввод-вывод | Общее обозначение ввода или вывода данных (вне зависимости от физического носителя) | |
4 Начало-конец | Начало или конец программы, останов, вход или выход в подпрограммах | |
5 Предопределенный процесс (подпрограмма) | Вычисления по стандартной подпрограмме или подпрограмме пользователя | |
6 Блок модификации (заголо-вок цикла) | Выполнение действий, изменяющих пункты алгоритма | |
7 Межстраничный соединитель | Указание связи между частями схемы, расположенными на разных листах |
Лабораторная работа 1
АЛГОРИТМИЗАЦИЯ ЛИНЕЙНОГО, РАЗВЕТВЛЯЮЩЕГОСЯ И