4. Технологія програмування, виконання та відлагодження програми..16
5. Інструкція користувачеві……………………………………………….17
6. Аналіз результатів комп'ютерної реалізації програми………………19
Висновки……………………………………………………………………20
Література…………………………………………………………………..21
Додаток – текст програми на мовах C/C++………………………………22
Вступ
Метою виконання курсової роботи є закріплення теоретичних знань та практичних навичок програмування, набутих при вивченні дисциплін "Основи програмування" та “Проблемно орієнтовані мови програмування”.
В ході виконання курсової роботи студенти повинні навчитися самостійно працювати з літературою, розробляти алгоритми, здійснювати їх програмну реалізацію та відлагодження на сучасних обчислювальних системах.
Завдання даної курсової роботи охоплює практично весь курс дисципліни «Проблемно-орієнтовані мови програмування», включаючи в себе основні його розділи. Програма охоплює всі ці розділи і вимагає виявити знання та навички, отримані при їх вивченні. При розробці програми студент набуває навичок практичного програмування, створюючи продукт, який має практичну цінність як прикладна програма, зручний інтерфейс з керуванням за допомогою клавіатури та миші, та інші елементи та особливості, притаманні професійним програмам, що пишуться для користувача, не знайомого з програмуванням.
1. Формулювання задачі, методи та засоби її розв’язування
Завдання даної курсової роботи полягає у створенні навчальної програми з переведення чисел у основні системи числення.
Необхідно створити програму, яка б мала ергономічний інтерфейс з керуванням за допомогою клавіатури та миші, була б зручна у використанні. Інтерфейс програми повинен складатися з верхнього головного меню, нижньої лінійки статусу програми, на якій виводиться інформація для користувача та робочої області між ними – «робочого столу», на якому виводяться вікна для роботи з програмою.
У програмі повинен бути калькулятор для переведення чисел, який би використовував функції переведення, засновані на стандартних методах. Такий калькулятор найзручніше буде реалізувати у вигляді діалогового вікна(Рис. 1). Це діалогове вікно повинно містити поле для вводу числа у початковій системі числення, поле, у якому виводиться результат переведення, перемикач типу «радіо-кнопка» для вибору початкової системи числення, такий же для вибору системи, у яку буде переводитися число, кнопку переведення та кнопку виходу з калькулятора. Від варіанту керування у вигляді прямокутної матриці у процесі тестування було вирішено відмовитися через його невисоку ергономічність.
╔═[■]═══ Виберiть варiант переведення числа ═══════╗
Рис. 1. Загальний вигляд діалогового вікна калькулятора.
Інтерфейс найзручніше створювати за допомогою бібліотеки TurboVision, яка дозволяє швидко та ефективно створити зручний текстовий інтерфейс для програми, який керується за допомогою миші та гарячих клавіш. Використання цього пакету вимагає знань об’єктно-орієнтовного програмування, а саме мови С++.
Основною одиницею у об’єктно-орієнтовному програмуванні на С++ є класи. Клас – це визначення типу, з яким буде працювати програма та функції для роботи з цим типом. При створенні будь-якої програми на С++ програміст створює свій власний клас, у якому визначає всі необхідні йому функції і підкласи. Часто буває так, що клас містить інший підклас, а той у свою чергу містить свої підкласи і т.д. Бібліотека TurboVision представляє собою групу класів, об’єднаних між собою. Кожен з них містить свої підкласи. Класи мають чітку ієрархію(Рис.2).
(f) ┌opstream
┌───────┘
TObject TStreamable─┤
^ ^ └───────┐
└───────────┬─────────────┘ (f) └ipstream
│
TView
f = friend ^
v = virtual │
TGroup
^ ^ ^
┌─────────────────┘ │ └────────┐ (v) TDeskInit
│ │ │ ^
│ │ └─────┬─────────┘
│ │ TWindowInit │
│ │ (v) ^ │
│ TProgInit └──┬─────┘ TDeskTop
│ ^ (v) │
└────┬───┘ ┌─>TWindow┌──────────────────┘
└┬─Логічна структура програми: при старті програми запускається конструктор handleEvent, який відслідковує команди, що надсилаються з приладів керування. За допомогою операторів вибору варіантів на кожну команду виконується відповідна до неї дія. Так, наприклад, натиснення кнопки F1 надсилає у конструктор команду HelpCmd, вона обробляється у конструкторі і запускає функцію Help, яка будує на екрані вікно з текстом файлу, ім’я якого вказане у якості параметру цієї функції. По такому ж принципу будується і решта взаємодій у програмі.
Функцію calculator() розглянемо детальніше, оскільки вона має більш складну будову.
Рис.17 Схема взаємодії калькулятора з функціями переведення
Після введення даних, вони записуються у структуру типу DialogData, яка містить в собі шлях переведення, рядок введення та виведення. Далі структура передається у конструктор Trans(), який вибирає згідно з шляхом переведення ту функцію, яку необхідно запустити, щоб перевести дані. У функцію передається два рядки – вводу та виводу. Функція обробляє рядок вводу згідно з стандартними алгоритмами переведення чисел і записує результат у рядок виводу. Далі вікно калькулятора перебудовується з новим значенням рядку-виводу і процес запускається заново, оскільки у калькуляторі запущений нескінченний цикл, вихід з якого здійснюється користувачем вручну, шляхом натиснення кнопки відміни.
Дані зберігаються у змінній, котра оголошена у конструкторі TProgInit.
Інформація довідкової системи міститься в наборі текстових файлів, що знаходяться в папці help. При запуску функції допомоги будується вікно, потім порядково читається інформація з файлу(його ім’я передається як параметр цієї функції), і вставляється у вікно.
Вхідні та вихідні дані: дані вводяться з клавіатури і виводяться на екран. Файловий ввід-вивід основних даних не реалізовано через те, що у даному випадку він не є доцільним. При побудові вікна довідкової системи текст довідки береться з зовнішнього текстового файлу.
char OutputLine[length] – результат обчислення, що виводиться на екран
Програмні засоби: інтегроване середовище Borland Turbo C++ 3.0, вбудовані в нього редактор та компілятор, бібліотека TurboVision. Протестовано на операційній системі – режим емуляції DOS, вбудований у ОС Microsoft Windows XP Professional SP2. Потребує систему з установленою MS-DOS або її емулятором.
Технічні засоби: програма потребує комп’ютера на базі IBM-PC. Протестовано на Athlon XP 1700+ 768 Mb RAM.
4. Технологія програмування, виконання та відлагодження програми.
Програма написана у одному файлі з використанням бібліотеки TurboVision. Створений клас TProgApp об’єднує в собі як інтерфейс так і прикладну частину програми.
Для запуску програми необхідно відкрити її файл проекту у робочій папці компілятора Borland Turbo C++ 3.0 з підключеними бібліотеками TurboVision. Програма готова до запуску.
Відлагодження програми після створення інтерфейсу відбувалося за допомогою вбудованого калькулятора ОС Windows. Значення, отримані при запуску програм звірялися і за допомогою них виявлялися помилки. Помилки, що були виявленні мали переважно синтаксичний характер(типу неправильно розставлених індексів).
5. Інструкція користувачеві.
Для запуску калькулятора користувач повинен вибрати пункт меню файл-калькулятор:
Рис. 18 Меню програми
У діалоговому вікні вибрати шлях переведення, ввести число та натиснути кнопку ОК. Для виходу натиснути кнопку Cancel.
Рис.19 Калькулятор
Довідка запускається натисненням кнопки F1. Для отримання довідки по методу переведення потрібно вибрати пункт у меню «Довідка»
Рис. 20 Меню довідкової системи
5. Аналіз результатів комп’ютерної реалізації програми
При тестуванні програми вводилися по два-три приклади чисел у кожній з систем числення для кожного з варіантів комбінацій додатніх-від’ємних чи цілих-дійсних чисел. Результати, що були отримані перевірялися і є правильними.
Отже, програма працює так, як повинна. Загалом програма має простий текстовий інтерфейс і дещо обмежені можливості, однак повністю задовольняє умови завдання. Програма тестувалася на системі високого рівня, тому про швидкість її роботи нічого сказати не можна, але теоретично така програма не може мати високі системні вимоги.
Висновки
Провівши дану розрахункову роботу я написав програму, закріпив теоретичні знання та практичні навички програмування, набуті при вивченні дисципліни “Проблемно-орієнтовані мови програмування”.
В ході виконання розрахункової роботи студенти я навчився самостійно працювати з літературою, розробляти алгоритми та програми на мові програмування Turbo C.Позитивними сторонами даної роботи є висока швидкість роботи, відносна простота коду. Недолік – певна незакінченість програми та відсутність ряду можливостей, які могли бути присутні.
Cписок використаної літератури
1. Методичні вказівки до курсової роботи з дисциплiни "Проблемно-орієнтовані мови програмування" для студентів спеціальності “Інтелектуальні системи прийняття рішень” / Укл. П.О.Кравець. - Львів: Видавництво Національного університету “Львівська політехніка”, 2005. - 21 с.
2. Прата С. - Программирование на языке С.
3. Керниган, Ричи – Язык Си.
4. Авторский коллектив "*.*" и СП "Интерквадро" Turbo Vision для С++ .
//функція,що виводить на екран діалогове вікно з інформацією про програму
void TProgApp::Info()
{
TDialog *d = new TDialog(TRect( 14, 5, 66, 16 ), "Iнформацiя про програму" );
d->insert( new TStaticText( TRect( 3, 1, 48, 10 ), "Курсова робота з П.О.М.П.\nстудента групи КН-119, IКНI, кафедра IСМ\nГайдiна В.А. aka Mace Windu\n\"Навчальна програма переведення дiйсних чисел з 2,8,10,16 у 2,8,10,16 системи числення\"" ) );
d->insert( new TButton( TRect( 39, 8, 49, 10 ), " OK ", cmCancel, bfNormal ) );
deskTop->execView( d );
destroy(d);
}
//функція, що виводить на еран вікно з текстом, записаним у файлі, ім’я якого //передається у неї як параметр char * fname
void TProgApp::Help(char * fname)
{
char s[256];
int y=1;
FILE * f;
f=fopen(fname,"r");
TDialog *d = new TDialog(TRect( 0, 0, 56, 20 ), "Довiдка про переведення числа" );
while(fgets(s,255,f)!=NULL)
{
d->insert( new TStaticText( TRect( 1, y, 55, y+1 ), strdup(s) ) );
//основна функція програми, запускає стартову заставку, потім запускає клас
//TProgApp
int main()
{
StartWindow();
TProgApp kursova;
kursova.run();
return 0;
}
Рефераты по информатикеЗ А В Д А Н Н Я на курсову роботу з дисципліни " Проблемно-орієнтовані мови програмування " Т е м а: "Навчальна програма переведення дійсних чисел
Оценок: 527 (Средняя 5 из 5)
Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.