МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
КАФЕДРА ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ
Звіт
До лабораторної роботи № 2
На тему: “ Розроблення тестової системи для оцінки самоконтролю ”
З дисципліни : " Системи штучного інтелекту "
Мета роботи - розробити програмне забезпечення для тестування самоконтролю на основі психоаналітичних тестів.
Завдання до виконання роботи
Розробити програмне забезпечення, яке розв’язуватиме всі завдання тестування і оцінки. ПЗ повинне реалізувати такі функції:
забезпечувати добру графічну ілюстрацію тестових елементів та їх вибір. Вибір об’єкта в кожній групі є обов’язковим;
забезпечувати обчислення результатів тестування ;
показувати: вибрані символи, результати тестування та висновок тестування ;
забезпечувати рестарт і поновлення тестування.
Код програми
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication14
{
public partial class Form1 : Form
{
int k = 0;
public int WhatTestNow =1 ;
public int CountOfScore=0;
public int FinnalScore = 0;
int PictureNumber = 0;
int[] ChangedPictures = new int[10];
int Question = 1;
public string[] ImgSrc ={"move1.jpg","move2.jpg","move3.jpg","move4.jpg",
"calm1.jpg","calm2.jpg","calm3.jpg","calm4.jpg",
"confidence1.jpg","confidence2.jpg","confidence3.jpg","confidence4.jpg",
"uncertainty1.jpg","uncertainty2.jpg","uncertainty3.jpg","uncertainty4.jpg",
};
public int[] ScoreMas = { 4, 8, 2, 10, 10, 8, 2, 4, 10, 8, 6, 2, 10, 8, 2, 6 };
public Form1()
{
InitializeComponent();
label1.Visible = false;
textBox1.Visible = false;
BackColor = Color.FromArgb(255, 255, 0);
pictureBox7.ImageLocation = ImgSrc[0];
pictureBox9.ImageLocation = ImgSrc[1];
pictureBox6.ImageLocation = ImgSrc[2];
pictureBox1.ImageLocation = ImgSrc[3];
PictureNumber = 3;
pictureBox8.BackColor=Color.FromArgb(255, 255, 255);
pictureBox10.BackColor = Color.FromArgb(255, 255, 255);
pictureBox5.BackColor = Color.FromArgb(255, 255, 255);
pictureBox2.BackColor = Color.FromArgb(255, 255, 255);
textBox1.BackColor = Color.FromArgb(255, 255, 0);
dataGridView1.RowCount = 4;
dataGridView1.ColumnCount = 2;
dataGridView1.Visible = false;
dataGridView1.Rows[0].Cells[0].Value = "Рух";
dataGridView1.Rows[1].Cells[0].Value = "Спокій";
dataGridView1.Rows[2].Cells[0].Value = "Впевненість";
dataGridView1.Rows[3].Cells[0].Value = "Невпевненість";
}
private void Form1_Load(object sender, EventArgs e)
{
label2.Text = "Питання " + Question.ToString() + " з 4";
}
private void button1_Click(object sender, EventArgs e)
{
pictureBox8.BackColor = Color.FromArgb(255, 255, 255);
pictureBox10.BackColor = Color.FromArgb(255, 255, 255);
pictureBox5.BackColor = Color.FromArgb(255, 255, 255);
pictureBox2.BackColor = Color.FromArgb(255, 255, 255);
if (CountOfScore != 0)
{
Question++;
ChangedPictures[Question - 1] = k;
FinnalScore = FinnalScore + CountOfScore;
dataGridView1.Rows[Question - 2].Cells[1].Value = CountOfScore.ToString();
if (PictureNumber < ImgSrc.Length - 1)
{
CountOfScore = 0;
label2.Text = "Питання " + Question.ToString() + " з 4";
WhatTestNow++;
pictureBox7.ImageLocation = ImgSrc[PictureNumber + 1];
pictureBox9.ImageLocation = ImgSrc[PictureNumber + 2];
pictureBox6.ImageLocation = ImgSrc[PictureNumber + 3];
pictureBox1.ImageLocation = ImgSrc[PictureNumber + 4];
PictureNumber = PictureNumber + 4;
}
else
{
dataGridView1.Visible = true;
label1.Visible = true;
textBox1.Visible = true;
button1.Visible = false;
label1.Text = "Ваш результат: " + FinnalScore.ToString();
if (FinnalScore >= 8 && FinnalScore <= 13)
textBox1.Text = " Ваша поведінка залежить передусім від тих, хто вас оточує. Ви легко занепадаєте духом, легко «вибухаєте», неохоче робите те, що вам не до вподоби. На вас справляє сильний вплив оточення, мікроклімат у колективі. Отже, ви не є господарем своїх рішень. Ви надто емоційні, і ваші вчинки залежать здебільшого від вашого настрою";
if (FinnalScore >= 14 && FinnalScore <= 20)
textBox1.Text = " Хоча й «пливете за течією», але намагаєтесь знайти свій стиль. Здатні до критичного аналізу. Коли здоровий глузд підказує, що ваша позиція хибна, ви цілком спроможні від неї відмовитись.";
if (FinnalScore >= 21 && FinnalScore <= 27)
textBox1.Text = " Вважаєте себе непогрішимим. І все ж, підпадаєте під сторонній вплив. Шукаєте золоту середину між власними переконаннями й тими вимогами, які ставить життя. Допомагає те, що ви інстинктивно обираєте правильний шлях.";
if (FinnalScore >= 28 && FinnalScore <= 34)
textBox1.Text = " Вам нелегко відмовитись від своїх принципів. Що більше хтось намагається на вас тиснути, то сильніший опір ви чините. Однак за впертістю приховується не стільки впевненість, скільки страх пошитися в дурні.";
if (FinnalScore >= 35 && FinnalScore <= 40)
{
textBox1.Text = " Якщо вже щось спаде вам на думку, то ніхто вас не переконає у протилежному. Попри все йдете до своєї мети. Але той , хто вас добре знає, може вміло та непомітно скеровувати ваші вчинки. Тож чи не варто проявляти менше впертості і більше кмітливості?.";
}
}
}
else
{
MessageBox.Show("Будь ласка виберіть картинку !!");
}
}
private void pictureBox6_Click(object sender, EventArgs e)
{
pictureBox8.BackColor = Color.FromArgb(255, 255, 255);
pictureBox10.BackColor = Color.FromArgb(255, 255, 255);
pictureBox2.BackColor = Color.FromArgb(255, 255, 255);
CountOfScore = ScoreMas[PictureNumber - 1];
pictureBox5.BackColor = Color.Blue;
k = PictureNumber - 1;
}
private void pictureBox7_Click(object sender, EventArgs e)
{
CountOfScore = ScoreMas[PictureNumber - 3];
k = PictureNumber - 3;
pictureBox8.BackColor = Color.Blue;
pictureBox10.BackColor = Color.FromArgb(255, 255, 255);
pictureBox2.BackColor = Color.FromArgb(255, 255, 255);
pictureBox5.BackColor = Color.FromArgb(255, 255, 255);
}
private void pictureBox9_Click(object sender, EventArgs e)
{
CountOfScore = ScoreMas[PictureNumber - 2];
pictureBox10.BackColor = Color.Blue;
pictureBox8.BackColor = Color.FromArgb(255, 255, 255);
pictureBox2.BackColor = Color.FromArgb(255, 255, 255);
pictureBox5.BackColor = Color.FromArgb(255, 255, 255);
k = PictureNumber - 2;
}
private void pictureBox1_Click_1(object sender, EventArgs e)
{
pictureBox8.BackColor = Color.FromArgb(255, 255, 255);
pictureBox10.BackColor = Color.FromArgb(255, 255, 255);
pictureBox5.BackColor = Color.FromArgb(255, 255, 255);
CountOfScore = ScoreMas[PictureNumber];
pictureBox2.BackColor = Color.Blue;
k = PictureNumber ;
}
private void pictureBox8_Click(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
Question = 1;
label2.Text = "Питання " + Question.ToString() + " з 4";
button1.Visible = true;
textBox1.BackColor = Color.FromArgb(255, 255, 0);
CountOfScore=0;
dataGridView1.Visible = false;
FinnalScore = 0;
label1.Visible = false;
textBox1.Visible = false;
BackColor = Color.FromArgb(255, 255, 0);
pictureBox7.ImageLocation = ImgSrc[0];
pictureBox9.ImageLocation = ImgSrc[1];
pictureBox6.ImageLocation = ImgSrc[2];
pictureBox1.ImageLocation = ImgSrc[3];
PictureNumber = 3;
pictureBox8.BackColor = Color.FromArgb(255, 255, 255);
pictureBox10.BackColor = Color.FromArgb(255, 255, 255);
pictureBox5.BackColor = Color.FromArgb(255, 255, 255);
pictureBox2.BackColor = Color.FromArgb(255, 255, 255);
}
}
}
Результати виконання
Висновок: на даній лабораторній роботі я розробив програмне забезпечення для тестування самоконтролю на основі психоаналітичних тестів.