Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2K_programuvanna / Программирование на С. Курсовая. 2 курс

.rtf
Скачиваний:
27
Добавлен:
19.04.2015
Размер:
90.34 Кб
Скачать

Требования к курсовым работам

Работа должна быть оформлена согласно требованиям к оформлению курсовых работ (http://chekalov.sumdu.edu.ua/senior/bak/rules/index.htm).

Работа должна содержать:

  1. Титульный лист.

  2. Оглавление.

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

  4. Описание математической модели (если требуется).

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

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

  7. Текст программы, оформленный, как приложение.

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

Варианты тем курсовой работы

База данных

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

  • Задание на 3: Программа должна реализовывать базовые функции.

  • Задание на 4: Программа должна быть оптимизирована для поиска по конкретному (одному) полю.

  • Задание на 5: Программа должна давать возможность пользователю сортировать и фильтровать данные по любому полю.

Варианты заданий:

  1. Создать базу данных, которая содержит сведения об ассортименте детских книг в магазине. Структура записи: название книги, цена, количество, возрастные ограничения, например 2-5, то есть от 2 до 5 лет. Количество записей произвольно. Написать программу, в результате выполнения которой выдаются такие данные:

    1. названия книг, которые подходят детям от Х до У лет;

    2. стоимость наиболее дешевой книги и ее наименование;

    3. названия книг, которые по стоимости не превышают x грн. и подходят ребенку возрастом от a до b лет. Значения x, a, b ввести с терминала.

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

    1. по введенной фамилии абонента выдается номер телефона;

    2. по введенному номеру телефона выдается фамилия и адрес абонента;

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

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

    1. названия игрушек, которые подходят детям от Х до У лет;

    2. стоимость наиболее дорогой игрушки и ее наименование;

    3. название игрушки, которая по цене не превышает x грн. и подходит ребенку возрастом от a до b лет. Значения x, a, b ввести с терминала.

  4. Создать базу данных, которая содержит сведения о сдаче студентами сессии. Структура записи: индекс группы, фамилия студента, оценки по пяти экзаменам, признак участия в общественной работе: "1" - активное участие, "0" - неучастие. Количество записей произвольно. Написать программу начисления стипендии студентам группы X. Студент, который получи все оценки "5" и активно принимал участие в общественной работе, зачисляется на повышенную стипендию (доплата 50%), неактивно принимал участие - доплата 25%. Студенты, которые получили "4" и "5", зачисляются на обычную стипендию. Студент, который получил оценку "3", но активно занимается общественной работой, также зачисляется на стипендию, в противном случае начисления не проводится. Индекс группы и базовая стипендия вводятся с клавиатуры.

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

    1. местонахождение книги автора X названия Y. Значения X, Y ввести с терминала;

    2. список книг автора Z , которые находятся в коллекции;

    3. количество книг издания XX года, которые есть в библиотеке.

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

    1. время отправления самолетов в город X;

    2. наличие свободных мест на рейс в город X, время отправления Y; Значения X, Y вводятся по запросу с клавиатуры.

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

    1. о наличии и стоимости обуви артикула Х;

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

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

Задание на 3: В файле найдите и выведите все анаграммы, то есть слова полученные перестановкой букв. Например “Мир”-”Рим”, “Остр”-”Рост”.

Арифметика

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

  • Задание на 3. Операции +, -, *, /, (,).

  • Задание на 4. Операции +,-, (,). Реализовать использование чисел произвольной точности.

  • Задание на 4 (вариант 2). Реализовать преобразование введенного выражения из инфиксной формы в польскую запись и его вычисление. Операции +, -, *, /, (,).

  • Задание на 5. Операции +, -, *, /, (,). Реализовать использование чисел произвольной точности.

Арифметика 2

Задание на 4. Реализует программу, которая позволяет складывать и вычитать целые числа произвольной точности в позиционной системе счисления с основанием A. (-10 <A<1000)

Логика

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

Геометрия

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

Фильтрация данных

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

Архивация данных

Реализовать программу, которая сжимает и разархивирует данные по алгоритму Хаффмана.

Задание на 4. Словарь определен заранее.

Задание на 5. Словарь строится автоматически по входным данным и сохраняется вместе со сжатыми данными.

Матрицы

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

Задание 3. Умножение матриц.

Задание 4. Умножение матриц, наложение обратной матрицы.

Задание 5. Умножение матриц, наложение обратной матрицы, нахождение ранга матрицы.

Работа с файловой системой

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

Задание на 3. Оформить вывод на экран. Предусмотреть возможность фильтрации по размеру каталога.

Задание на 4. Тоже, что и на 3. Предусмотреть возможность сортировки по размеру или имени каталога.

Задание на 5. Тоже, что и на 4. Использовать для хранения структуры файловой системы динамическую структуру, реализовать возможность ее сохранения на диск.