Skip to content

mcourteaux/QuineMcCluskey

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

#Quine-McCluskey implementation in C++

This program implements the Quine-McCluskey algorithm for multiple output functions. The program outputs ASCII or LaTeX tables. So far, it does not solve the minimum coverage problem yet.

This program is primarily being written for educational purpose for visualising the algoirithm and copying the output to reports.

Compile

To compile, open a terminal and type:

g++ qm.cpp -o qm -std=c++11 -O3

Usage

The program uses a specific input format:

[number of bits]
[number of output functions]
[number of care values]
[values seperated by space]
[number of don't-care values]
[don't-care values seperated by space]
... // repeat for as many output functions as needed

Example input (4 bits, 3 output functions)

4
3
2
2 3
6
10 11 12 13 14 15
5
1 2 3 5 8
6
10 11 12 13 14 15
3
6 7 8
6
10 11 12 13 14 15

It is recommended to put your input in a file and use your shell to input it to the program. You can use the --latex flag to produce LaTeX syntax.

./qm [--latex] < yourInputFile

License

This code is distributed under the zlib license.

Bugs

If you encounter any bugs, please report them on this GitHub project. Or fix them yourself and make a Pull Request.