Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ к курсовой работе Информатика ФВЗО.doc
Скачиваний:
8
Добавлен:
31.05.2015
Размер:
314.37 Кб
Скачать

3. Методические указания по выполнению курсовой работы

3.1 Общие требования

Курсовая работа выполняется на тему: «Разработка алгоритмов различной структуры».

Курсовая работа должна быть выполнена в соответствии с заданием и представлена пояснительной запиской (РПЗ) и электронным вариантом КР и действующей программой на дискете (диске).

Структура пояснительной записки и ее объем должны быть такими, чтобы полностью раскрыть все разделы задания на курсовую работу. Содержание курсовой работы - 28-36 страниц текста формата А4:

Введение– 1-2 стр.

Первая глава– 8-10 стр.

Вторая глава – 10-12 стр.

Заключение – 1-2 стр.

Содержание каждой курсовой работы определяется самой темой, ее спецификой. Введение содержит обоснование актуальности темы работы и основные ее характеристики (проблема, объект, предмет цель, задачи и методы исследования. Для обоснования актуальности покажите значимость выделенной проблемы по информатике и необходимость ее решения.

Проблема отвечает на вопрос: что надо изучить из того, что ранее не было изучено?

Объект исследования – что рассматривается?

Предмет исследования – какие новые отношения, свойства, аспекты, функции обучения раскрывает данное исследование?

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

Задачи – что нужно сделать, чтобы цель была достигнута?

В теоретической части студент проводит научно-методический анализ тех понятий и тем курса информатики, которым посвящена его работа. В методической части может проводиться анализ учебной программы, учебного пособия, методической литературы, освещается состояние разрабатываемой проблемы в науке и практике обучения, а так же выявляются трудности, встречающиеся при изучении того или иного понятия, вопроса, темы.

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

В заключении подводятся итоги работы, делаются общие выводы, указывается их значимость для автора работы, возможность внедрения и дальнейшие перспективы исследования темы. Важнейшее требование к заключению – его краткость и обстоятельность; в нем не следует повторять содержание введения и основной части работы. В целом заключение должно дать ответ на вопросы: Зачем предпринято данное исследование? Что сделано? К каким выводам пришел автор?

Приложения оформляются на отдельных листах, причем каждое из них должно иметь свой тематический заголовок и в правом верхнем углу надпись «Приложение» с указанием его порядкового номера (если их несколько).

3.2 Методические рекомендации

Решение задач с помощью компьютера включает в себя этапы, часть из которых осуществляется без участия компьютера.

Курсовая работа включает:

1. Постановка задачи:

- сбор информации о задаче;

- формулировка условия задачи;

- определение конечных целей решения задачи;

- определение формы выдачи результатов;

- описание данных (их типов, диапазонов величин, структуры и т.п.).

2. Анализ и исследование задачи, модели:

- анализ существующих аналогов;

- анализ технических и программных средств;

- разработка математической модели;

- разработка структур данных.

3. Разработка алгоритма:

- выбор метода проектирования алгоритма;

- выбор формы записи алгоритма (словесный, блок-схемы, псевдокод);

- выбор тестов и метода тестирования;

- проектирование алгоритма.

4. Анализ результатов решения задачи и уточнение в случае необходимости математической модели.

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

Предпрограммная подготовка задачи

Решение задач средствами компьютерной техники требует предпрограммной подготовки, предусматривающей последовательное выполнение следующих этапов:

- постановка задачи;

- формирование математической модели задачи;

- выбор численного метода решения;

- разработка алгоритма решения.

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

Постановка задачи должна отвечать следующим требованиям:

- четкая формулировка цели с указанием вида и характеристик конечных результатов;

- представление значений и размерностей исходных данных;

- определение всех возможных вариантов решения, условий выбора каждого;

- обозначения границы применимости и действия в случае выхода за них.

Формирование математической модели задачи- этап перевода словесной постановки задачи в совокупность математических зависимостей, описывающих исходные данные и вычисления промежуточных и конечных результатов.

Полученная математическая модель должна отвечать следующим требованиям:

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

- в модели исходных данных не изменяются размерности данных и не используются никакие математические операции;

- обозначение всех входящих в зависимости величин именами, определяющими их суть;

- указание размерностей всех используемых величин для контроля и дальнейшей модернизации решения;

- представление математических зависимостей в общем виде для повышения универсальности решения.

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

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

Алгоритм должен удовлетворять свойствам:

- однозначности - единственность толкования правил выполнения действий и порядка их выполнения;

- дискретности - возможность разбиения алгоритма на отдельные элементарные действия, выполнение которых человеком или машиной не вызывает сомнения;

- массовости - возможность их применения для решения целого класса конкретных задач, отвечающих общей постановки задачи;

- конечности - завершение работы алгоритма в целом за конечное число шагов;

- результативности - существование результата выполнения алгоритма.

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

Для графического представления алгоритма используют определенные геометрические фигуры. Размеры и соотношения размеров фигур приводятся в ГОСТ 19–002–80 и ГОСТ 19–003–80. Согласно им все размеры связаны с двумя величинами: a и b, где a – величина, кратная 5, а b вычисляется по формуле b=1,5a, допускается b=2a.

Рассмотрим предпрограммную подготовку типовых вычислительных, задач на конкретных примерах. К типовым относятся: линейные, ветвящиеся (разветвляющиеся) и циклические алгоритмы.

Линейные вычислительные процессы

Линейным называется вычислительный процесс последовательного однократного выполнения всех запланированных участков вычислений.

Рассмотрим предпрограммную подготовку задачи этого класса на конкретном примере.

Пример 1. Разработать алгоритм вычисления функции вида: .

Этап 1. Математическое описание решения задачи. Оно представлено в условии задачи.

Этап 2. Определение входных и выходных данных.

Следуя математическому описанию, входными данными является аргумент функции x, выходными данными (результатом вычислений) – значение функции y.

Этап 3. Разработка алгоритма решения.

Анализ математической модели решения задачи позволяет сделать вывод, что решение сводится к последовательному однократному вычислению по математически сформулированным зависимостям, каждая из которых содержит только стандартные математические операции, следовательно, метод решения - линейный вычислительный процесс.

Учитывая общие рекомендации, представим алгоритм выполнения такой последовательности действий (шагов) в словесной форме:

  • Начало алгоритма.

  • Ввод значения x.

  • Обработка данных – вычисление значения y по формуле: .

  • Вывод результата вычислений y.

  • Конец алгоритма.

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

Ветвящиеся вычислительные процессы

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

В зависимости от типа и числа проверяемых условий различают:

- ветвление с простым условием (условие - выражение отношения);

- ветвление с составным условием (условие - логическое выражение);

- сложное ветвление (несколько условий).

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

Ветвление с простым условием.

Постановка задачи. Разработать алгоритм нахождения действительных корней квадратного уравнения . Если действительных корней нет, то выдать соответствующее сообщение.

Математическое описание решения задачи. Из курса математики известно, что такое уравнение имеет два корня, которые вычисляются по формулам: ;, гдеx1 иx2– первый и второй корни уравнения соответственно;

– дискриминант уравнения. Уравнение имеет действительные корни, если дискриминант больше или равен 0 ();

Определение входных и выходных данных. Входными данными, являются коэффициенты уравнения a,b,c; выходными данными – значения корней уравнения или сообщение об отсутствии действительных корней. Для вычисления корней уравнения необходимо знать дискриминант уравнения.

Разработка алгоритма решения. На основании полученной математической модели и выбранного метода решения составим алгоритм, который представлен словесным описанием и своей блок-схемой. Введем обозначения:A,B,C– коэффициенты уравнения, соответствующиеa,bиc;X1,X2 – первый и второй корни уравнения;D– дискриминант уравнения.

Словесное описание алгоритма решения:

Начало алгоритма

  1. Ввод значений A, B, C.

  2. Вычисление дискриминанта .

  3. Если дискриминант , то перейти к шагу 5, иначе – к шагу 7.

  4. Вычисления значений корней: ;

  5. Вывод значений X1 иX2 на печать, переход к шагу 8.

  6. Вывод сообщения: ”Дискриминант уравнения меньше нуля”.

Конец алгоритма.

В разработанном алгоритме имеются две ветви: одну ветвь составляют шаги 5 и 6, а другую – шаг 7. выбор ветви определяется по значению дискриминанта на шаге 4. Здесь неравенство является условием, определяющим порядок выполнения шагов (ветвей) алгоритма.

Полученная схема, является классическим примером ветвящегося вычислительного процесса.

Ветвление с составными условиями

При необходимости одновременного выполнения нескольких операций отношения они объединяются в составное условие в виде логического выражения. Для этой цели используют логические операции:

- - логическое сложение (ИЛИ), дизъюнкция;

- - логическое умножение (И), конъюнкция;

- NOT - отрицание (не).

Циклические вычислительные процессы

Циклическим называется процесс многократного повторения некоторого участка вычислений при изменении хотя бы одной из входящих в него величин.

Повторяющийся участок вычисления называется циклом.Цикл организуют по определенным правилам. Циклический алгоритм состоит из подготовки цикла, тела цикла, условия продолжения цикла. В подготовку цикла входят действия, связанные с заданием исходных значений для параметра цикла (начальное и конечное значения, шаг параметра цикла). Иногда при подготовке цикла задаются начальные значения и другим величинам, использующимся в цикле.

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

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

При разработке алгоритма циклической структуры выделяют следующие понятия: параметр цикла – величина, с изменением которой связано многократное выполнение цикла; начальное и конечное значения параметров цикла; шаг цикла – значение, на которое изменяется параметр цикла при каждом повторении. Зависимость, связывающая текущее и предыдущее значения параметра цикла, определяет закон изменения параметра цикла.

Зависимость, предписывающая повторение цикла, либо выход из него, называется условием повторения цикла.

Все циклические процессы по признаку определения количества повторений разделяются на два класса.

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

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

Независимо от того, к какому классу относится вычислительный процесс, каждый из них содержит обязательные элементы:

  • вход в цикл (формирование начального значения параметра цикла);

  • вычисления в теле цикла (расчёт текущего значения функций, формирования нового значения параметра цикла, а также вспомогательные операции);

  • выход из цикла (проверка условия, определяющего повторение вычислений, либо их прекращение).

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

В соответствии с видом задания (изменения) параметра цикла арифметические циклы подразделяются на:

  1. циклы с аналитическим изменением параметра;

  2. циклы с табличным заданием параметра.

Выполнение арифметических циклов, т.е. многократное вычисление значений функции при изменяющихся значениях х аргумента, называется табуляцией функции.

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

При этом диапазон изменения параметра х задаётся начальным хн и конечным хк значениями. Математическая формулировка условия нахождения в диапазоне счёта зависит от числовых значений хн, хк и . При и положительных оно запишется как . При и отрицательном получим .

Сформулированные двойные неравенства позволяют выделить из них элементы цикла:

  1. начальное значение параметра (левая часть неравенства);

  2. условие повторения цикла (правая часть неравенств) при положительном или при отрицательном , не выполнение которого приводит к выходу из цикла.

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

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

3.3 Пример выполнения заданий курсовой работы

3.3.1Предпрограммная подготовка задач

Постановка задачи. Вычислить множество решений функции дляx, изменяющегося от –10 до 10 с шагом 2, приB=5.

Входные данные – начальное и конечное значения x, шаг измененияxи значение константыb.

Выходные данные – значение функции yдля различных значений аргументах.

Выбор метода решения

Анализ полученной математической формулировки позволяет сделать выводы:

  1. решение задачи требует многократного вычисления значения функции удля различных значений аргументах,следовательно, процесс является циклическим;

  2. диапазон изменения параметра цикла задан зависимостью , что позволяет сформулировать начальное значение параметра и условие повторения цикла , не выполнение которого приводит к выходу из него;

  3. закон изменения параметра цикла является аналитическим;

  4. количество повторений цикла N можно определить до начала счёта.

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

Составные части цикла.

Подготовка цикла: задание начального значения, конечного значения и шага изменения для параметра цикла х. Это можно сделать путем ввода соответствующих значений.

Тело цикла: организация вычисления очередного значения функции у; вывод текущего значения аргумента и вычисленного значения функции; подготовка (вычисление) значения параметра цикла для следующего повторения тела цикла – увеличение параметра цикла на величину шага.

Условие продолжения цикла: вычисление в теле цикла будут продолжаться, пока значение величины х(параметра цикла) не превысит конечное значение параметра цикла.

Введем обозначения: XN– начальное значениех;XK– конечное значениех;DX- шаг изменения величиных;X- текущее значениех;Y– значение функцииу;B– значение константыb.

Разработка алгоритма решения задачи. Возможны две методики составления алгоритма циклических процессов арифметического типа: с положительным приращением аргумента или с отрицательным.

Анализ представленных методик позволяет сделать выводы:

  • первый вариант выполняет формальное требование проверки всех текущих значений параметра цикла на соответствие диапазону счета;

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

  • по месту проведения проверки параметра цикла на соответствие диапазону изменения первый вариант формирует цикл с предусловием, второй - с постусловием.

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

Расчёт количества повторений N может быть осуществлён вне тела цикла в любом месте алгоритма.

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

Словесное описание алгоритма решения:

  1. Начало алгоритма.

  2. Ввод значений XN,XK,BиDX.

  3. Задание первого значения X:=XN.

  4. Вычисление значения Y:=X2+B.

  5. Вывод значений XиY.

  6. Изменение значения X:=X+DX.

  7. Если X≤XK, то перейти к шагу 4, иначе – к шагу 8.

  8. Конец алгоритма.

Подготовка цикла: блоки 2 и 3. Тело цикла: вычисление функции – блок 4; вывод значений – блок 5; подготовка следующего значения параметра цикла – блок 6. Условие продолжения цикла: блок 7.

3.3.2 Пример выполнения заданий в программе Microsoft Excel

ПРИМЕР 1. Рассмотрим основные этапы выполнения заданий на примере следующей таблицы.

Наименование товара

Стоимость 1 кг (руб.)

Продано за 1 полугодие прошлого года (т)

Продано за 1 полугодие текущего года (т)

Январь

Февраль

Март

Апрель

Май

Июнь

Сахар

1,2

40

5

7

10

11

12

20

Соль

0,25

7

0,5

0,8

0,75

1

0,9

1,2

Рис

1,4

38

6

5,6

5,7

6

5,9

4,2

Мука

0,8

52

12

8,3

15

11,3

9,6

5,3

Найти:

  • Среднее количество проданного товара каждого наименования за текущий год.

  • Выручку от продажи товара каждого наименования за текущий год и от продажи всех товаров за каждый месяц текущего года.

  • Общее количество проданных товаров за каждый месяц.

  • Минимальное и максимальное количество товаров за полугодие, количество максимальных продаж.

  • Вклад (в %) продажи сахара в общее количество проданного товара за предыдущее полугодие и каждый месяц текущего года.

1 этап: ввод исходных данных в MS Excel.

Рисунок 1 – Ввод данных

2 этап: вычисления.

При выполнении данного задания используются следующие функции:

1. Математические:

  1. СУММ - сумма аргументов

  2. ПРОИЗВЕД - произведение аргументов

  3. СУММПРОИЗВ - сумма произведений соответствующих массивов.

2. Статистические:

  1. СРЗНАЧ - среднее арифметическое аргументов

  2. МАКС - максимальное значение из списка аргументов

  3. МИН - минимальное значение из списка аргументов

  4. СЧЕТЕСЛИ - подсчитывает количество непустых ячеек в диапазоне, удовлетворяющих заданному условию.

На рисунке 2 приведены полученные результаты.

Рисунок 2 – Результаты

3 этап: сортировка данных:

  1. Сделать активной ячейку внутри таблицы.

  2. Выполнить команду Данные - Сортировка и в открывшемся окне указать по каким полям осуществлять сортировку и порядок сортировки (возрастание или убывание).

ПРИМЕР 2. Построение графика функции в программе MS Excel.

  1. Определение функции f(x).Для этого в ячейки А1:А21 вводим значение аргумента при помощи автозаполнения, в данном случае с шагом 0,5. В ячейку В1 вводится значение функции, вычисляемое по формуле =(A1^2*(A1+3))^(1/3). Ячейки В2:В21 заполняются копированием формулы из ячейки В1.

  2. Построение графика: выделяем диапазон А1:В21, вызываем «Мастер диаграмм». Для построения графика функции лучше выбрать точечную диаграмму, со значениями, соединенными сглаживающими линиями без маркеров. Чтобы график получился выразительным, можно определить промежуток изменения аргумента, увеличить толщину линий, выделить оси координат, нанести на них соответствующие деления, сделать подписи на осях и вывести заголовок.

  3. Результат представлен на рисунке 3

Рисунок 3 – Построение графика функции