test(ex05): complex test
This commit is contained in:
parent
76a3f12d9e
commit
17789f1a2d
|
@ -8,6 +8,7 @@ mod truth_table;
|
|||
|
||||
use gray_code::gray_code;
|
||||
use truth_table::print_truth_table;
|
||||
use negation_normal_form::negation_normal_form;
|
||||
|
||||
fn main() {
|
||||
println!("Hello, world!");
|
||||
|
@ -22,4 +23,11 @@ fn main() {
|
|||
println!("{}", gray_code(3));
|
||||
print_truth_table("ZFG|&");
|
||||
print_truth_table("ABC|&");
|
||||
let formula = "AB=CD^|!AD!^!&!";
|
||||
println!("{formula}");
|
||||
print_truth_table(formula);
|
||||
let formula = &negation_normal_form(formula);
|
||||
println!("{formula}");
|
||||
print_truth_table(formula);
|
||||
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@ mod tests;
|
|||
|
||||
use crate::ast::Node;
|
||||
|
||||
fn negation_normal_form(formula: &str) -> String {
|
||||
pub fn negation_normal_form(formula: &str) -> String {
|
||||
let mut ast = Node::<char>::parse_formula(formula);
|
||||
ast.simplify();
|
||||
Node::<char>::ast_to_formula(&ast)
|
||||
|
|
|
@ -63,6 +63,6 @@ mod tests {
|
|||
|
||||
#[test]
|
||||
fn complex_tests() {
|
||||
assert_eq!("A", "A");
|
||||
assert_eq!(negation_normal_form("AB=CD^|!AD!^!&!"), "A!B|B!A|&CD|C!D!|&|AD!|A!D|&|");
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue