Розробка навчальної програми 'Проїзд дорожніх перехресть'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Украинский
    ,
    Формат файла:
    MS Word
    1,09 Мб
  • Опубликовано:
    2014-02-23
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Розробка навчальної програми 'Проїзд дорожніх перехресть'

Зміст

1. Вступ

. Огляд літературних джерел

2.1 Обгрунтування вибраної мови програмування

.2 Опис методів та алгоритмів вирішення задачі

2.3 Обгрунтування вибору базового рішення

. Спеціальна частина

.1 Основні функції програмного продукту

.2 Структура програмного продукту

.3 Розробка алгоритму

.4 Розробка програми

.5 Інструкція користувачу

.6 Результати тестування

Висновок

Список використаної літератури

Додаток

1. Вступ

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

Метою роботи є проаналізувати процес розробки програм з використанням процедур, дати опис середовища програмування для реалізації програми у середовищі Eclipse з використанням мови програмування Java.

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

Відповідно до мети перед роботою були поставлені такі завдання:

проаналізувати етапи розробки програм на ЕОМ;

описати середовище програмування;

розробити алгоритм з використанням процедур;

зробити опис роботи програми;

демонстрація роботи програми;

описати результати роботи програми;

зробити висновок по даній роботі;

в додатку - лістинг основних блоків програми.

2. Огляд літературних джерел

.1 Обгрунтування вибраної мови програмування

Java (вимовляється Джава; інколи - Ява) - об'єктно-орієнтована мова програмування, випущена компанією Sun Microsystems у 1995 році як основний компонент платформи Java. Зараз мовою займається компанія Oracle, яка придбала Sun Microsystems у 2009 році. Синтаксис мови багато в чому походить від C та C++. У офіційній реалізації, Java програми компілюються у байткод, який при виконанні інтерпретується віртуальною машиною для конкретної платформи.надає компілятор Java та віртуальну машину Java, які задовольняють специфікації Java Community Process, під ліцезією GNU General Public License.

Мова значно запозичила синтаксис із C і C++. Зокрема, взято за основу об'єктну модель С++, проте її модифіковано. Усунуто можливість появи деяких конфліктних ситуацій, що могли виникнути через помилки програміста та полегшено сам процес розробки об'єктно-орієнтованих програм. Ряд дій, які в С/C++ повинні здійснювати програмісти, доручено віртуальній машині. Передусім, Java розроблялась як платформо-незалежна мова, тому вона має менше низькорівневих можливостей для роботи з апаратним забезпеченням. За необхідності таких дій java дозволяє викликати підпрограми, написані іншими мовами програмування.вплинула на розвиток J++, що розроблялась компанією Microsoft. Роботу над J++ було зупинено через судовий позов компанії Sun Microsystems, оскільки ця мова програмування була модифікацією Java. Пізніше в новій платформі Microsoft .NET випустило J#, щоб полегшити міграцію програмістів J++ або Java на нову платформу. З часом нова мова програмування С#, стала основною мовою платформи, перейнявши багато чого з Java. J# востаннє включався в версіюMicrosoft Visual Studio 2005. Мова сценаріїв JavaScript має схожу із Java назву і синтаксис, але не пов'язана із Java.

.2 Опис методів та алгоритмів вирішення задачі

Змістом мови Java є об'єктно-орієнтоване програмування (OOP, Object-oriented Programming). Фактично всі програми Java об'єктно-орієнтовані (тоді як, наприклад, в мові C++ це не так).

Три принципи ООП

Всі мови об'єктно-орієнтованого програмування забезпечують механізми, які допомагають вам реалізувати об'єктно-орієнтовану модель. До них відносяться інкапсуляція, спадкоємство і поліморфізм.

Інкапсуляція

Інкапсуляція - це механізм, який зв'язує код разом з оброблюваними їм даними і зберігає їх в безпеці як від зовнішнього впливу, так від помилкового використання. Можна представити інкапсуляцію як захисну оболонку, яка оберігає код і дані від довільного доступу з інших кодів, визначених поза цією оболонкою. Доступ до коду і даних всередині оболонки строго контролюється через добре певний інтерфейс. Щоб співвіднести це з реальним світом, розглянемо автоматичну трансмісію автомобіля. Вона інкапсулює сотні біт інформації про вашу машину, наприклад, величину прискорення, нахил поверхні, на якій знаходиться машина, і позицію коробки передач. Як користувач ви маєте тільки один метод дії на цю складну інкапсуляцію - переміщення коробки передач. Ви не можете, наприклад вплинути на трансмісію, використовуючи сигнали повороту або склоочисники. Таким чином, коробка передач є вдало певний (насправді - унікальний) інтерфейс до трансмісії. Далі, все, що відбувається всередині трансмісії, ніяк не впливає на її зовнішні об'єкти. Наприклад, зсув важеля передач ніяк не позначається на сигналах повороту. Саме тому, що автоматична трансмісія інкапсульована, маса виробників автомобілів може реалізувати її будь-яким способом, яким вони хочуть. Проте з погляду водіїв всі трансмісії працюють однаково. Ту ж саму ідею можна застосувати і до програмування. Потужність інкапсульованого коду полягає в тому, що кожен знає, як дістати до нього доступ, і може користуватися його незалежно від деталей його реалізації і без боязні несподіваних побічних ефектів.

Основою інкапсуляції в мові Java є клас. Хоча класи будуть детально розглянуті далі, корисно буде їх коротке обговорення. Клас визначає структуру і поведінку (дані і код) деякого набору об'єктів. Кожен об'єкт заданого класу містить як структуру (дані), так і поведінку, визначувані класом (неначебто вони були проштамповані деяким шаблоном у формі класу). З цієї причини про об'єкт іноді говорять як про екземпляр класу. Таким чином, клас - це логічна конструкція, а об'єкт - це фізична реальність.

Коли ви створюєте клас, потрібно специфікувати код і дані, які складають цей клас. Всі разом ці елементи називають членами (members) класу. Дані, які визначені в класі, називають членами-змінними (member variables) або змінними екземпляра (instance variables). Код, який оперує цими даними, називають членами-методами (member methods) або просто методами (methods). У правильно записаних Java-програмах методи визначають, як можна використовувати члени-змінні. Це означає, що поведінка й інтерфейс класу визначаються методами, що оперують на даних його екземплярів.

Оскільки мета класу - інкапсуляція складності, то існують механізми скриття складності реалізації всередині класу. Кожен метод або змінна в класі може бути помічена як private (приватний або локальний) або public (загальний). Модифікатор public вказує на все, що потрібне або можна знати зовнішнім користувачам класу. Методи і дані з модифікатором private можуть бути доступні тільки в коді, що є членом даного класу. Будь-який код, що не є членом класу, не має доступу до private-методів або змінних. Оскільки private-члени класу виявляються доступними іншим частинам вашої програми тільки через public-методи класу, ви можете бути впевнені, що ніякі невідповідні дії не виконаються. Звичайно, це означає, що public-інтерфейс має бути ретельно спроектований, щоб не розкривати дуже багато внутрішніх членів класу.

Спадковість

Спадковість - процес, за допомогою якого один об'єкт набуває властивостей іншого об'єкту. Даний принцип важливий тому, що підтримує концепцію ієрархічної класифікації. Як вже розповідалося вище, найбільша частина знань стає керованою тільки за допомогою ієрархічних (тобто організованих зверху "вниз") класифікацій. Наприклад, порода пошукових мисливських собак Golden Retriever є частиною класифікації dog (собаки), яка, у свою чергу, є частина класу Memmal (ссавці) - підкласу великого класу Animal (тварини). Без застосування класифікацій кожен об'єкт потребував би явного визначення всіх своїх характеристик. При використанні спадковості об'єкт потребує визначення тільки тих якостей, які роблять його унікальним у власному класі. Він може успадковувати загальні властивості від свого батька. Тому саме механізм спадковості дає можливість одному об'єкту бути специфічним екземпляром більш загального випадку.

Спадковість взаємодіє також і з інкапсуляцією. Якщо даний клас інкапсулює деякі атрибути, то будь-який підклас матиме ті ж атрибути плюс атрибут, який він додає як частина своєї спеціалізації. Це ключова концепція, яка дозволяє об'єктно-орієнтованим програмам рости по складності лінійно, а не геометрично. Новий підклас успадковує всі атрибути всіх його предків. Він не має непередбачуваних взаємодій з більшістю решти кодів у системі.

Поліморфізм

Поліморфізм (від грец. - що "має багато форм") - властивість, яка дозволяє використовувати один інтерфейс для загального класу дій. Специфічна дія визначається точною природою ситуації. Розглянемо стек (список типу LIFO - Last-in, First-out). Ви можете мати програму, яка вимагає три типи стеків. Один стек використовується для цілих значень, інший - для значень з плаваючою крапкою, і третій - для символів. Алгоритм, який реалізує кожен стек, - один і той же, хоча дані, що зберігаються, різні. У не об'єктно-орієнтованій мові від вас би потрібно було створити три різні набори стекових підпрограм, кожен з яких мав би власне ім'я. Внаслідок поліморфізму в мові Java можна специфікувати загальний для всіх типів даних набір стекових підпрограм, що використовують одне і те ж ім'я.

.3 Обґрунтування вибору базового рішення

У Java є 2 основних пакети для створення графічних інтерфейсів ( Graphics User Interface ) . Це Abstract Windows Toolkit ( AWT ) і Swing . AWT використовує віджети операційної системи, тому ця бібліотека є трохи швидшою.

Для груповання компонентів інтерфейсу використовуються контейнери ( Container ) . Найчастіше використовується контейнер JFrame (є ще JWindows і JApplet ) . Методи , які можуть знадобитися:( x , y , w , h ) - вказує координати верхній лівій вершини вікна , а також її ширину і висоту.( bool ) - вказує , чи можна змінювати розмір вікна .( str ) - встановлює назву вікна .( bool ) - відображає вікно.( operation ) - вказує операцію , яка буде виконана при закритті вікна .

Основні елементи управління: - елемент для відображення фіксованого тексту;- простий edit - box ;- кнопка ;- елемент вибору ;- радіо кнопка.

При відображенні елементів управління використовуються спеціальні менеджери - LayoutManager .- використовується для послідовного відображення елементів . Якщо елемент не поміщається в конкретну рядок , він відображається у наступній.- відображення елементів у вигляді таблиці з однаковими розмірами вічок .- використовується при відображенні не більше 5 елементів . Ці елементи розташовуються по краях кадру і в Ценрт : North , South , East , West , Center.- відображає елементи у вигляді рядка або колонки.- дозволяє призначати місцерозташування і розмір кожного віджета . Це найскладніший , але і найефективніший вид відображення

 .

3. Спеціальна частина

3.1. Основні функції програмного продукту

Програма «Проїзд торожній перехресть» виконує такі функції:

Можливість проходження навчальних і екзаменаційних тестів .

Покозує результат який набраний під час проходження тесту.

Вивчення теорії з візуальним поясненням і коментування їх для кращого розуміння експертом.

Можливість ознайомлення з правилами проїзду перехресть.

Короткі теоретичні відомості про розробника.

.2 Структура програмного продукту

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

Головний клас програми (menu.java) містить головне меню програми(JMenuBar).

Клас class test1 - призначений для реалізації пробного тесту.

Основні елементи:

Такі самі елементи я використав в класі class examen призначений для реалізації екземенаційного тесту.

Класи zteoria, nereg, reg - призначений для виводу навчальної теорії по роїзде дорожніх перехресть.

Клас titulka- не мітить обробників подій, а лише виводить інформацію Про розробника.

Клас prog - виводить інформацію Про програму з текстового документую.


діаграма

3.4 Розробка програми

Для створення головного вікна курсової роботи я використав наступний програмний код:

JFrame f = new JFrame("Проїзд дорожніх перехресть"); // Створює головне вікно програми;.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Встановлює стандартну операцію закриття для вікна, без цього вікно не закриється після активування кнопки закриття(Стандартно HIDE_ON_CLOSE, що просто приховує вікно); .setResizable(false);// зобороняє змінювати розмір форми;.setSize(550, 390); // Встановлює розміри вікна.setVisible(true);// Вснановлює мовидимість=істина, тим самим показуючи вікно на екрані.

Перехід на тестові білети реалізований так:

 txtFileItem.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {test1();

}});

Для створення тесту бувреалізований наступні компонети:

JLabel l = new JLabel(""); // Загружає картинку для питання в JLabell0 = new JLabel("В якому порядку проїдуть перхрестя транспортні засоби?"); // Записує питання для завдання JLabell1 = new JLabel("Ваша оцінка:");l2 = new JLabel(""); // Записує результат пройденого тесту JLabel

Для створення текстовго поля бувреалізований наступний програмний код, який зчитує текст з зовнішнього текстового файлу і забороняє його редагування:

ta.setFont(tnr40);

StringBuffer contents = new StringBuffer();

BufferedReader reader = null;

try{

reader = new BufferedReader(new FileReader("resources\\prog.txt"));

String text = null;

while ((text = reader.readLine()) != null)

{ contents.append(text)

.append(System.getProperty(

"line.separator"));}

} catch (FileNotFoundException e1)

