МЕТОДИЧЕСКИЕ УКАЗАНИЯ
к лабораторным и самостоятельной работам
по дисциплине
«АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ»
(для студентов специальности 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
АЛГОРИТМИЗАЦИЯ ЛИНЕЙНОГО, РАЗВЕТВЛЯЮЩЕГОСЯ И