WWW.METODICHKA.X-PDF.RU
БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА - Методические указания, пособия
 

«Кафедра экологических информационных систем ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ СИ Методические указания к выполнению курсовых проектов для студентов специальностей 1-40 05 01-06“Информационные ...»

МЕЖДУНАРОДНЫЙ ГОСУДАРСТВЕННЫЙ ЭКОЛОГИЧЕСКИЙ

УНИВЕРСИТЕТ имени А.Д.САХАРОВА

Кафедра экологических информационных систем

ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ СИ

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

для студентов специальностей

1-40 05 01-06“Информационные системы и технологии в экологии”

1-40 05 01-07 “Информационные системы и технологии в здравоохранении”



МИНСК 2014

1. ЦЕЛЬ И ЗАДАЧИ КУРСОВОГО ПРОЕКТА

Целью курсового проекта является углубление знаний и расширение навыков по разработке алгоритмов и их реализации на персональном компьютере. Курсовой проект выполняется в среде Borland С++, Dev-C++, Visual Studio С++ (по выбору студента).

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

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

2. ПОРЯДОК ВЫПОЛНЕНИЯ КУРСОВОГОПРОЕКТА

1. Получить у преподавателя вариант задания.

2. Разработать оптимальный алгоритм решения задачи.

3. Утвердить его у преподавателя.

4. Написать программу на языке программирования Си.

5. Отладить и протестировать программу.

6. Оформить пояснительную записку, содержащую:

- титульный лист;

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

- распечатку кода программы;

- результаты ее работы для набора тестов.

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

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

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

3. ПРИМЕРНАЯ СТРУКТУРА ПРОЕКТА

Проект должен иметь четкое построение и содержать логически связанный материал. Примерное содержание проекта приведено ниже.

Содержание Введение 1 Разработка проекта

1.1 Описание структуры входных и выходных данных

1.2 Разработка алгоритма решения задачи

1.3 Определение формы представления входных и выходных данных

1.4 Разработка структуры программы 2 Разработка программы

2.1 Программирование и отладка

2.2 Формирование тестовых данных

2.3 Тестирование программы 3 Разработка программной документации

3.1 Описание структуры программы

3.2 Руководство пользователя Заключение Список использованных источников Приложениe A Приложениe Б Во введении кратко характеризуется проблема, решению которой посвящен курсовой проект, определяются цель и задачи, которые надо решить для раскрытия темы, описываются средства, с помощью которых реализуется разрабатываемая программа. Общий объем введения составляет 1 – 2 стр.

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

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

1.1. Описание структуры входных и выходных данных.

Приведите полную постановку задачи. В соответствии с темой проекта определите входные и выходные данные для задачи. Укажите взаимосвязи между ними.

1.2. Разработка алгоритма решения задачи.

Здесь подробно описывается алгоритм (или алгоритмы) решения задачи. Описание может быть выполнено в словесной форме или в виде блок-схемы (выполнено в MS Visio).

1.3. Определение формы представления входных и выходных данных.

На этом этапе определяют типы для входных и выходных данных и форму их хранения.

1.4. Разработка структуры программы.

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

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

2.1. Программирование и отладка.



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

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

2.2. Формирование тестовых данных.

Этап формирования тестовых данных для проверки работоспособности проектируемого программного обеспечения.

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

Тестовые данные для проверяемой системы должны быть сохранены в текстовом файле.

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

3. Разработка программной документации.

3.1. Описание структуры программы.

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

3.2. Руководство пользователя.

Описание правил пользования программным средством, правил формирования входных данных. Также надо привести технические характеристики компьютеров, на которых можно выполнить программу (размер свободной памяти на жестком диске, минимальный размер оперативной памяти). Указать требования к операционной системе (Windows XP, Vista, Windows 7 и т.п.) Заключение должно содержать выводы, сделанные во время выполнения курсового проекта (в т.ч. систематизация, углубление и активное применение знаний по программированию).

4. ОСНОВНЫЕ ТРЕБОВАНИЯ, ПРЕДЪЯВЛЯЕМЫЕ К ВЫПОЛНЕНИЮ

КУРСОВОГО ПРОЕКТА

1. Реализовать оптимальный алгоритм решения поставленной задачи по критериям времени работы программы и требуемым ресурсам (памяти).

Использовать принципы процедурного, структурного и 2.

модульного программирования. Сделать необходимые комментарии в коде программы.

3. Создать удобный, доступный, «дружественный» пользователю интерфейс, в текстовом или графическом режиме. При этом в зависимости от решаемой задачи, следует

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

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

- использовать временную задержку экрана при выводе результатов и т.д.

Для тестирования работы программы следует осуществлять ввод 4.

исходных данных

- из заранее подготовленного файла входных данных;

- с клавиатуры пользователем.

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