{ e1.printStackTrace();

} catch (IOException e1)

{e1.printStackTrace();

} finally

{ try

{

if (reader != null)

{

reader.close();}

} catch (IOException e1)

{

e1.printStackTrace();}}

ta.setText(contents.toString());

ta.setEditable(false);

3.5 Інструкція користувачу

Для запуску програми потрібно скопіювати папку проекту на локальний комп'ютером з усіма ресурсами і запустити PDP.jar після цього ми побачимо меню програми (Мал 3.1).

Мал. 3.1 Вікно головного меню

Для запуску пробного тесту зайдіть в Білети і виберіть пункт Тестові білети (Мал 3.2)

Мал 3.2. Вікно «Теоретичні білети»

Екземенаційні білети (Мал.3.3)

Мал 3.3. Вікно «Екземенаційні білети»

Після проходження білетів вибиває результат позитивний (Мал 3.4) і негативний (Мал 3.4)

Мал 3.4. Вікно результату «позитивного»

Мал 3.5. Вікно результату «негативного»

Вікно з правилами проїзду дорожніх перехресть запускається з вкладки меню «теорія» (Мал 3.6 - 3.8)

Мал 3.6. Вікно «Загальна теорія»

Мал 3.6. Вікно «Регульовані перехрестя»

 

Мал 3.6. Вікно «Не регульовані перехрестя»

3.6 Результати тестування

Параметри комп’ютера на якому проводилося тестування розробленої програми такі:

Процесор

 Intel(R) Core(TM) i5-3317U @ 1.70Hz (2CPUs)

Материнська плата

 Asus P5 VM

Оперативна пам’ять

6.00 Gb

Вінчестер

 500GB AHD710-1TU3-CBK <http://hard.rozetka.com.ua/a-data_ahd710-1tu3-cbk/p221536/>

Програмне забезпечення

 MyEclipse Blue

Windows version


Програмне забезпечення, яке необхідне для роботи розробленої програми:

Операційна система - Windows XP ServicePack 1;

Встановлена Java платформа та програма MyEclipse.

Програма займає 7,69 МБвільного простору на диску.

Висновок

Дана програма призначена для вивчення правил проїзду дорожніх перехресть.

Реалізація програми була здійснена на мові програмування Java середовищі розробки Myeclipse.

При розробці даної програми получив досвід у розробці програм з тестуванням.

навчальна програма дорожній алгоритм

Список використаної літератури

 Герберт Шилдт, Джеймс Холмс Искусство программирования на JAVA. - К.: Издательский дом «Вильямс», 2005.

Девид Фленаган Java у прикладах. Довідник

Торський П.О. ТЕХНОЛОГІЯ ПРОГРАМУВАННЯ ТА СТВОРЕННЯ ПРОГРАМНИХ ПРОДУКТІВ

Ноутон, Г. Шилдт Java 2. Наиболее полное руководство

Х.М. Дейтел, П.Дж. Дейтел, С.И. Сантри Технологии программированина Java 2. Книга 1. Графика, изд. М., «Бином-Пресс», 2003.

Х.М. Дейтел, П.Дж. Дейтел, С.И. Сантри Технологии программирования на Java 2. Книга 2. Распределенные приложения изд. М., «Бином-Пресс», 2003.

<http://javaland.com.ua/vykorystannya-java/mova-i-arxitektura-java/11/>

<http://uk.wikipedia.org/wiki/Java>

Файл menu.java:test;java.awt.Font;java.awt.event.ActionEvent;java.awt.event.ActionListener;javax.swing.ImageIcon;javax.swing.JFrame;javax.swing.JLabel;javax.swing.JMenu;javax.swing.JMenuBar;javax.swing.JMenuItem;class menu {f=new JFrame("Проїзд дорожніх перехресть");mBar=new JMenuBar();fmenu=new JMenu("Білети");tmenu=new JMenu("Теорія");help=new JMenu("Справка");font = new Font("Verdana", Font.BOLD, 12);l=new JLabel();icon1 = new ImageIcon("images//p1.jpg");menu(){

 JMenuItem txtFileItem = new JMenuItem("Тестові білети");

txtFileItem.setFont(font);

fmenu.add(txtFileItem);

txtFileItem.addActionListener(new ActionListener(){

@Overridevoid actionPerformed(ActionEvent arg0) {test1();

}});

JMenuItem imgFileItem = new JMenuItem("Екземенаційні білети");

imgFileItem.setFont(font);

fmenu.add(imgFileItem);

imgFileItem.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {();}});

 JMenuItem exitItem = new JMenuItem("Вихід");

exitItem.setFont(font);

 exitItem.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

System.exit(0);}});

 JMenuItem zteoria = new JMenuItem("Загальна теорія");

zteoria.setFont(font);

tmenu.add(zteoria);

zteoria.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

new zteoria();}});

JMenuItem reg= new JMenuItem("Регульовані перехрестя");

reg.setFont(font);

tmenu.add(reg);

reg.addActionListener(new ActionListener(){

@Overridevoid actionPerformed(ActionEvent arg0) {reg();

}});

 JMenuItem nereg = new JMenuItem("Нерегульовані перехрестя");

nereg.setFont(font);

tmenu.add(nereg);

nereg.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

new nereg();}});

JMenuItem tit = new JMenuItem("Титулка");

tit.setFont(font);

help.add(tit);

tit.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

new titulka();}});

JMenuItem prog = new JMenuItem("Про програму");

prog.setFont(font);

help.add(prog);

prog.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {prog();

}});

f.getContentPane().setLayout(null);

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.pack();

f.setLocationByPlatform(true);.setBounds(1, 1, 640, 20);.setBounds(20, 40, 600, 300);.add(mBar);.setIcon(icon1);.add(fmenu);.add(tmenu);.add(help);.add(exitItem);.setResizable(false);.add(l);.setSize(550,390);.setLocationRelativeTo(null);.setVisible(true);

}static void main(String[] args) {menu();

}

}

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=4;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=4;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});

