diff options
author | Marvin Borner | 2019-03-21 16:03:27 +0100 |
---|---|---|
committer | Marvin Borner | 2019-03-21 16:03:27 +0100 |
commit | afcf3ff1b101452a0d3b8607913d3564a2bad53b (patch) | |
tree | a4f3ccc3d04230e4988c1ef32a1937b3b36e9b26 | |
parent | 815701fcf79904f24a7fd55aa045512e270ca55a (diff) |
Added matrix merging
-rw-r--r-- | assets/js/generator.js | 15 | ||||
-rw-r--r-- | generator.html | 2 |
2 files changed, 16 insertions, 1 deletions
diff --git a/assets/js/generator.js b/assets/js/generator.js index ccdf02c..0de01d5 100644 --- a/assets/js/generator.js +++ b/assets/js/generator.js @@ -1,11 +1,18 @@ +// declare button event document.getElementById('minify').onclick = () => { + // declare variables let a, b, c, d; + let matrix = [[], [], [], []]; + + // replace input so it matches js boolean operators const input = document.getElementById('input').value.replace(/#/g, '||').replace(/&/g, '&&'); + // some logging.. document.getElementById('log').innerText = ''; document.getElementById('log').append('LOG\ndcba Z ID\n'); try { + // fill kv diagram for (let i = 0; i < 16; i++) { const currentBinary = (i >>> 0).toString(2); // fill binary number with leading zeros until it is 4 digits long @@ -17,6 +24,14 @@ document.getElementById('minify').onclick = () => { document.getElementById('log').append(`${filledBinary} ${eval(input) ? '1' : '0'} ${document.getElementById(i + 1).getAttribute('data-id')}\n`); document.getElementById(i + 1).innerText = eval(input) ? '1' : '0'; } + + // merge grid with matrix (2D array) + document.querySelectorAll('[data-id]').forEach(element => { + let rowNumber = (element.getAttribute('data-id') / 4 - 0.1).toString(); + rowNumber = rowNumber.substring(0, rowNumber.indexOf('.')); + matrix[rowNumber].push(parseInt(element.innerText, 2)); + }); + console.log(matrix); } catch (err) { console.error(err); alert('Oh, da ist wohl was schiefgelaufen, bitte probieren Sie es noch einmal :)'); diff --git a/generator.html b/generator.html index 3694a23..7498ebf 100644 --- a/generator.html +++ b/generator.html @@ -27,7 +27,7 @@ Es dürfen <u>NUR</u> die Variablen a, b, c und d und die Abel Schreibweise verwendet werden. </p> <label for="input">Boolescher Funktionsterm:</label> - <input id="input" type="text"> + <input id="input" placeholder="z.B. (a & b) # (c & d)" type="text"> <button id="minify">Generieren!</button> <pre id="log"></pre> |