Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации»




Скачать 212.26 Kb.
НазваниеМетодические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации»
Дата публикации24.06.2013
Размер212.26 Kb.
ТипМетодические указания
lit-yaz.ru > Бухгалтерия > Методические указания
Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации»

Курсовая работа (КР) по дисциплине является одним из этапов изучения дисциплины, проводится согласно графику учебного процесса во 2 семестре и имеет целью:

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

  • проверить умение самостоятельно и творчески решать поставленную задачу, применяя теоретические, практические знания и умения;

  • проверить умение самостоятельно работать со специальной литературой;

  • оценить умение нести ответственность за самостоятельно и вовремя сделанную работу.


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


Стадия КР

Конкретные задания каждой стадии

Форма контроля

Срок сдачи

Разобрать постановку задачи

Изучения индивидуальной задачи и формулировка темы разработки.

Определение исходных данных и результатов.

* Применение пошаговой детализации задачи: выделение в задаче подзадач.

Отчет в электронном виде

(см. Приложение 1)

1 атт

Изучить основы математической модели решения задачи


Изучение основных действий над матрицами Спроектировать использование в решении собственной задачи

Отчет в электронном виде

(см. Приложение 1)


1 атт

Исследовать и создать алгоритмы решения задачи


Основные алгоритмы обработки двумерных массивов

Спроектировать использование

в решении собственной задачи

Отчет в электронном виде

(см. Приложение 1)


1 атт

Программирование и реализация пользовательского интерфейса

Изучение файлового ввода – вывода.

*Изучение и применение графического интерфейса в среде программирования: основы объектно- ориентированного программирования.

*Применение динамических массивов

*Применение множества (тип данных set )

* Реализация программы средствами модульного программирования.

Демонстрация программы


2 атт
2 атт

2 атт

2атт

3 атт

Отладка и тестирование

Отладка программы.

Контрольный пример выполнения программы или

*Создание тестовых заданий для проверки правильности работы программы ( не менее 5) .

Демонстрация программы с тестовыми случаями

3 атт

Защита работы:

аттестация программы

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

Демонстрация программы

Отчет – бумажный докумет

(см. Приложение 1)

или

*Пояснительная записка к КР

(см.Приложение 2)


3 атт

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


1 атт

2 атт

3атт

0-15 баллов

*0-5 баллов

0-20 баллов

*0-10 баллов

0- 40 баллов

*0-10 баллов

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

^ Баллы выставляются в индивидуальный оценочный лист (см. Приложение 3).

Примечание: студент готовит его заранее (лучше в EXCEL) в виде бумажного документа и при защите предъявляет преподавателю (размер документа не более 1 страницы).
^ Основная литература: А.С. Миронченко. Императивное и объектно-ориентирование программирование на Turbo Pascal и Delphi. Глубокое погружение. ВМВ, Одесса, 2007.

См. файл. Программирование на ТР.pdf
Задание курсовой работы:

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

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

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

  1. Сложение двух заданных матриц размером N*M.

  2. Вычитание двух заданных матриц.

  3. Умножение двух заданных матриц

  4. Возведение матрицы в целую положительную степень

  5. Транспонирование матрицы.

  6. Умножение матрицы на вещественное число.

  7. Умножение матрицы на вектор.

  8. Найти сумму всех элементов матрицы размером N *M.

  9. Просуммировать элементы столбцов (строк) заданной матрицы размером N*M. Результат получить в одномерном массиве разме­ром M (N).

  10. Заданы матрица размером N*N и число К. Разделить элементы К-й строки на диагональный элемент, расположенный в этой строке.

  11. Сдвиг влево по столбцам: удаление столбца матрицы

  12. Сдвиг вправо по строкам: вставка столбца матрицы.

  13. Перестановка строк (столбцов) матрицы.

  14. Сортировка заданного столбца(строки).

  15. Преобразование матрицы А[i, j]:= A[i, j] + k* A[m, j]:

1) умножение (деление) строки на число: умножить (разделить) все элементы строки на одно и то же число (k) , в частности, на какой-либо элемент этой же строки.