//l1.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setEnabled(false);.setFont(tnr40);.addActionListener(new ActionListener() {void actionPerformed(ActionEvent e) {(k==1){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==2){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;4: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==3){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==4){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==5){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==6){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);button00.setEnabled(false);break;1: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==7){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;4: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==8){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;2: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==9){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}(k==10){button20.setEnabled(true);(res){0: JOptionPane.showMessageDialog(f,"Виберіть відповідь!","Warning",JOptionPane.WARNING_MESSAGE);break;1: s=s+1;JOptionPane.showMessageDialog(f,"Правильно:-)"+"\n");button00.setEnabled(false);break;2: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;3: JOptionPane.showMessageDialog(f,"Неправильно:-(","Error",JOptionPane.ERROR_MESSAGE);button00.setEnabled(false);break;:System.out.println("sdfd");

}res=0;}

}

});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.exit(0);

}});.addActionListener(new ActionListener() {void actionPerformed(ActionEvent e) {(k==1){.setVisible(true);.setVisible(false);.setVisible(false);(s<8){.setForeground(Red);.setForeground(Red);}else{.setForeground(Green);.setForeground(Green);}.setFont(tnr40);.setFont(tnr72);.setText(""+s);

}(k==2){k=1;button00.setEnabled(true);.setEnabled(false);.setIcon(icon10);.setText(" В якій відповіді правильно вказано дії автомобіля? ");.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(true);.setVisible(true);.setVisible(true);.showMessageDialog(f,"8.7.3\n"+

"Сигнали світлофора мають такі значення:\n"+

"б) зелений у вигляді стрілки (стрілок) на чорному фоні дозволяє рух у зазначеному напрямку (напрямках). Таке саме значення має\n"+

"сигнал у вигляді зеленої стрілки (стрілок) у додатковій секції світлофора.\n"+

"Сигнал у вигляді стрілки, що дозволяє поворот ліворуч, дозволяє й розворот, якщо він не заборонений дорожніми знаками.\n"+

"Сигнал у вигляді зеленої стрілки (стрілок) у додатковій (додаткових) секції, увімкнений разом із зеленим сигналом світлофора,\n"+

"інформує водія про те, що він має перевагу в зазначеному стрілкою (стрілками) напрямку (напрямках) руху перед транспортними \n"+

"засобами, що рухаються з інших напрямків;\n"+"Правильних відповідей: "+s);}(k==3){k=2;button00.setEnabled(true);.setEnabled(false);.setIcon(icon9);.setText(" Яким транспортним засобам заборонено рух?");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);.setVisible(false);.showMessageDialog(f,"16.12\n"+

"На перехресті рівнозначних доріг водій нерейкового транспортного засобу зобов'язаний дати дорогу транспортним засобам, що\n"+

"наближаються праворуч.\n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+

"На будь-якому нерегульованому перехресті трамвай, незалежно від напрямку його подальшого руху, має перевагу перед нерейковими\n"+

"транспортними засобами, що наближаються до нього по рівнозначній дорозі.\n"+"16.13\n"+

"Перед поворотом ліворуч і розворотом водій нерейкового транспортного засобу зобов'язаний дати дорогу трамваю попутного напрямку, а також \n"+

"транспортним засобам, що рухаються по рівнозначній дорозі в зустрічному напрямку прямо чи праворуч.\n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+"Правильних відповідей: "+s);}(k==4){k=3;button00.setEnabled(true);.setEnabled(false);.setIcon(icon8);.setText("Транспортні засоби проїдуть перехрестя в наступному порядку:");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);.showMessageDialog(f,"16.12\n"+

"На перехресті рівнозначних доріг водій нерейкового транспортного засобу зобов'язаний дати дорогу транспортним засобам, що\n"+

"наближаються праворуч.\n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+

"На будь-якому нерегульованому перехресті трамвай, незалежно від напрямку його подальшого руху, має перевагу перед нерейковими\n"+

"транспортними засобами, що наближаються до нього по рівнозначній дорозі."+"Правильних відповідей: "+s);}(k==5){k=4;.setEnabled(true);.setEnabled(false);.setIcon(icon7);.setText("Водій якого транспортного засобу повинен дати дорогу?");.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(true);.setVisible(true);.showMessageDialog(f,"16.12\n"+

"На перехресті рівнозначних доріг водій нерейкового транспортного засобу зобов'язаний дати дорогу транспортним засобам, що\n"+

"наближаються праворуч.\n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+

"На будь-якому нерегульованому перехресті трамвай, незалежно від напрямку його подальшого руху, має перевагу перед нерейковими\n"+

"транспортними засобами, що наближаються до нього по рівнозначній дорозі."+"Правильних відповідей: "+s);}(k==6){k=5;button00.setEnabled(true);.setEnabled(false);.setIcon(icon6);.setText(" Другим проїде перехрестя: ");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);.setVisible(false);.showMessageDialog(f,"16.11\n"+

"На перехресті нерівнозначних доріг водій транспортного засобу, що рухається по другорядній дорозі, повинен дати дорогу транспортним засобам, \n"+

"які наближаються до даного перехрещення проїзних частин по головній дорозі, незалежно від напрямку їх подальшого руху.\n"+

"16.12\n"+

"На перехресті рівнозначних доріг водій нерейкового транспортного засобу зобов'язаний дати дорогу транспортним засобам, що\n"+

"наближаються праворуч.\n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+

"На будь-якому нерегульованому перехресті трамвай, незалежно від напрямку його подальшого руху, має перевагу перед нерейковими\n"+

"транспортними засобами, що наближаються до нього по рівнозначній дорозі."+"Правильних відповідей: "+s);}(k==7){k=6;button00.setEnabled(true);.setEnabled(false);.setIcon(icon5);.setText("Транспортні засоби проїдуть перехрестя в наступному порядку:");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.showMessageDialog(f,"16.11\n"+

"На перехресті нерівнозначних доріг водій транспортного засобу, що рухається по другорядній дорозі, повинен дати дорогу транспортним засобам, \n"+

"які наближаються до даного перехрещення проїзних частин по головній дорозі, незалежно від напрямку їх подальшого руху.\n"+

"16.13\n"+

"Перед поворотом ліворуч і розворотом водій нерейкового транспортного засобу зобов'язаний дати дорогу трамваю попутного напрямку, а також \n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+"Правильних відповідей: "+s);}(k==8){k=7;button00.setEnabled(true);.setEnabled(false);.setIcon(icon4);.setText(" Другим проїде перехрестя: ");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);.showMessageDialog(f,"16.12\n"+

"На перехресті рівнозначних доріг водій нерейкового транспортного засобу зобов'язаний дати дорогу транспортним засобам, що\n"+

"наближаються праворуч.\n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+

"На будь-якому нерегульованому перехресті трамвай, незалежно від напрямку його подальшого руху, має перевагу перед нерейковими\n"+

"транспортними засобами, що наближаються до нього по рівнозначній дорозі."+"Правильних відповідей: "+s);}(k==9){.setEnabled(true);.setEnabled(false);=8;.setIcon(icon3);.setText("Водій якого транспортного засобу повинен дати дорогу?");.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(true);.setVisible(true);.showMessageDialog(f,"16.12\n"+

"На перехресті рівнозначних доріг водій нерейкового транспортного засобу зобов'язаний дати дорогу транспортним засобам, що\n"+

"наближаються праворуч.\n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+

"На будь-якому нерегульованому перехресті трамвай, незалежно від напрямку його подальшого руху, має перевагу перед нерейковими\n"+

"транспортними засобами, що наближаються до нього по рівнозначній дорозі."+"Правильних відповідей: "+s);}(k==10){.setEnabled(true);.setEnabled(false);=9;.setIcon(icon2);.setText("Автомобілі проїдуть перехрестя в наступному порядку:");.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(true);.showMessageDialog(f,"16.11\n"+

"На перехресті нерівнозначних доріг водій транспортного засобу, що рухається по другорядній дорозі, повинен дати дорогу транспортним засобам, \n"+

"які наближаються до даного перехрещення проїзних частин по головній дорозі, незалежно від напрямку їх подальшого руху.\n"+

"16.13\n"+

"Перед поворотом ліворуч і розворотом водій нерейкового транспортного засобу зобов'язаний дати дорогу трамваю попутного напрямку, а також \n"+

"транспортним засобам, що рухаються по рівнозначній дорозі в зустрічному напрямку прямо чи праворуч.\n"+

"Цим правилом повинні керуватися між собою і водії трамваїв.\n"+"Правильних відповідей: "+s);}

}});.add(p);f.add(p1);f.add(p2);.setBounds(0,0,450, 400);.setLayout(new FlowLayout());.add(l); .add(l0);.add(b01);p.add(b02);p.add(b03);.add(b11);p.add(lb11);p.add(b12);p.add(b13);.add(b21);p.add(b22);.add(b31);p.add(b32);p.add(b33);p.add(b34);.add(b41);p.add(b42);p.add(b43);.add(b51);p.add(b52);p.add(b53);.add(b61);p.add(b62);.add(b71);p.add(b72);p.add(b73);.add(b81);p.add(b82);p.add(b83);p.add(b84);.add(b91);p.add(b92);p.add(b93);.setBounds(0,400,450, 280);.setLayout(new FlowLayout());.add(button00);.add(button20);.setLayout(new FlowLayout());.setBounds(0, 0, 455, 500);.add(l1);p2.add(l2);.add(button21);.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);.setResizable(false);.setSize(455,530);.setLocationRelativeTo(null);.setVisible(true);

}static void main(String[] args) {test1();

}}

