2.5.3 Тестування завдання
Для запуску програми потрібно запустити на виконання файл MAIN.EXE. Для вірної роботи програми у тій же папці має бути файл-драйвер EGAVGA.bgi.
Дана програма може працювати під управлінням операційної системи сімейства Windows, починаючи від версії 95 та під управлінням ОС MS-DOS.
Мінімальні системні вимоги для коректної роботи програми:
- операційна система Windows 95, Windows 98 або MS-DOS;
- процесор – не менше 80386;
- оперативної пам’яті – 512 Кб;
- відеокарта – 16 біт;
- вільного місця на жорсткому диску – 1Мб.
Після запуску програми спочатку бачимо зображення електронної титульної сторінки (рис. 2.531).
Рисунок 2.531 - Зображення електронної титульної сторінки
Програма чекає, поки буде натиснута довільна клавiша.
Після натискання з’являється меню програми, з варіантами виконуваних операцій (рисунок 2.532)
Рис. 2.532 – Меню програми з варіантами дій
Для того щоб запустити перший модуль необхідно ввести 2 і натиснути клавішу вводу. Після цього ми побачимо зображення подібне до рисунка 2.533 (зображення залежить від вхідних даних).
Рис.2.533 – Завдання 1
Програма зберігає вихідні дані у файл TASK.OUT і чекає поки ми натиснемо будь-яку клавішу і потрапимо у головне меню.
Якщо вводимо 3 і натискаєм клавішу вводу, то запуститься підпрограма знаходження значення величини і номеру першого негативного і останнього позитивноо елементів у масиві( рис. 2.534).
Рис.2.534 – Завдання 2
Якщо введемо 4 і натискаєм клавішу вводу, то запуститься підпрограма знаходження кількості локальних мінімумів (рис. 2.535).
Рис.2.535 – Завдання 3
Якщо введемо 5 і натискаємо клавішу вводу, то запуститься підпрограма видалення зі списку k останніх елементів із звільненням зайнятої ними памяті (рис. 2.536)
Рис. 2.536 – Завдання 4
Якщо 6 і натискаємо клавішу вводу, появитьяс інформація про автора проекту(рис. 2.537).
Рис.2.537 – Вивід повідомлення про автора програми
Після натискання будь-якої клавіші ми потрапляєм у головне меню програми. Після вводу 7 і натисканні клавіші вводу, ми можем побачити, що програма припиняє своє виконання.
ВИСНОВКИ
Під час виконання даної курсової роботи я удосконалив свої знання в мові програмування С++ та навчився писати програми в середовищі Borland C++.
Під час виконання даної роботи були опрацьовані всі розділи мови програмування С++. Детальніше зосереджена була увага на таких розділах як масиви (їх оголошення та ініціалізація), стрічки, функції, файли (а саме зчитування даних з файлу, виведення даних у файл), структури та їх оголошення, вказівники. Створення титульної сторнки та головного меню спонукало до більш детальнішого опрацювання графічного режиму та функцій для графічних побудов.
ПЕРЕЛІК ПОСИЛАНЬ
1. Глинський Я.М., Анохін В.Є., Ряжська В.А. С++ і С++ Builder. Навч. посібн. 3-тє вид. – Львів: СПД Глинський, 2006. – 192с.
2. Пахомов Б.И. С/С++ и Borland C++ Builder для студента. – Спб.: БХВ-Петербург, 2006. – 448 с.
3. С/С++. Программирование на языке высокого уровня / Т.А. Павловская. СПб.: Питер, 2002. – 464 с
4. С для «чайников», 2-е издание.: Пер. с англ. – М.:ООО «И.Д.Вильямс», 2006. – 352с.
5. Сабуров С. Языки программирования C++. - М.: Бук_пресс, 2006. - 647 с.
6. http://soft.munic.msk.su/
Додаток 1
MAIN.CPP
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <iostream.h>
#include <conio.h>
#include <math.h>
//Pidkljuchenia dod. fajliv
#include "TYTUL.cpp"
#include "GRAPH.cpp"
#include "AVTOR.cpp"
#include "TASK1.cpp"
#include "TASK2.cpp"
#include "TASK3.cpp"
#include "TASK4.cpp"
void main()
{
//Pochatkovyj vyvid tytulky
GRAPH();
TYTUL();
closegraph();
int z=0;
while (z!=6)
{
GRAPH();
int xmax=getmaxx(),ymax=getmaxy();
setcolor(BLACK);
bar(0,0,xmax,ymax);
settextstyle(0,0,1);
setcolor(1);
outtextxy(150,30,"MENU");
setcolor(0);
outtextxy(50,40,"________________________________");
setcolor(4);
outtextxy(50,50,"1 - TYTULKA");
setcolor(2);
outtextxy(50,65,"2 - TASK1");
outtextxy(50,80,"3 - TASK2");
outtextxy(50,95,"4 - TASK3");
outtextxy(50,110,"5 - TASK4");
setcolor(13);
outtextxy(50,125,"6 - PRO AVTORA");
setcolor(4);
outtextxy(50,140,"7 - EXIT");
setcolor(0);
outtextxy(50,146,"________________________________");
setcolor(0);
outtextxy(50,450,"Vvedit nomer punktu z yakogo pochaty");
cin>>z;
switch (z)
{
case 1: closegraph();
GRAPH();
TYTUL(); break;
case 2: closegraph();
TASK1(); break;
case 3: closegraph();
TASK2(); break;
case 4: closegraph();
TASK3(); break;
case 5: closegraph();
TASK4(); break;
case 6: closegraph();
GRAPH();
AVTOR(); break;
case 7: exit(1); break; }
}
closegraph();
}
Додаток 2
TYTUL.CPP
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <dos.h>
void TYTUL()
{
setcolor(2);
rectangle(10,5,630,470);
setcolor(6);
setbkcolor(15);
outtextxy(170,10,"MINISTERSTO OSVITY I NAUKY UKRAINY");
outtextxy(150,25,"LUCKUY NACIONALNY TECHNICHNY UNIVERSYTET");
setcolor(4);
outtextxy(380,100,"Kafedra kompyuternoi ingenerii");
outtextxy(240,210,"Kursova robota");
outtextxy(250,230,"z predmety");
setcolor(GREEN);
outtextxy(240,245,"\"Programuvannia\"");
outtextxy(270,260,"na temy:");
outtextxy(200,275,"\"Rozrobka program movoju C++\"");
setcolor(1);
settextstyle (1,0,3);
outtextxy (380,320,"Vykonav st.gr.KSM-12");
outtextxy (380,335,"Misyuk V.V.");
outtextxy (380,350,"Pereviryla ");
outtextxy (380,365,"Zavisha V.V.");
setfillstyle(1,2);
outtextxy (280,440,"Lutsk 2010");
setcolor(4);
while (!kbhit())
{
outtextxy(200,455,"Natysnit' bud' jaku klavishu...");
delay(1000);
setcolor(15);
outtextxy(200,455,"Natysnit' bud' jaku klavishu...");
delay(1000);
setcolor(4);
}
clrscr();
}
Додаток 3
AVTOR.CPP
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <iostream.h>
#include <conio.h>
#include <math.h>
void AVTOR()
{
setbkcolor(15);
setcolor(GREEN);
outtextxy(240,210,"Vykonav st.gr. KSM-12");
setcolor(4);
outtextxy(275,230,"Misyuk V.V/");
setcolor(GREEN);
outtextxy(280,245,"Lutsk 2010");
outtextxy(200,getmaxy()-12,"Natysnit' bud jaku klavishu...");
getch();
clrscr();
}
Додаток 4
GRAPH.CPP
#include <iostream.h>
#include <graphics.h>
#include <conio.h>
#include <stdlib.h>
void GRAPH(){
int gdriver = DETECT, gmode, errorcode;
initgraph(&gdriver, &gmode, " ");
errorcode = graphresult();
if (errorcode != grOk)
{
cout << "Pomylka:"<< grapherrormsg(errorcode);
cout<< "\n Dlia vyhodu natysnit' bud' jaky klavishu";
getch();
exit(1);
}
}
Додаток 5
Блок-схема алгоритму
void main()
Додаток 6
void AVTOR()
Додаток 7
Блок-схема алгоритму
void TASK1()
... системах наукової класифікації. Однак перш ніж зануритися в об’єктно-орієнтовану розробку, давайте розглянемо деякі з властивостей, загальні для класу "об'єктів". Абстракція Ціль об'єктно-орієнтованого програмування полягає в тому, щоб побачити в задачі абстракції об'єктів реального світу. Що за реальні об'єкти малися на увазі? Буквально будь-які, аби вони давали представлення про функці ...
... процесором, тільки коли він працює в приміщенням режимі. Метою виконання даної курсової роботи є отримання практичних навичок роботи програмування мовою асемблера. Підсумком виконання курсової роботи є розробка алгоритму контролю на парність масиву даних, що зберігається в деякій області пам'яті і програми на мові асемблера, який реалізує даний алгоритм. 1. Загальний розділ Надійність ...
... x запишеться у вигляді наступної функції цей запис представляє собою приклад програми на мові Lisp. В даному курсовому проекті на мови Lisp розроблено програму Sierpins, яка реалізує побудову рекурсивних кривих Серінського. На початку програми встановлюється значення змінної *VMode*‚ яка керує установкою відео режиму, і за замовчуванням встановлена в значення 18. Ця установка відповідає ...
... сть у користуванні та невеликі розміри виконавчого файлу.. Створена нами програма проста та інтуїтивно зрозуміла і легка у користуванні. У пояснювальній записці вповні розглянута проблема пошуку коренів нелінійних рівнянь, наведені необхідні формули та теореми. Крім того, побудовані блок-схеми алгоритмів основних функцій відповідають діючим стандартам і вимогам. Отже, можемо зробити висновок, ...
0 комментариев