Название: Методы программирования - Методические указания (В.П. Хиценко)

Жанр: Информатика

Просмотров: 1167


Аннотация

Министерство образования Российской Федерации

 

НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

 

 

 

51                                                                                                             № 2391

М 545

 

МЕТОДЫ

ПРОГРАММИРОВАНИЯ

 

Методические указания

к лабораторным работам для студентов I курса ФПМиИ

(направление 510200 – Прикладная математика

и информатика) дневного отделения

 

Новосибирск

2002

УДК 519.68(076.5)

М 545

 

Составители: В.П. Хиценко, ст. преп.,

 

Рецензент Т.А. Шапошникова, ст. преп.

 

Работа подготовлена на кафедре прикладной математики

 

©   Новосибирский государственный

          технический университет, 2002 г.

 

Введение

 

Цели лабораторных работ:

– формирование практических навыков программирования и работы в современных вычислительных системах;

– овладение одним из алгоритмических языков высокого уровня (в данном лабораторном практикуме – языком Си/Си++).

Основная концепция, заложенная в лабораторных работах, – это движение от простейших алгоритмов, управляющих структур, типов данных к более сложным алгоритмам, управляющим структурам, типам данных.

Методические указания к лабораторным работам являются ориентиром в самостоятельной подготовке студентов по теме работы и содержат требования, рекомендации, контрольные вопросы, задания по теме работы.

Выполнение лабораторной работы включает следующие этапы:

1. Допуск к работе. На этом этапе преподаватель проверяет подготовленность студента по теме работы, задавая контрольные вопросы или контрольные упражнения.

2. Проектирование и реализация программы решения задачи (вариант выдает преподаватель после успешного выполнения п. 1):

– разработка и описание алгоритма поставленной задачи,

– написание программы в соответствии с требованиями к лабораторной работе,

– трансляция и отладка программы на тестовых примерах (набор тестов подбирает студент).

3. Защита лабораторной работы. К защите студент должен подготовить отчет по работе, продемонстрировать работу программы на тестовых примерах. Защита состоит в обсуждении алгоритма и программы, ответе на контрольные вопросы, решении контрольных примеров.

 

Отчет по лабораторной работе включает следующие разделы:

1. Условие задачи.

2. Анализ задачи.

3. Алгоритм решения задачи.

4. Текст программы.

5. Набор тестов.

6. Результаты работы программы.

Анализ задачи необходим для достижения следующих целей:

– установить, что является исходными данными и результатами решения задачи;

– выделить основные отношения между входными и выходными данными (если возможно описать их на языке математики);

– выделить основные подзадачи, которые надо решить, чтобы достичь результата.

На основании этого определяется подход к разработке алгоритма решения задачи (т.е. метод ее решения), который позволяет в самом общем виде сформулировать, что должен делать алгоритм, чтобы преобразовать исходные данные в результат.

Как правило, в условии задачи нет каких-либо ограничений на размер и тип исходных данных, поэтому необходимо определить класс входных данных, которые должны обрабатываться алгоритмом. Например, входными данными является матрица. В этом случае необходимо задать максимально допустимое число строк и максимально допустимое число столбцов. При этом студент должен не сужать, а максимально расширять класс входных данных, чтобы разработать наиболее универсальную программу.

Алгоритм решения задачи – это не программа ее решения, а способ дать человеку (а не машине) представление о структуре алгоритма, о смысле его шагов и их логической взаимосвязи. Поэтому шаги алгоритма должны описываться в терминах тех объектов и отношений между ними, о которых идет речь в условии задачи (это, конечно, не исключает использования математической и другой условной символики).

Структура алгоритма станет более ясной, если ее описывать в наглядной и достаточно формализованной (напоминающей конструкции языка программирования) форме. Поэтому требуемой формой описания алгоритма в данном лабораторном практикуме является либо графическое представление алгоритма  на языке блок-схем, либо на специальном языке описания алгоритмов, например школьном алгоритмическом языке.

Пример. По заданному целому X сформировать матрицу A размера 10x10 следующим образом:

        

 

Описание алгоритма на псевдоязыке:

begin

         {ввод заданного числа X};

         {Заполнить 1-ю строку матрицы A};

         for i := 2 to 10 do

                         begin

                         {заполнить первые девять элементов

                         i-й строки, взяв их из (i-1) строки};

                         {заполнить последний элемент i-й строки};

         end

end.

Если необходимо, нужно продолжить описание, детализируя отдельные шаги.

Лабораторная работа № 1

Тема. Программирование ветвлений. Простые скалярные типы данных.

Цель. Сформировать практические навыки программирования простейших задач, в основе решения которых лежат фундаментальные структуры такие как последовательность и ветвления и скалярные типы данных.