Файл examen.java:test;java.awt.Color;java.awt.FlowLayout;java.awt.Font;java.awt.event.ActionEvent;java.awt.event.ActionListener;java.awt.event.ItemEvent;java.awt.event.ItemListener;javax.swing.ButtonGroup;javax.swing.ImageIcon;javax.swing.JButton;javax.swing.JFrame;javax.swing.JLabel;javax.swing.JPanel;javax.swing.JRadioButton;class examen {f=new JFrame("Екеменаційні білети");p= new JPanel();p1= new JPanel();p2= new JPanel();tnr40=new Font("Times New Roman",Font.BOLD,50);tnr72=new Font("Times New Roman",Font.BOLD,310);Red = new Color(255, 0, 0); Green = new Color(0, 255, 0);l = new JLabel("");l0 = new JLabel("В якому порядку проїдуть перхрестя транспортні засоби?");l1 = new JLabel("Ваша оцінка:");l2 = new JLabel("");bg0 = new ButtonGroup();bg1 = new ButtonGroup();bg2 = new ButtonGroup();bg3 = new ButtonGroup();bg4 = new ButtonGroup();bg5 = new ButtonGroup();bg6 = new ButtonGroup();bg7 = new ButtonGroup();bg8 = new ButtonGroup();bg9 = new ButtonGroup();b01= new JRadioButton("Червоний, синій, жовтий, зелений;");b02= new JRadioButton("Жовтий, зелений, червоний, синій;");b03= new JRadioButton("Червоний, зелений, синій, жовтий.");b11= new JRadioButton("Жовтий виїде на перехрестя і зепиниться шоб дати дорогу");lb11=new JLabel(" зеленому; зелений, синій, червоний, жовтий.");b12= new JRadioButton("Жовтий, зелений, червоний, синій.");b13= new JRadioButton("зелений, синій, червоний, жовтий.");b21= new JRadioButton("Водій мотоцикла;");b22= new JRadioButton("Водій вантажного автомобіля.");b31= new JRadioButton("Синій автомобіль;");b32= new JRadioButton("Зелений автомобіль;");b33= new JRadioButton("Червоний автомобіль;");b34= new JRadioButton("Жовтий автомобіль.");b41= new JRadioButton("Мотоцикл, автомобіль, трамвай;");b42= new JRadioButton("Трамвай, автомобіль, мотоцикл;");b43= new JRadioButton("Трамвай, мотоцикл, автомобіль.");b51= new JRadioButton("Синій автомобіль;");b52= new JRadioButton("Зелений автомобіль;");b53= new JRadioButton("Червоний автомобіль.");b61= new JRadioButton("Водій автобуса;");b62= new JRadioButton("Водій Мотоцикла.");b71= new JRadioButton("Трамвай, автобус, легковий автомобіль;");b72= new JRadioButton("Автобус, легковий автомобіль, трамвай;");b73= new JRadioButton("Легковий автомобіль, трамвай, автобус.");b81= new JRadioButton("Трамваю і мотоциклу;");b82= new JRadioButton("Автомобілю і мотоциклу;");b83= new JRadioButton("Всісм транспортним засобам;");b84= new JRadioButton("Трамваю, вантажному автомобілю і мотоциклу.");b91= new JRadioButton("Поступився дорогою мотоциклу і розвернувся на перехресті;");b92= new JRadioButton("Поступився дорогою трамваю і розвернувся на перехресті;");b93= new JRadioButton("Поступився дорогою трамваю, мотоциклу і розвернувся на перехресті;");button20 = new JButton("Продовжити");button21 = new JButton("Завершити");icon1 = new ImageIcon("images\\p01.jpg");icon2 = new ImageIcon("images\\p02.jpg");icon3 = new ImageIcon("images\\p03.jpg");icon4 = new ImageIcon("images\\p04.jpg");icon5 = new ImageIcon("images\\p05.jpg");icon6 = new ImageIcon("images\\p06.jpg");icon7 = new ImageIcon("images\\p07.jpg");icon8 = new ImageIcon("images\\p08.jpg");icon9 = new ImageIcon("images\\p09.jpg");icon10 = new ImageIcon("images\\p10.jpg");res=0,s=0;k=10;examen(){.setIcon(icon1);.add(b01);bg0.add(b02);bg0.add(b03);.add(b11);bg1.add(b12);bg1.add(b13);.add(b21);bg2.add(b22);.add(b31);bg3.add(b32);bg3.add(b33);bg3.add(b34);.add(b41);bg4.add(b42);bg4.add(b43);.add(b51);bg5.add(b52);bg5.add(b53);.add(b61);bg6.add(b62);.add(b71);bg7.add(b72);bg7.add(b73);.add(b81);bg8.add(b82);bg8.add(b83);bg5.add(b84);.add(b91);bg9.add(b92);bg9.add(b93);.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=4;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=4;}});.addItemListener(new ItemListener(){

@Overridevoid itemStateChanged(ItemEvent e) {=1;

}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=2;}});.addItemListener(new ItemListener(){void itemStateChanged(ItemEvent e) {=3;}});.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setFont(tnr40);.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.exit(0);

}});.addActionListener(new ActionListener() {void actionPerformed(ActionEvent e) {(k==1){(res){0: res=0;break;1: res=0;break;2: res=0;break;3: s=s+1;res=0;break;:System.out.println("sdfd");}.setVisible(true);.setVisible(false);.setVisible(false);(s<8){.setForeground(Red);.setForeground(Red);}else{.setForeground(Green);.setForeground(Green);}.setFont(tnr40);.setFont(tnr72);.setText(""+s);

}(k==2){k=1;.setIcon(icon10);.setText(" В якій відповіді правильно вказано дії автомобіля? ");.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(true);.setVisible(true);.setVisible(true);(res){0: res=0;break;1: s=s+1;res=0;break;2: res=0;break;3: res=0;break;4: res=0;break;:System.out.println("sdfd");}}(k==3){k=2;.setIcon(icon9);.setText(" Яким транспортним засобам заборонено рух?");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);.setVisible(false);(res){0: res=0;break;1: s=s+1;res=0;break;2: res=0;break;3: res=0;break;:System.out.println("sdfd");}}(k==4){k=3;.setIcon(icon8);.setText("Транспортні засоби проїдуть перехрестя в наступному порядку:");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);(res){0: res=0;break;1: s=s+1;res=0;break;2: res=0;break;3: res=0;break;:System.out.println("sdfd");}}(k==5){k=4;.setIcon(icon7);.setText("Водій якого транспортного засобу повинен дати дорогу?");.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(true);.setVisible(true);(res){0: res=0;break;1: s=s+1;res=0;break;2: res=0;break;3: res=0;break;:System.out.println("sdfd");

}}(k==6){k=5;.setIcon(icon6);.setText(" Другим проїде перехрестя: ");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);.setVisible(false);(res){0: res=0;break;1: s=s+1;res=0;break;2: res=0;break;3: res=0;break;:System.out.println("sdfd");

}}(k==7){k=6;.setIcon(icon5);.setText("Транспортні засоби проїдуть перехрестя в наступному порядку:");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);(res){0: res=0;break;1: s=s+1;res=0;break;2: res=0;break;3: res=0;break;4: res=0;;break;:System.out.println("sdfd");}}(k==8){k=7;.setIcon(icon4);.setText(" Другим проїде перехрестя: ");.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(false);.setVisible(false);(res){0: res=0;break;1: res=0;break;2: s=s+1;res=0;break;:System.out.println("sdfd");

}}(k==9){k=8;.setIcon(icon3);.setText("Водій якого транспортного засобу повинен дати дорогу?");.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(true);.setVisible(true);(res){0: res=0;break;1: res=0;break;2: res=0;break;3: s=s+1;res=0;break;:System.out.println("sdfd");

}}(k==10){k=9;.setIcon(icon2);.setText("Автомобілі проїдуть перехрестя в слідойочому порядку:");.setVisible(false);.setVisible(false);.setVisible(false);.setVisible(true);.setVisible(true);.setVisible(true);.setVisible(true);(res){0: res=0;;break;1: s=s+1;res=0;break;2: res=0;break;3: res=0;break;:System.out.println("sdfd");

}}}});.add(p);f.add(p1);f.add(p2);.setBounds(0,0,450, 400);.setLayout(new FlowLayout());.add(l); .add(l0);.add(b01);p.add(b02);p.add(b03);.add(b11);p.add(lb11);p.add(b12);p.add(b13);.add(b21);p.add(b22);.add(b31);p.add(b32);p.add(b33);p.add(b34);.add(b41);p.add(b42);p.add(b43);.add(b51);p.add(b52);p.add(b53);.add(b61);p.add(b62);.add(b71);p.add(b72);p.add(b73);.add(b81);p.add(b82);p.add(b83);p.add(b84);.add(b91);p.add(b92);p.add(b93);.setBounds(0,400,450, 280);.setLayout(new FlowLayout());.add(button20);.setLayout(new FlowLayout());.setBounds(0, 0, 455, 500);.add(l1);p2.add(l2);.add(button21);.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);.setResizable(false);.setSize(455,530);.setLocationRelativeTo(null);.setVisible(true);}static void main(String[] args) {examen();

}

}