Реализовать защиту от неправильно введенных данных, 5.

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

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

7. В программе, кроме решения непосредственно задачи, студент должен предусмотреть вывод справки о программе и информации о разработчике с указанием ФИО, группы и даты разработки.

5. КАЛЕНДАРНЫЙ ГРАФИК ВЫПОЛНЕНИЯ РАБОТЫ

–  –  –

6. ТЕМЫ КУРСОВЫХ ПРОЕКТОВ

1. Задать массив из n целых чисел (одно- и двузначных). Определить, содержит ли массив серии из подряд стоящих простых чисел. Если да, то посчитать количество таких серий. Удалить из массива все двузначные числа. Определить, изменилось ли количество серий. В программе написать функции: вычисления количества серий из подряд стоящих простых чисел, удаления элемента.

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

добавление нового элемента, удаление элемента, обход дерева, поиск элемента.

3. Задать структуру из N элементов, каждая запись содержат координаты точки x, y (вещественные числа). Определить номера пар, задающих треугольник с минимальным периметром. Определить периметр и площадь этого треугольника

4. Создать целочисленный массив B[100]. Упорядочить элементы массива в порядке возрастания частоты их встречаемости. Если в массиве есть несколько элементов одинаковой частоты встречаемости, то группы упорядочить по убыванию абсолютных значений элементов.

5. Организовать работу с односвязным списком типа «стек». Реализовать функции по созданию стека; просмотру элементов стека; добавлению элементов в стек; обмену текущего и следующего за ним элементов; удалению стека.

6. Разработать программу «Железнодорожный состав». На железнодорожном пути находится состав из некоторого количества белых и черных вагонов. Используя тупик, сформировать новый состав, в котором черные и белые вагоны строго чередуются. Для решения использовать структуру данных «стек».

7. Организовать работу с односвязым списком типа «очередь». Реализовать функции по созданию очереди; добавлению элементов в очередь; просмотру очереди; удалению элемента, следующего за текущим; удалению всей очереди.

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

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

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

добавление элементов в список; удаления из списка всех элементов, находящихся после максимального.

10. Написать программу подбора пароля к rar-архиву, если известно, что пароль состоит из 3 цифр. Имя архива передается в параметрах командной строки. Предполагается, что программа-распаковщик архива находится в том же каталоге, что и сама исполняемая программа

11. Составить функцию для построения гистограммы (распределения частот) для реализации случайной величины. Входная информация: массив значений случайной величины x[1],x[2],…,x[n], n- количество элементов, k–число интервалов, на которые разбивается диапазон значений случайной величины. Результат – массив из k чисел – значения частот попадания в соответствующий интервал.

12. Определить целое положительное число из диапазона [n, m] (n, m вводятся с клавиатуры), в двоичном представлении которого больше всего единиц.

13. Ввести текст, состоящий из нескольких предложений. В качестве разделителя слов используют пробел, точку, запятую, точку с запятой. Отделить слова в тексте, Найти слова, длина которых – простое число, и заменить эти слова сообщением: «слово #N содержит K символов» (N – номер слова; K – число символов в слове). Вывести исходный текст и результат.

14. Ввести текст. Рассортировать слова текста в соответствии с частотой встречающейся в нём введенной с клавиатуры буквы. Слова с одинаковым количеством букв расположить в алфавитном порядке

15. Создать файл, содержащий N записей координат вершин треугольника (каждая запись состоит из 3 пар вещественных чисел xi,yi). Записать координаты и длины сторон равносторонних треугольников в файл 1.dat, равнобедренных – в 2.dat, прямоугольных – в 3.dat. Внутри каждого файла упорядочить информацию по убыванию периметров треугольников.

16. Задать целочисленную матрицу NxM (значения N, M вводится с клавиатуры).

Предусмотреть динамическое выделение памяти под элементы.

а) Упорядочить элементы матрицы по возрастанию в форме спирали 4 14 8 3 9 = 12 13 14 15 6

–  –  –

4 14 8 3 9 = 6 7 8 9 10

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

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

Обучение организовать в форме диалога

19. Составить программу «Быстрые методы сортировки». Реализовать методы Хоара, Шелла, Флойда (двоичное дерево). Оценить время сортировки массива данных по каждому методу. Выбор метода организовать с помощью меню. Исходный массив данных и отсортированный массив хранить в файле.

20. Составить программу «Реализация алгоритмов поиска» (не менее трех, включая бинарный). Оценить время поиска элемента в массиве данных по каждому методу.

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

21. Реализовать следующую игру. В квадрате размером 4 х 4 с помощью датчика случайных чисел расставлены буквы латинского алфавита от А до Р. Квадрат разбивается на подквадраты размером 2 х 2, которые можно вращать по часовой стрелке на одну клетку. Подквадраты нумеруются по левой верхней клетке Требуется упорядочить буквы в квадрате по алфавиту, начиная с левой верхней клетки.

