close

Вход

Забыли?

вход по аккаунту

?

Лаб03 Автоматы

код для вставкиСкачать
Министерство образования и науки Украины
Национальный аэрокосмический университет им.Н.Е.Жуковского
"ХАИ"
Отчёт по лабораторной работе №3
по предмету: "Теория алгоритмов и математическая логика"
на тему: "Конечные автоматы"
Сделал:
студент 325 группы
Заярный А.В.
Проверила:
Слепичева М.А
Харьков 2013
Цель: построить граф для автомата и программно реализовать его работу.
Вариант 6
Исходные данные:
3/11/22/21/24/22/14/14/14/21/12/13/1 Граф автомата:
Реализация работы автомата:
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 avtomat
{
public partial class Form1 : Form
{
public int[,,] values;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
values = new int[3, 4, 2];
int[] status = { 3, 1, 2, 1, 4, 2, 4, 4, 4, 1, 2, 3 };
int[] output = { 1, 2, 2, 2, 2, 1, 1, 1, 2, 1, 1, 1 };
for (int i = 0; i < 3; i++)
for (int j = 0; j < 4; j++)
{
values[i, j, 0] = status[i * 4 + j];
values[i, j, 1] = output[i * 4 + j];
}
/*
Random r = new Random();
for (int i = 0; i < 3; i++)
for (int j = 0; j < 4; j++)
{
values[i, j, 0] = r.Next(1,5);
values[i, j, 1] = r.Next(1,4);
}
*/
}
private void button1_Click(object sender, EventArgs e)
{
try
{
output.Text = "";
int status = 1;
for (int i = 0; i < input.Text.Length; i++)
{
output.Text += values[int.Parse(input.Text[i].ToString())-1, status-1, 1].ToString();
status = values[int.Parse(input.Text[i].ToString())-1, status-1, 0];
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message+"\nВводимые значения должны быть в интервале [1,3]!");
}
}
private void button2_Click(object sender, EventArgs e)
{
string message=" x | 1 | 2 | 3 | 4 |\n";
for (int i = 0; i < 3; i++)
{
message += " " + (i + 1).ToString() + " |";
for (int j = 0; j < 4; j++)
{
message += " " + values[i, j, 0].ToString() + "/" + values[i, j, 1].ToString() + " |";
}
message += "\n";
}
MessageBox.Show(message);
}
private void input_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode==Keys.Enter)
button1_Click(sender, e);
}
}
}
Результат:
"Таблица":
ЗаярныйА.В._325 2
Документ
Категория
Рефераты
Просмотров
14
Размер файла
84 Кб
Теги
лаб03, автомат
1/--страниц
Пожаловаться на содержимое документа