Файл zteoria.java:test;java.awt.event.ActionEvent;java.awt.event.ActionListener;javax.swing.ImageIcon;javax.swing.JButton;javax.swing.JFrame;javax.swing.JLabel;javax.swing.JPanel;class zteoria {f = new JFrame("Загальна теорія");p=new JPanel();l1= new JLabel();b1= new JButton("");b2= new JButton("");b3= new JButton("");b4= new JButton("");b5= new JButton("");icon0 = new ImageIcon("images\\z0.jpg");icon1 = new ImageIcon("images\\z1-1.jpg");icon1_1 = new ImageIcon("images\\z1-2.jpg");icon2 = new ImageIcon("images\\z2.jpg");icon3 = new ImageIcon("images\\z3.jpg");icon4 = new ImageIcon("images\\z4.jpg");icon5_1 = new ImageIcon("images\\z5.jpg");icon5 = new ImageIcon("images\\z5-0.jpg");icon6 = new ImageIcon("images\\z6-1.jpg");icon7 = new ImageIcon("images\\z7-1.jpg");icon8 = new ImageIcon("images\\z8.jpg");icon9 = new ImageIcon("images\\z9.jpg");icon10 = new ImageIcon("images\\z10.jpg");icon11_1 = new ImageIcon("images\\z11-0.jpg");icon11 = new ImageIcon("images\\z11.jpg");icon12 = new ImageIcon("images\\z12.jpg");icon13 = new ImageIcon("images\\z13.jpg");icon14 = new ImageIcon("images\\z14.jpg");icon15 = new ImageIcon("images\\z15.jpg");i=18,j=1;zteoria(){.add(p);.setLayout(null);nz = new ImageIcon("images\\nz1.png");

b1.setIcon(nz);

ImageIcon nz2 = new ImageIcon("images\\nz4.png");

b2.setIcon(nz2);

ImageIcon vp = new ImageIcon("images\\vp1.png");

b3.setIcon(vp);

ImageIcon vp2 = new ImageIcon("images\\vp4.png");

b4.setIcon(vp2);

ImageIcon x = new ImageIcon("images\\exit1.png");

b5.setIcon(x);

l1.setIcon(icon0);.setEnabled(false);.setEnabled(false);.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);(j==1){i=2;l1.setIcon(icon1);.setEnabled(false);.setEnabled(false);}(j==2){j=1;i=3;l1.setIcon(icon1_1);}(j==3){j=2;i=4;l1.setIcon(icon2);}(j==4){j=3;i=5;l1.setIcon(icon3);}(j==5){j=4;i=6;l1.setIcon(icon4);}(j==6){j=5;i=7;l1.setIcon(icon5);}(j==7){j=6;i=8;l1.setIcon(icon5_1);}(j==8){j=7;i=9;l1.setIcon(icon6);}(j==9){j=8;i=10;l1.setIcon(icon7);}(j==10){j=9;i=11;l1.setIcon(icon8);}(j==11){j=10;i=12;l1.setIcon(icon9);}(j==12){j=11;i=13;l1.setIcon(icon10);}(j==13){j=12;i=14;l1.setIcon(icon11_1);}(j==14){j=13;i=15;l1.setIcon(icon11);}(j==15){j=14;i=16;l1.setIcon(icon12);}(j==16){j=15;i=17;l1.setIcon(icon13);}(j==17){j=16;i=18;l1.setIcon(icon14);}(j==18){j=17;i=19;l1.setIcon(icon15);}(j==19){j=18;i=1;l1.setIcon(icon0);

}

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {=0;b1.setEnabled(false);.setEnabled(false);.setEnabled(true);.setEnabled(true);.setIcon(icon0);

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);(i==18){i=0;j=18;l1.setIcon(icon0);}(i==17){i=18;j=17;l1.setIcon(icon15);.setEnabled(false);.setEnabled(false);}(i==16){i=17;j=16;l1.setIcon(icon14);}(i==15){i=16;j=15;l1.setIcon(icon13);}(i==14){i=15;j=14;l1.setIcon(icon12);}(i==13){i=14;j=13;l1.setIcon(icon11);}(i==12){i=13;j=12;l1.setIcon(icon11_1);}(i==11){i=12;j=11;l1.setIcon(icon10);}(i==10){i=11;j=10;l1.setIcon(icon9);}(i==9){i=10;j=9;l1.setIcon(icon8);}(i==8){i=9;j=8;l1.setIcon(icon7);}(i==7){i=8;j=7;l1.setIcon(icon6);}(i==6){i=7;j=6;l1.setIcon(icon5_1);}(i==5){i=6;j=5;l1.setIcon(icon5);}(i==4){i=5;j=4;l1.setIcon(icon4);}(i==3){i=4;j=3;l1.setIcon(icon3);}(i==2){i=3;j=2;l1.setIcon(icon2);}(i==1){i=2;j=1;l1.setIcon(icon1_1);}(i==0){i=1;j=17;l1.setIcon(icon1);}

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);=17;b3.setEnabled(false);.setEnabled(false);.setIcon(icon15);

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.exit(0);

}});.add(l1);l1.setBounds(120, -10, 950, 710);.add(b1);b1.setBounds(10, 40, 95, 200);.add(b2);b2.setBounds(10, 300, 95, 170);.add(b3);b3.setBounds(1080, 40, 95, 200);.add(b4);b4.setBounds(1080, 300, 95, 170);.add(b5);b5.setBounds(1080, 500, 95, 170);.setSize(1200,730);.setResizable(false);.setLocationRelativeTo(null);.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);.setVisible(true);

}static void main(String[] args) {();}}