2)сложение строк поэлементно: к элементам i-ой строки прибавить элементы m-ой строки, умноженные на число (k).
Задание 2 уровня

  1. Заданы матрица А размером N*N и числа К и L (К>1, LLK/aKK.

  2. Заданы две матрицы А и В размером N*N. Сформировать из них прямоугольную матрицу X размером N*2N, включая в первые N столбцов матрицу А, в следующие — матрицу В.

  3. Задана квадратная матрица. Переставить строку с макси­мальным элементом на главной диагонали со строкой с заданным номером.

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

  5. Заданы матрица (размером N*N) и число К (0<=Кс максимальным по модулю элементом в К-м столбце переставить с К-й строкой.

  6. Заданы матрица (размером N*N) и число К (0<=K

  7. Задан массив X размером N. Сформировать из него матри­цу А, содержащую по L элементов в строке. Недостающие элементы в последней строке (если такие будут) заполнить нулями. Напеча­тать матрицу по строкам.

  8. Отсортировать по возрастанию все элементы матрицы.

  9. Дана прямоугольная матрица А размера mхn и массив В логических переменных размера m. По матрице А получить массив В, присвоив его k-му элементу значение true, если элементы k-й строки матрицы А упорядочены по убыванию, и false в противном случае.

  10. Элемент матрицы назовем его седловой точкой, если он является наименьшим в своей строке и одновременно наибольшим в своем столбце или, наоборот, является наибольшим в своей строке, и наименьшим в своем столбце. Для заданной целой матрицы напечатать индексы всех ее седловых точек (печатать в виде (i,j)).

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

  12. Определить, является ли заданная матрица симметрической (матрица A симметрическая, если A = AT ).

Задание 3 уровня

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

  2. Задав массив А размером N*M и вектор В размером М.Переставить строки матрицы упорядочивая по убыванию элементы первого столбца массива А. Включить массив В в качестве новой строки в массив А с сохране­нием упорядоченности по элементам первого столбца.

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

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

  5. Задана матрица А размером N*N. Сформировать два одно­мерных массива. В один переслать по строкам верхний треугольник матрицы, включая элементы главной диагонали, в другой — ниж­ний треугольник. Распечатать верхний и нижний треугольника по строкам.

  6. Матрица, симметричная относительно главной диагонали, задана верхним треугольником в виде одномерного массива по строкам. Восстановить исходную квадратную матрицу и напеча­тать по строкам.

  7. Задана матрица размером N*N. Найти максимальный по модулю элемент матрицы. Переставить строки и столбцы матрицы таким образом, чтобы максимальный по модулю элемент был рас­положен на пересечении К-й строки и К-го столбца.

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

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

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

  11. Дана квадратная матрица порядка n. Заполните по спирали матрицу числами от 1 до n2. Спираль должна начинаться в верхнем левом углу матрицы, и заканчиваться в центре. Вид решения для n=5 таков:

1 2 3 4 5

16 17 18 19 6

15 24 25 20 7

14 23 22 21 8

13 12 11 10 9

  1. Бинарный поиск в матрице. Дана матрица размера nхm, упорядоченная по строкам и столбцам: x[i, j] < x[i +1, j], x[i, j] < x[i, j +1]. Требуется найти в матрице элемент а. Количество действий должно быть порядка n + m.

  2. Дан массив с элементами типа byte. Надо узнать количество различных элементов в нем. Количество действий должно быть порядка cn, где n - длина массива.



ПРИЛОЖЕНИЕ 1

Подготовить отчет по работе, включающий следующие разделы:

  • Основные действий над матрицами.

  • Основные алгоритмы обработки двумерных массивов.

  • Формулировка задачи. Исходные данные и результаты.

  • Математическая постановка задачи (если требуется).

  • Выбор переменных программы: их имена и типы.

  • Входные и выходные переменные.

  • Структура файла для входа и выхода программы.

  • *Обобщенная схема алгоритма.

  • *Программная реализация отдельных элементов алгоритма.

  • *Тесты и результаты тестирования.


ПРИЛОЖЕНИЕ 2
Оформление пояснительной записки
Пояснительная записка состоит из разделов:

  1. Содержание

  2. Разработка эскизного и технического проектов программы (ГОСТ 19.404-79).

2.1. Введение.

2.2. Назначение и область применения.

2.3. Технические характеристики.

2.4. Источники, использованные при разработке.

  1. Разработка рабочего проекта.

3.1. Разработка программы.

3.2. Спецификация состава программы.

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

3.4. Описание программы.

3.5. Тестирование программы.

  1. Литература.

Содержание

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

Введение

Описание матриц и действий с ними. Кратко о цели своей работы и проблемах, которые требовалось разрешить.


^

Назначение и область применения


Указывается назначение программы и краткая характеристика области применения.

Технические характеристики

Раздел должен содержать следующие подразделы:

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

  2. Описание алгоритма.

  3. Организация входных и выходных данных.

  4. Выбор состава технических и программных средств.

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

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

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

Далее описываются возможные пути решения задачи с указанием их достоинств и недостатков. Выбирается и обосновывается метод решения задачи. Описываются ограничения, накладываемые на исходные данные, необходимая разрядность и точность представления исходных данных и результатов решения. Указываются возможные пределы изменения входных параметров задачи.

Описание алгоритма

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

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

Организация входных и выходных данных

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

Выбор состава технических и программных средств

На основании разработанного алгоритма делается вывод о необходимости использования того или иного языка программирования. Перечисляются достоинства выбранной среды программирования. Определяются технические средства, необходимые для оптимальной работы будущей программы. В этой связи следует помнить, что задание на курсовую работу сформулировано, как разработка приложения для Windows.
^ Источники, использованные при разработке

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

^ Разработка программы

Должен быть представлен проект Windows-окна (или окон), на котором расположены все визуальные компоненты разрабатываемого интерфейса.

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

^ Спецификация состава программы

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

Например,

Обозначение

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

Примечание


Stack.bpr

Файл проекта

Связывает все файлы приложения









Ust. cpp

Файл модуля 1 проекта

Реализация класса «стек»









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

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

Описание программы

Согласно ГОСТ 19.402-78 раздел должен содержать следующие подразделы:

  • общие сведения;

  • функциональное назначение;

  • описание логической структуры;

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

  • вызов и загрузка;

  • входные данные;

  • выходные данные.

Отдельные разделы можно объединять. Некоторые пункты этого раздела повторяют разделы технического проекта. Такие повторения предусмотрены ГОСТом, так как на этапе рабочего проекта появляются некоторые дополнения и изменения. Здесь приводятся более конкретные и точные данные.

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

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

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

Описание поместите в таблицу:
В подразделе «Используемые технические средства» должны быть указаны необходимые ресурсы компьютера.

В подразделе «Вызов и загрузка» должен быть указан способ вызова программы с соответствующего носителя.

В подразделе «Входные данные» должны быть указаны характер, организация и предварительная подготовка входных данных, формат и описание.

В подразделе «Выходные данные» должны быть указаны характер, формат и описание выходных данных.
^

Тестирование программы


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

Прилагается распечатка решения контрольного примера.

Литература

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

  • фамилии и инициалы авторов через запятую;

  • название книги или статьи;

  • место издания (сокращенно);

  • издательство или название журнала;

  • год издания.

Оформление пояснительной записки

Курсовая работа выполняется на стандартных листах формата 204 х 285.

Текст пишется на одной стороне листа с полями: левое – 35мм, правое – 10мм, верхнее и нижнее – 20-25 мм. Оформление титульного листа приводится в приложении 3.




^

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ


Федеральное государственное бюджетное образовательное учреждениевысшего профессионального образования

«тюменский государственный нефтегазовый университет»
^


институт ГЕОЛОГИИ и НЕФТЕГАЗОДОБЫЧИ

КАФЕДРА АВТОМАТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ



ПОЯСНИТЕЛЬНАЯ ЗАПИСКА


к курсовой работе

по дисциплине «^ Программирование и основы алгоритмизации»

Тема: _____________________________________________





Выполнил: студент группы

АТП– 10- 1 Васечкин Иван

Проверила: ст. преп. каф АВТ

Лозикова И.О.


Тюмень 2012




^ ПРИЛОЖЕНИЕ 3 ОЦЕНОЧНЫЙ ЛИСТ





ГРУППА

 

 

 

 




^ ФИО студента










 

ТЕМА курсовой работы

 

 

 

 

 

Стадия КР

Конкретные задания каждой стадии

Форма контроля

Срок сдачи

Баллы

Подпись преподавателя и дата сдачи

Разобрать постановку задачи

Изучения индивидуальной задачи и формулировка темы разработки.

Отчет в электронном виде

1 атт

 

 

Определение исходных данных и результатов.

(см. Приложение 1)

 

 

 

* Применение пошаговой детализации задачи: выделение в задаче подзадач.

 

 

 

 

Изучить основы математической модели решения задачи

Изучение основных действий над матрицами Спроектировать использование в решении собственной задачи

Отчет в электронном виде

1 атт

 

 

Исследовать и создать алгоритмы решения задачи

Основные алгоритмы обработки двумерных массивов

Отчет в электронном виде

1 атт

 

 

Спроектировать использование в решении собственной задачи

(см. Приложение 1)

 

 

 

 

 

 

 

 

Программирование и реализация пользовательского интерфейса

Изучение файлового ввода – вывода.

Демонстрация программы

2 атт

 

 

* Изучение и применение графического интерфейса в среде программирования: основы объектно- ориентированного программирования.


 

2атт

 

 

* Применение динамических массивов

 

2 атт

 

 

*Применение множества (тип данных set )

 

2 атт

 

 

* Реализация программы средствами модульного программирования.

 

3 атт

 

 

Отладка и тестирование

Отладка программы.

Демонстрация программы с тестовыми случаями

3 атт

 

 

Контрольный пример выполнения программы или

 

 

*Создание тестовых заданий для проверки правильности работы программы ( не менее 5) .

 

 

Защита работы: аттестация программы

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

Демонстрация программы

Отчет – бумажный документ

(см. Приложение 1)

или

3 атт

 

 

 

*Пояснительная записка к КР

 

 

 

(см.Приложение 2)

 

 




 

 

 

 

 




ИТОГО

 

 

 

 






















уровня/ № задачи

 

 

 

 




ФИО студента

 

 

 

 

Добавить документ в свой блог или на сайт

Похожие:

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

Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации» iconМетодические указания по анализу финансового 12 состояния организации 12
Методические указания предназначены для выполнения курсовых работ по дисциплине «Анализ хозяйственной деятельности» для студентов...

Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации» iconМетодические указания по выполнению курсовой работы по дисциплине «Финансы и кредит»
Методические указания по выполнению курсовой работы для студентов специальности

Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации» iconМетодические указания по курсовой работы для студентов заочной формы обучения
Методические указания предназначены для студентов очной и заочной формы обучения. Содержат рекомендации по написанию курсовой работы...

Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации» iconМетодические рекомендации для выполнения курсовой работы по дисциплине...
Цель курсовой работы – завершение подготовки специалиста по предмету «Основы страхования предпринимательства»

Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации» iconМетодические указания к выполнению курсовой работы (на примере создания...
В соответствии с учебным планом по дисциплине «Автоматизация технологических процессов и производств» студенты специальности 220301....

Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации» iconМетодические указания к курсовой работе по дисциплине " системы программирования " Киев -2002
Целью курсовой работы по дисциплине "Системы программирования" является закрепление теоретического материала и приобретение практических...

Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации» iconМетодические указания к курсовому проекту по дисциплине «Технологии программирования»
Методические указания предназначены для студентов, обучающихся по специальности 220200 «Автоматизированные системы обработки информации...

Методические указания по подготовке курсовой работы по дисциплине «Программирование и основы алгоритмизации» iconМетодические рекомендации и указания к выполнению курсовой работы по дисциплине «маркетинг»
«Маркетинг» и важным этапом в подготовке студентов к предстоящему дипломному проектированию. Дисциплина «Маркетинг» является одной...

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



Образовательный материал



При копировании материала укажите ссылку © 2013
контакты
lit-yaz.ru
главная страница