ComEl.Cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Second
{
class ComEl : Element
{
bool[] Inputs;
// Конструктор
public ComEl( int CntIn) : base ("Комбинационный элемент МОД2-НЕ", CntIn, 1)
{
Inputs = new bool[CntIn];
}
// Метод задающий значения на входах
public bool SetInp(bool[] Value)
{
if (Inputs.GetLength(0) == Value.GetLength(0))
{
Value.CopyTo(Inputs, 0);
return true;
}
else
return false;
}
public bool GetValue( int Index, out bool Error)
{
if (Index < Inputs.GetLength(0))
{
Error = false;
return Inputs[Index];
}
else
{
Error = true;
return false;
}
}
public bool Result()
{
bool tmp = Inputs[0];
for (int i = 1; i < Inputs.GetLength(0); i++)
{
tmp = tmp ^ Inputs[i];
}
return tmp;
}
//Переопределение метода Equals
public override bool Equals(object obj)
{
ComEl temp = obj as ComEl;
if ((object) temp == null)
{
return false;
}
return base.Equals(obj) && (Inputs == temp.Inputs);
}
//Метод GetHashCode у одинаковых объектах должен быть одинаковым:
public override int GetHashCode()
{
return base.GetHashCode() ^ Inputs.GetHashCode();
}
}
}
ЭКРАННЫЕ ФОРМЫ
Приложение Б
(обязательное)
Рисунок Б.1 – Главное меню приложения
Рисунок Б.2 – Ввод входных значений элемента
Рисунок Б.3 – Вывод значения заданного входа элемента
Рисунок Б.4 – Вывод значения на выходе элемента
Рисунок Б.5 – Ввод входных значений триггера
Рисунок Б.6 – Вывод значения заданного входа триггера
Рисунок Б.7 – Вывод значения на выходах триггера
Рисунок Б.8 – Ввод входных значений регистра
Рисунок Б.9 – Вывод значения заданного выхода регистра
Рисунок Б.10 –Вывод значения на выходах регистра