Algoritmo_Quine_McCluskey.​Minimizzazione_da_Equazione_Algebrica
Form
public
Algoritmo_Quine_McCluskey.​Minimizzazione_da_Equazione_Algebrica
Properties
sop_reg
public Regex sop_reg

Filtro per l'input in forma sop (sono ammesse solo le lettere, il + e il segno di negazione)

pos_reg
public Regex pos_reg

Filtro per l'input in forma pos (sono ammesse solo le lettere, il +, il segno di negazione, e le parentesi)

Variables
quine_mccluskey
public QuineMcClusky quine_mccluskey

La procedura si avvale dell'algoritmo Quine Mc-Cluskey e del metodo di Petrick

numero_variabili
public int numero_variabili

Numero di variabili nella funzione

skip
public bool skip
components
private System.ComponentModel.IContainer components

Required designer variable.

pos_cbox
private System.Windows.Forms.CheckBox pos_cbox
sop_cbox
private System.Windows.Forms.CheckBox sop_cbox
output_tbox
private System.Windows.Forms.RichTextBox output_tbox
funz_label
private System.Windows.Forms.Label funz_label
equazione_tbox
private System.Windows.Forms.TextBox equazione_tbox
minimizza_button
private System.Windows.Forms.Button minimizza_button
reset_button
private System.Windows.Forms.Button reset_button
output_menu
private System.Windows.Forms.ContextMenuStrip output_menu
copia_toolstrip
private System.Windows.Forms.ToolStripMenuItem copia_toolstrip
helpProvider
private System.Windows.Forms.HelpProvider helpProvider
dc_tbox
private System.Windows.Forms.TextBox dc_tbox
dc_label
private System.Windows.Forms.Label dc_label
posdc_cbox
private System.Windows.Forms.CheckBox posdc_cbox
sopdc_cbox
private System.Windows.Forms.CheckBox sopdc_cbox
Functions
Minimizzazione_da_Equazione_Algebrica
public Minimizzazione_da_Equazione_Algebrica()
Minimizzazione_da_Equazione_Algebrica_Load
private void Minimizzazione_da_Equazione_Algebrica_Load(
object sender,
EventArgs e
)
sop_cbox_CheckedChanged
private void sop_cbox_CheckedChanged(
object sender,
EventArgs e
)
pos_cbox_CheckedChanged
private void pos_cbox_CheckedChanged(
object sender,
EventArgs e
)
equazione_tbox_TextChanged
private void equazione_tbox_TextChanged(
object sender,
EventArgs e
)
minimizza_button_Click
private void minimizza_button_Click(
object sender,
EventArgs e
)
equazione_tbox_Leave
private void equazione_tbox_Leave(
object sender,
EventArgs e
)
azzera_button_Click
private void azzera_button_Click(
object sender,
EventArgs e
)
copia_toolstrip_Click
private void copia_toolstrip_Click(
object sender,
EventArgs e
)
Minimizzazione_da_Equazione_Algebrica_HelpButtonClicked
private void Minimizzazione_da_Equazione_Algebrica_HelpButtonClicked(
object sender,
CancelEventArgs e
)
posdc_cbox_CheckedChanged
private void posdc_cbox_CheckedChanged(
object sender,
EventArgs e
)
sopdc_cbox_CheckedChanged
private void sopdc_cbox_CheckedChanged(
object sender,
EventArgs e
)
dc_tbox_TextChanged
private void dc_tbox_TextChanged(
object sender,
EventArgs e
)
dc_tbox_Leave
private void dc_tbox_Leave(
object sender,
EventArgs e
)
Aggiusta_NOT
private string Aggiusta_NOT(
string espr
)

Metodo che elimina i connettivi NOT superflui

ASFD_POS
private bool ASFD_POS(
string espr,
List<stringterms
)

Parser per la forma POS basato sull'idea di automa a stati finiti deterministico. L'automa in questo caso, lavora con sei stati e un alfabeto di 30 simboli {'(', ')', '+', '~', 'A', 'B', ... , 'Z'}.

Returns

false se la stringa non appartiene al linguaggio, true viceversa.

ASFD_SOP
private bool ASFD_SOP(
string espr,
List<stringterms
)

Parser per la forma SOP basato sull'idea di automa a stati finiti deterministico. L'automa in questo caso, lavora con qattro stati e un alfabeto di 28 simboli {'+', '~', 'A', 'B', ... , 'Z'}.

Returns

false se la stringa non appartiene al linguaggio, true viceversa.

Ottieni_Numero_Variabili
private int Ottieni_Numero_Variabili(
string espressione,
string condizioni_indifferenza
)

Ricavera il numero di variabili della funzione dall'input dell'utente

SOP
private List<int> SOP(
List<stringsotto_espressioni,
int n_var
)

Ricava la tabella di veritè della funzione in forma SOP

POS
private List<int> POS(
List<stringsotto_espressioni,
int n_var
)

Ricava la tabella di veritè della funzione in forma POS

Converti_In_Binario
private static string Converti_In_Binario(
int n,
int numero_variabili
)

Procedura per la conversione in binario

Reverse
private static string Reverse(
string s
)

Procedura per l'inversione di una stringa

Sistema_Espressioni
private void Sistema_Espressioni(
bool pos,
List<stringtermini
)

Riformatta l'espressione inserita dall'utente, eliminando le ripetizioni non necessarie e riordinandone gli elementi.

Rimuovi_Duplicati
private void Rimuovi_Duplicati(
List<stringlista
)

Rimuove i termini duplicati da una lista

Dispose
protected override void Dispose(
bool disposing
)

Clean up any resources being used.

Parameter
disposing
bool

true if managed resources should be disposed; otherwise, false.

InitializeComponent
private void InitializeComponent()

Required method for Designer support - do not modify the contents of this method with the code editor.