Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КП_Метод_2008.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
158.72 Кб
Скачать

4 Організація проектування і порядок захисту курсового проекту

На першому тижні семестру студенти отримують у керівника завдання на курсовий проект. Тема курсового проекту може бути запропонована студентом на підставі матеріалів, зібраних під час учбової практики, і представлена викладачеві. Керівник затверджує тему (можливо, із змінами) або пропонує тему з числа учбових (перелік учбових тем представлений в розділі 5 цих методичних вказівок).

Студент спільно з керівником заповнює бланк завдання на курсове проектування і календарний план виконання проекту.

Керівник роз'яснює вимоги і дає загальні рекомендації по виконанню курсового проекту, рекомендує загальну і спеціальну літературу, допомагає вирішити складні технічні питання.

За якість виконання проекту і правильність ухвалених рішень, а також за своєчасне завершення роботи відповідає студент. При виборі тих або інших рішень ініціатива надається студентові. Окрім технічного керівництва, основним завданням керівника є прищеплення студентові навичок творчої і систематичної самостійної роботи.

Протягом семестру студент відвідує консультації по курсовому проектуванню і пред'являє керівникові на перевірку матеріали відповідно до календарного плану і графіка виконання курсового проекту.

Проект представляється до захисту не пізніше встановленого керівником терміну. Заздалегідь курсовий проект в повному об'ємі пред'являється керівникові і підписується ним після усунення студентом всіх зауважень.

Захист курсових проектів відбувається відповідно до графіка, складеного на кафедрі. Для прийому курсових проектів створюється комісія у складі керівника проекту і 1-2 викладачів кафедри.

На захисті студент повинен продемонструвати роботу програми на контрольному прикладі, представити правильно оформлену пояснювальну записку і, можливо, графічну частину. Студент повинен уміти відповісти на питання, пов'язані з розробленим алгоритмом і програмою.

5 Зразковий перелік тем курсових проектів

Курсовий проект по дисципліні «Програмування» виконується мовою С за одним з напрямів:

1. Розробка діалогових повчальних і тестових програм.

2. Розробка програм розрахунку, моделювання і реалізації чисельних методів.

3. Розробка програм-фільтрів для обробки текстових файлів.

4. Розробка програм-довідників і інформаційних програмних систем.

5. Розробка програм пошуку в складних зв'язаних структурах даних (списках, деревах).

6. Розробка програм-інтерпретаторів.

7. Розробка програм для реалізації різних методів сортування масивів і файлів.

8. Розробка програм-імітаторів і ігрових програм.

9. Розробка текстових і графічних редакторів.

10. Розробка програм для вирішення фінансово-економічних завдань.