Файл reg.java:test;java.awt.Frame;java.awt.event.ActionEvent;java.awt.event.ActionListener;javax.swing.ImageIcon;javax.swing.JButton;javax.swing.JFrame;javax.swing.JLabel;javax.swing.JPanel;class reg {f = new JFrame("Регульовані перехрестя");p=new JPanel();l1= new JLabel();b1= new JButton("");b2= new JButton("");b3= new JButton("");b4= new JButton("");b5= new JButton("");icon5_1 = new ImageIcon("images\\z5.jpg");icon5 = new ImageIcon("images\\z5-0.jpg");icon6 = new ImageIcon("images\\z6-1.jpg");icon7 = new ImageIcon("images\\z7-1.jpg");icon8 = new ImageIcon("images\\z8.jpg");icon9 = new ImageIcon("images\\z9.jpg");icon10 = new ImageIcon("images\\z10.jpg");i=2,j=1;reg(){.add(p);.setLayout(null);nz = new ImageIcon("images\\nz1.png");

b1.setIcon(nz);

ImageIcon nz2 = new ImageIcon("images\\nz4.png");

b2.setIcon(nz2);

b3.setIcon(vp);

ImageIcon vp2 = new ImageIcon("images\\vp4.png");

b4.setIcon(vp2);

ImageIcon x = new ImageIcon("images\\exit1.png");

b5.setIcon(x);

l1.setIcon(icon5);.setEnabled(false);.setEnabled(false);.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);(j==1){i=2;l1.setIcon(icon5);.setEnabled(false);.setEnabled(false);}(j==2){j=1;i=3;l1.setIcon(icon5_1);}(j==3){j=2;i=4;l1.setIcon(icon6);}(j==4){j=3;i=5;l1.setIcon(icon7);}(j==5){j=4;i=6;l1.setIcon(icon8);}(j==6){j=5;i=7;l1.setIcon(icon9);}(j==7){j=6;i=1;l1.setIcon(icon10);}

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {=2;b1.setEnabled(false);.setEnabled(false);.setEnabled(true);.setEnabled(true);.setIcon(icon5);

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);(i==7){j=6;l1.setIcon(icon10);.setEnabled(false);.setEnabled(false);}(i==6){i=7;j=5;l1.setIcon(icon9);}(i==5){i=6;j=4;l1.setIcon(icon8);}(i==4){i=5;j=3;l1.setIcon(icon7);}(i==3){i=4;j=2;l1.setIcon(icon6);}(i==2){i=3;j=1;l1.setIcon(icon5_1);}(i==1){i=2;j=6;l1.setIcon(icon5);}

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);=6;b3.setEnabled(false);.setEnabled(false);.setIcon(icon10);

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.exit(0);

}});.add(l1);l1.setBounds(120, -10, 950, 710);.add(b1);b1.setBounds(10, 40, 95, 200);.add(b2);b2.setBounds(10, 300, 95, 170);.add(b3);b3.setBounds(1080, 40, 95, 200);.add(b4);b4.setBounds(1080, 300, 95, 170);.add(b5);b5.setBounds(1080, 500, 95, 170);.setSize(1200,730);.setResizable(false);.setState(Frame.MAXIMIZED_BOTH);.setLocationRelativeTo(null);.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);.setVisible(true);

}static void main(String[] args) {();}}