22. Разработать программу «Шифрование», которая предназначена для зашифровки текстов. Вывести на печать исходный текст и результат шифровки. Текст читать построчно, хранить текст в массиве строк.

Шифр Цезаря. Алфавит размещается на круге по часовой стрелке (в русском алфавите, после А идет Б, а после Я - А). Для зашифровки буквы текста заменяются буквами, отстоящими по кругу на заданное число букв дальше по часовой стрелке. Если, например, сдвиг на 3, то вместо i-й используется (i+3)-я буква (вместо А пишется Г, вместо Я пишется В. При расшифровке движение против часовой стрелки.

Шифр Цезаря расшифровать легко. Известны вероятности букв p[i], i =1,2,...,n в языке сообщения ( n - число букв в алфавите). Подсчитаем частоты букв f[i] в зашифрованном сообщении. Если оно не очень короткое, то f[i] должны сравнительно хорошо согласовываться с p[i]: f[i] = p[i-s] для некоторого сдвига s. Затем начнем делать перебор по сдвигам. Когда сдвиг не угадан, общее различие между p[i] и f[i+s], равное n D( s) p i f i s, будет велико, а когда сдвиг угадан - мало.

i 1 Минимизация D(s) по всем s = 1,2,...,n дает ключ к расшифровке кода Цезаря.

23. В таблице размером (N x N), где N=20, клетки заполнены цифрами случайным образом. Найти маршрут из клетки (1,1) в клетку (N,N), удовлетворяющий следующим условиям: 1) любые две последовательные клетки в маршруте имеют общую сторону;

2) количество клеток маршрута минимально; 3) сумма цифр в клетках маршрута максимальна.

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

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

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

26. Создать в динамической памяти массив строк, число символов в каждой строке не превышает 100. Определить среднюю длину всех введенных строк и удалить из массива все строки, длина которых меньше средней величины. Исходный и полученный массивы отобразить на экране.

27. В файл с расширением *.txt записать связный текст, разбитый на строки. Слова в строке разделяются одним или несколькими пробелами. Длина строк не превышает 100 символов, а количество слов в строке не более 15. Упорядочить слова в каждой строке по алфавиту.

28. Создать два одномерных массива A, B. Из массива A удалить те элементы, которые встречаются в обоих массивах по крайней мере по 2 раза.

Пример: массив A[8]: 3 3 4 5 2 3 5 9, массив B[7]: 1 2 3 4 5 2 5. По 2 раза в обоих массивах встречается только элемент 5. Массив A после удаления примет вид: A[6]: 3 3 4 2 3 9.

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

Например: 123456789 13 Результат: 1+2+3+4+5+6-7+8-9 = 13 В программе вводится количество чисел в ряду, сам ряд чисел и правая часть.

30. Разработать приложение “Помощник экзаменатора”. Экзаменационные вопросы и ответы к ним хранятся в файлах на диске. Каждый вопрос имеет балл сложности.

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

31. Разработать программу для составления списка заданий для параллельных процессоров. Три одинаковых центральных процессора могут выполнять М заданий.

Каждое задание может быть выполнено на любом процессоре, и, если задание загружено в процессор, оно находится в нем до полного завершения (т.е. задания не могут прерываться или разделяться между двумя или более процессорами). При i = 1,..., М задание i требует ti единиц времени для его выполнения. Для любого порядка заданий следующее задание из списка выполняется на первом освободившемся процессоре.

Определить оптимальный порядок заданий, т.е. такой, который дает возможность завершить все задания за кратчайшее время.

32. Создать массив структур с информацией об абонентах оператора мобильной связи: фамилия, имя, отчество абонента, номер телефона (целое положительное 7-значное число), дата подключения (дд.мм.гггг). Записать информацию в бинарный файл.

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

33. Разработать приложение “Жидкокристаллический робот”. В результате обработки жидким азотом киборг рассыпался на K осколков различной массы. Считая, что площадь, где рассыпались осколки, представляется матрицей размером N*M, а вес осколка и его местоположение определяются элементом матрицы, найти, за какое время произойдет восстановление робота. Процесс восстановления определяется следующим образом: в каждый момент времени осколок наименьшей массы исчезает, передавая свою массу ближайшему к нему осколку (если таких осколков несколько, то выбирается осколок наименьшей массы). При решении использовать структуру данных «список».