В загальному випадку тема курсового проекту надається студенту з наступного переліку згідно з номером студента в журналі академічної групи:

  1. Розробка програми для статистичного аналізу програми на С.

  2. Розробка програми для порівняльного аналізу методів сортування одномірних масивів: обмінної й сортування вставкою.

  3. Розробка програми для порівняльного аналізу методів сортування одномірних масивів: швидкої й сортування вибором.

  4. Розробка програми для порівняльного аналізу методів сортування одномірних масивів: роздільної й сортування квадратичним вибором.

  5. Розробка програми для порівняльного аналізу методів сортування одномірних масивів: швидкої й сортування злиттям.

  6. Розробка ігрової програми «Життя». (Задане прямокутне поле комірок, кожна з яких має 8 сусідів і може містити «організм»; m(k) - кількість сусідніх з k-ю коміркою комірок, зайнятих «організмами». Нове покоління «організмів» походить із попереднього покоління за правилами:

  • «організм» в комірці k переходить у наступне покоління за умови 2≤m(k) ≤3, інакше він умирає;

  • «організм» народжується в порожній комірці k при m(k)=3.

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

  1. Розробка програми для реалізації стека.

  2. Розробка програми для реалізації лінійного списку.

  3. Розробка програми для реалізації черги.

  4. Розробка програми - двійкового калькулятора.

  5. Розробка програми для шифрування/дешифрування файлу.

  6. Розробка програми для стиску/розширення файлів.

  7. Розробка програми з використанням опцій у командному рядку. (Написати програму, що у заданому в командному рядку файлі буде підраховувати:

    • кількість символів, якщо в командному рядку задана опція -c;

    • кількість слів, якщо в командному рядку задана опція -w;

    • кількість рядків, якщо в командному рядку задана опція -l.

Опції можуть розміщатися в будь-якому порядку, групуватися в слова або бути відсутніми. Так, для програми з ім'ям test припустимі виклики:

test -l -w -c

test -w - l -c

test -c – w -l

test -l

test

і таке інше.

Для того самого вихідного файлу вони повинні генерувати однаковий результат. Необов'язкова наявність всіх опцій.)

  1. Розробка програми для статистичного аналізу текстового файлу. (У заданому вхідному файлі програма повинна підраховувати кількість слів, що складаються з 1-ї, 2-х, 3-х і т.д. букв, і виводити на екран гістограму довжин цих слів).

  2. Розробка програми для підрахунку коментарів. (У заданому вхідному файлі програми на С потрібно підрахувати:

  • кількість рядків, що містять тільки символи пробілів і табуляцій;

  • кількість коментарів стилю С (/*...*/);

  • кількість коментарів стилю С++ (//...);

  • кількість рядків з коментарями.

  1. Розробка програми трансформації текстових файлів. (Програма повинна читати заданий вхідний файл і формувати з нього вихідний файл за правилами: сприймаються тільки цифри й латинські букви, всі інші ігноруються; на виході формуються рядки з 10 трьохсимвольних слів, розділених пробілами. Вихідна інформація перетвориться так: якщо вихідним символом є цифра n, 0≤n≤9, то наступний символ (букву або цифру) потрібно повторити n+1 раз і більше його не розглядати. Буква означає тільки себе. Приклад вхідного файлу:

a2b5e3426

fg0zyw3210p

q89r

Результат:

abb bee eee e44 446 66f gzy w22 220 0pq

999 999 999 r

  1. Розробка програми «Пробіли - табуляції». (У заданому вхідному текстовому файлі: а) видалити всі символи табуляцій, замінивши їх послідовністю пробілів; б) замінити послідовності пробілів табуляціями скрізь, де це можливо.)

  2. Розробка програми для порівняння двох текстових файлів. (Програма порівнює два заданих текстових файли й формує 3 нових файли. У перший записуються слова, що зустрічаються тільки в першому файлі й відсутні в другому, у другий файл - слова, що зустрічаються тільки в другому вхідному файлі, у третій файл - слова, що зустрічаються як у першому, так і в другому файлах.)

  3. Розробка програми-емулятора препроцесора С.

  4. Розробка програми для модифікації й порівняння двох текстових файлів. ( Із двох заданих вхідних файлів необхідно видалити зайві пробіли й табуляції, замінивши їхнім одним пробілом. Після цього файли потрібно посимвольно порівняти, створюючи файл результату, у якому зберігаються № рядка й № символу для відмінностей.)

  5. Розробка інформаційно-довідкової системи.

  6. Розробка програми для рішення системи лінійних рівнянь методом Гаусса.

  7. Розробка програми для знаходження значень визначених інтегралів.

  8. Розробка ігрової програми «Морський бій».

  9. Розробка ігрової програми « Хрестики-Нулики».

  10. Розробка програми для роботи з матрицями. (Програма повинна виконувати операції додавання, вирахування, множення двох матриць, транспонування й знаходження зворотної матриці).

  11. Розробка програми для контролю правильності постановки дужок у програмі на С.

  12. Розробка програми пошуку проходу по лабіринті. (Лабіринт - двовимірний масив, заповнений 1 і 0 випадковим образом, має 1 вхід (постійний) і 1 вихід (випадковий). Один з алгоритмів пошуку проходу - рухатися вперед, тримаючись правою рукою за стіну. При повороті стіни треба також повертатися. Якщо вихід можливий, він буде знайдений, у противному випадку буде знайдений вхід.)

  13. Розробка програми для генерації текстів. (У програмі повинні використовуватися 3 файли, у яких зберігаються 1)іменники; 2) дієслова; 3) прийменники. Випадковим образом з файлів повинні бути обрані слова, з яких складаються речення виду: «Іменник дієслово прийменник іменник», які записуються в проміжний масив, а потім у результуючий файл. Слова повинні відділятися друг від друга пробілами. Речення починається із заголовної букви й закінчується крапкою (можливо, знаком оклику або знаком питання). Створити файл, що складається з 20 таких речень. Передбачити можливість уведення нових слів і запам'ятовування їх у файлах.)

  14. Розробка програми для кодування/декодування тексту за допомогою абетки Морзе.