Файл nereg.java:test;java.awt.event.ActionEvent;java.awt.event.ActionListener;javax.swing.ImageIcon;javax.swing.JButton;javax.swing.JFrame;javax.swing.JLabel;javax.swing.JPanel;class nereg {f = new JFrame("Не регульовані перехрестя");p=new JPanel();l1= new JLabel();b1= new JButton("");b2= new JButton("");b3= new JButton("");b4= new JButton("");b5= new JButton("");icon11_1 = new ImageIcon("images\\z11-0.jpg");icon11 = new ImageIcon("images\\z11.jpg");icon12 = new ImageIcon("images\\z12.jpg");icon13 = new ImageIcon("images\\z13.jpg");icon14 = new ImageIcon("images\\z14.jpg");icon15 = new ImageIcon("images\\z15.jpg");i=2,j=1;nereg(){.add(p);.setLayout(null);nz = new ImageIcon("images\\nz1.png");

b1.setIcon(nz);

ImageIcon nz2 = new ImageIcon("images\\nz4.png");

b2.setIcon(nz2);

ImageIcon vp = new ImageIcon("images\\vp1.png");

b3.setIcon(vp);

ImageIcon vp2 = new ImageIcon("images\\vp4.png");

b4.setIcon(vp2);

ImageIcon x = new ImageIcon("images\\exit1.png");

b5.setIcon(x);

l1.setIcon(icon11_1);.setEnabled(false);.setEnabled(false);.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);(j==1){i=2;l1.setIcon(icon11_1);.setEnabled(false);.setEnabled(false);}(j==2){j=1;i=3;l1.setIcon(icon11);}(j==3){j=2;i=4;l1.setIcon(icon12);}(j==4){j=3;i=5;l1.setIcon(icon13);}(j==5){j=4;i=6;l1.setIcon(icon14);}(j==6){j=5;i=7;l1.setIcon(icon15);}

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {=2;b1.setEnabled(false);.setEnabled(false);.setEnabled(true);.setEnabled(true);.setIcon(icon11_1);

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);(i==6){j=5;l1.setIcon(icon15);.setEnabled(false);.setEnabled(false);}(i==5){i=6;j=4;l1.setIcon(icon14);}(i==4){i=5;j=3;l1.setIcon(icon13);}(i==3){i=4;j=2;l1.setIcon(icon12);}(i==2){i=3;j=1;l1.setIcon(icon11);}(i==1){i=2;j=5;l1.setIcon(icon11_1);}

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.setEnabled(true);.setEnabled(true);=5;b3.setEnabled(false);.setEnabled(false);.setIcon(icon15);

}});.addActionListener(new ActionListener(){void actionPerformed(ActionEvent arg0) {.exit(0);

}});.add(l1);l1.setBounds(120, -10, 950, 710);.add(b1);b1.setBounds(10, 40, 95, 200);.add(b2);b2.setBounds(10, 300, 95, 170);.add(b3);b3.setBounds(1080, 40, 95, 200);.add(b4);b4.setBounds(1080, 300, 95, 170);.add(b5);b5.setBounds(1080, 500, 95, 170);.setSize(1200,730);.setResizable(false);.setLocationRelativeTo(null);.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);.setVisible(true);

}static void main(String[] args) {nereg();}

}

Файл titulka.java:test;java.awt.Font;javax.swing.JFrame;javax.swing.JPanel;javax.swing.JTextArea;class titulka {f = new JFrame("Про розробника");panel=new JPanel();tnr40=new Font("Times New Roman",Font.BOLD,14);ta = new JTextArea();titulka(){.setFont(tnr40);.setText("\t\t Міністерство освіти і науки України\n"+

"\t\tДрогодицький механіка-технологічний Коледж\n\n\n\n\n\n\n\n\n\n\n\n\n"+

"\t\t Курсова робота\n"+

"\t\tна тему: «Проїзд дорожніх перехресть»\n\n\n\n\n\n\n\n\n\n\n\n\n"+

"\t\t\t\tВиконав студент групи ПК-41:\n"+

"\t\t\t\tМаландій Євгеній\n\n\n\n\n\n\n\n\n\n"+

"\t\t\tДрогобич 2014р."

);.setEditable(false);.add(ta);.setBounds(0, 0, 600, 900);.setBounds(0, 0, 600, 900);.setSize(600,730);.setLocationRelativeTo(null);.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);.setVisible(true);.add(panel);

}static void main(String[] args) {titulka();

}

}

Файл prog.java:test;java.awt.Font;java.awt.GridLayout;java.io.BufferedReader;java.io.FileNotFoundException;java.io.FileReader;java.io.IOException;javax.swing.JFrame;javax.swing.JLabel;javax.swing.JPanel;javax.swing.JTextArea;class prog {f = new JFrame("Про розробника");panel=new JPanel();tnr40=new Font("Times New Roman",Font.BOLD,14);ta = new JTextArea(20,20);l=new JLabel();prog(){.setFont(tnr40);contents = new StringBuffer();

BufferedReader reader = null;

try

{

reader = new BufferedReader(new FileReader("resources\\prog.txt"));

String text = null;

while ((text = reader.readLine()) != null)

{

contents.append(text)

.append(System.getProperty(

"line.separator"));}

} catch (FileNotFoundException e1)

{ e1.printStackTrace();

} catch (IOException e1)

{e1.printStackTrace();

} finally

{

try

{

if (reader != null)

{

reader.close();}

} catch (IOException e1)

{

e1.printStackTrace();}}

ta.setText(contents.toString());

ta.setEditable(false);

.add(ta);.setSize(370,215);.setLocationRelativeTo(null);.setLayout(new GridLayout(1,1));.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);.setVisible(true);.add(panel);

}static void main(String[] args) {prog();

}

Похожие работы на - Розробка навчальної програми 'Проїзд дорожніх перехресть'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!