Похожие работы:

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Институт наук о Земле Кафедра физической географии и экологии Старков Виктор Дмитриевич РАДИАЦИОННАЯ ЭКОЛОГИЯ Учебно-методический комплекс. Рабочая программа для студентов, обучающихся по направлению 022000.62 Экология и природопользование Профиль подготовки: Геоэкология Очная форма обучения Тюменский...»

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ» Институт наук о Земле Кафедра физической географии и экологии М.В. Гудковских, В.Ю. Хорошавин УЧЕБНАЯ ПРАКТИКА ПО ГЕОГРАФИИ ПОЧВ И ОСНОВАМ ПОЧВОВЕДЕНИЯ Учебно-методический комплекс. Рабочая программа для студентов направления 05.03.02«География» Тюменский государственный университет М.В. Гудковских,...»

«РОССИЙСКАЯ ФЕДЕРАЦИЯ МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ» Институт Наук о Земле кафедра Геоэкологии Т.Н. Иванова УЧЕНИЕ ОБ АТМОСФЕРЕ Учебно-методический комплекс. Рабочая программа для студентов направления 05.03.06 «Экология и природопользование». Профили подготовки «Геоэкология», «Природопользование», форма обучения очная Тюменский государственный...»

«РОССИЙСКАЯ ФЕДЕРАЦИЯ МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ Государственное образовательное учреждение высшего профессионального образования ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ «УТВЕРЖДАЮ»: Проректор по учебной работе _ /Волосникова Л.М./ 01.07.2011 г. РАБОТА УЧИТЕЛЯ-ДЕФЕКТОЛОГА В КОРРЕКЦИОННОМ КЛАССЕ Учебно-методический комплекс. Рабочая программа для студентов направления 050700.62 Специальное (дефектологическое) образование, профиль Логопедия, форма обучения – очная «ПОДГОТОВЛЕНО К ИЗДАНИЮ»:...»

«ЛИСТ СОГЛАСОВАНИЯ от..2015 Содержание: УМК по дисциплине «Системы документации о жизнедеятельности человека» для студентов очной формы обучения по направлению 46.04.02 «Документоведение и архивоведение» Автор: Тарасюк Анна Ярославовна Объем 24 стр. Должность ФИО Дата Результат Примечание согласования согласования Протокол заседания кафедры от 06.05.2015 Заведующий кафедрой Рекомендовано к документоведения и С.В. Туров..2015 электронному №9 ДОУ изданию Протокол заседания Председатель УМК УМК...»

«А.Л. ЧЕКИН МАТЕМАТИКА 4 КЛАСС Методическое пособие Под редакцией Р.Г. Чураковой МосКвА АКАдЕМКНИГА/УЧЕбНИК УДК 51(072.2) ББК 74.262.21 Ч-37 Чекин А.Л. Ч-37 Математика [Текст] : 4 кл. : Методическое пособие / А.Л. Чекин; под. ред. Р.Г. Чураковой. – М. : Академкнига/Учебник, 2012. – 256 с. ISBN 978-5-49400-126-9 Методическое пособие разработано в соответствии с требованиями федерального государственного образовательного стандарта начального общего образования второго поколения и концепцией...»

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Кемеровский государственный университет» Прокопьевский филиал (Наименование факультета (филиала), где реализуется данная дисциплина) Рабочая программа дисциплины (модуля) «Логика» (Наименование дисциплины (модуля)) Направление подготовки 38.03.03 / 080400.62 Управление персоналом (шифр, название направления) Направленность (профиль)...»

«СОДЕРЖАНИЕ 1. Общие положения 1.1. Общая характеристика образовательной программы 1.1.1. Направленность 1.1.2. Присваиваемая квалификация 1.1.3. Срок освоения 1.1.4. Трудоемкость 1.1.5. Структура 1.2. Нормативные документы для разработки образовательной программы.1.3. Требования к поступающим.2. Характеристика профессиональной деятельности выпускников освоивших образовательную программу 2.1. Область профессиональной деятельности. 2.2. Объекты профессиональной деятельности. 2.3. Виды...»

«Содержание 1. Цели и задачи освоения дисциплины 4 2. Место дисциплины в структуре ООП бакалавриата 4 3. Требования к результатам освоения содержания дисциплины 4 4. Содержание и структура дисциплины 4.1 Содержание разделов дисциплины 8 4.2 Структура дисциплины 1 4.3 Разделы дисциплины 13 4.4 Тематика семинарских занятий 14 4.5 Контрольные работы 1 4.6 Контрольное тестирование 15 5. Образовательные технологии 1 6. Оценочные средства для текущего контроля успеваемости и промежуточной 16...»

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Институт наук о Земле Кафедра физической географии и экологии Переладова Л.В.ГИДРОЭКОЛОГИЧЕСКИЕ ПРОБЛЕМЫ ТЮМЕНСКОГО РЕГИОНА Учебно-методический комплекс. Рабочая программа для студентов направления 05.03.04 «Гидрометеорология», очной формы обучения Тюменский государственный университет Переладова Л.В....»





 
2016 www.metodichka.x-pdf.ru - «Бесплатная электронная библиотека - Методички, методические указания, пособия»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.