diff options
author | Marvin Borner | 2019-03-10 22:38:24 +0100 |
---|---|---|
committer | Marvin Borner | 2019-03-10 22:38:24 +0100 |
commit | 6fe593a196b9ddbcb0a961456730358a312c6ef4 (patch) | |
tree | 98a000c37f8f6017e0467fb34b65faa08c1c4ee7 | |
parent | 33a8d09d606bbfa832676df87751821a0e0be314 (diff) |
Added KV template and generator
-rw-r--r-- | assets/js/generator.js | 24 | ||||
-rw-r--r-- | generator.html | 81 | ||||
-rw-r--r-- | template.html | 38 |
3 files changed, 143 insertions, 0 deletions
diff --git a/assets/js/generator.js b/assets/js/generator.js new file mode 100644 index 0000000..eabe108 --- /dev/null +++ b/assets/js/generator.js @@ -0,0 +1,24 @@ +document.getElementById('minify').onclick = () => { + let a, b, c, d; + const input = document.getElementById('input').value; + + document.getElementById('log').innerText = ''; + document.getElementById('log').append('LOG\ndcba Z ID\n'); + + try { + 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 + const filledBinary = currentBinary.length >= 4 ? currentBinary : new Array(4 - currentBinary.length + 1).join('0') + currentBinary; + a = filledBinary[3] === '1'; + b = filledBinary[2] === '1'; + c = filledBinary[1] === '1'; + d = filledBinary[0] === '1'; + 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'; + } + } 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 new file mode 100644 index 0000000..4b6a40a --- /dev/null +++ b/generator.html @@ -0,0 +1,81 @@ +<!doctype html> +<html lang="de"> +<head> + <meta charset="UTF-8"> + <meta content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" + name="viewport"> + <meta content="ie=edge" http-equiv="X-UA-Compatible"> + <link href="assets/css/main.css" rel="stylesheet"> + <title>KV-Diagramme</title> +</head> +<body> +<nav class="navbar" id="navbar"> + <a href="#">KV-Diagramme</a> + <a href="overview.html">Allgemeines</a> + <a href="process.html">Ablauf</a> + <a href="rules.html">Regeln</a> + <a href="usecase.html">Verwendungshinweise</a> + <a data-current href="generator.html">Generator</a> +</nav> + +<div class="content"> + <p class="heading">KV-Diagramm Generator</p> + <p>UND == &&</p> + <p>ODER == ||</p> + <p>NICHT == !</p> + <p>Es dürfen <u>NUR</u> die Variablen a, b, c und d verwendet werden.</p> + <label for="input">Boolescher Funktionsterm:</label> + <input id="input" type="text"> + <button id="minify">Generieren!</button> + + <pre id="log"></pre> + + <div class="kv-grid"> + <div class="grid-child"></div> + <div class="grid-child">a</div> + <div class="grid-child">a</div> + <div class="grid-child">!a</div> + <div class="grid-child">!a</div> + <div class="grid-child"></div> + <div class="grid-child">b</div> + <div class="grid-child" data-id="1" id="4"></div> + <div class="grid-child" data-id="2" id="8"></div> + <div class="grid-child" data-id="3" id="7"></div> + <div class="grid-child" data-id="4" id="3"></div> + <div class="grid-child">!d</div> + <div class="grid-child">b</div> + <div class="grid-child" data-id="5" id="12"></div> + <div class="grid-child" data-id="6" id="16"></div> + <div class="grid-child" data-id="7" id="15"></div> + <div class="grid-child" data-id="8" id="11"></div> + <div class="grid-child">d</div> + <div class="grid-child">!b</div> + <div class="grid-child" data-id="9" id="10"></div> + <div class="grid-child" data-id="10" id="14"></div> + <div class="grid-child" data-id="11" id="13"></div> + <div class="grid-child" data-id="12" id="9"></div> + <div class="grid-child">d</div> + <div class="grid-child">!b</div> + <div class="grid-child" data-id="13" id="2"></div> + <div class="grid-child" data-id="14" id="6"></div> + <div class="grid-child" data-id="15" id="5"></div> + <div class="grid-child" data-id="16" id="1"></div> + <div class="grid-child">!d</div> + <div class="grid-child"></div> + <div class="grid-child">!c</div> + <div class="grid-child">c</div> + <div class="grid-child">c</div> + <div class="grid-child">!c</div> + <div class="grid-child"></div> + </div> +</div> + +<footer> + <hr> + Erstellt von <a href="https://marvinborner.de" target="_blank">Marvin Borner</a> TGI 11.1 RBS + Ulm +</footer> + +<script src="assets/js/generator.js"></script> +</body> +</html> diff --git a/template.html b/template.html new file mode 100644 index 0000000..158d7dc --- /dev/null +++ b/template.html @@ -0,0 +1,38 @@ +<div class="kv-grid"> + <div class="grid-child"></div> + <div class="grid-child">E<sub>1</sub></div> + <div class="grid-child">E<sub>1</sub></div> + <div class="grid-child">!E<sub>1</sub></div> + <div class="grid-child">!E<sub>1</sub></div> + <div class="grid-child"></div> + <div class="grid-child">E<sub>2</sub></div> + <div class="grid-child" id="4"></div> + <div class="grid-child" id="8"></div> + <div class="grid-child" id="7"></div> + <div class="grid-child" id="3"></div> + <div class="grid-child">!E<sub>4</sub></div> + <div class="grid-child">E<sub>2</sub></div> + <div class="grid-child" id="12"></div> + <div class="grid-child" id="16"></div> + <div class="grid-child" id="15"></div> + <div class="grid-child" id="11"></div> + <div class="grid-child">E<sub>4</sub></div> + <div class="grid-child">!E<sub>2</sub></div> + <div class="grid-child" id="10"></div> + <div class="grid-child" id="14"></div> + <div class="grid-child" id="13"></div> + <div class="grid-child" id="9"></div> + <div class="grid-child">E<sub>4</sub></div> + <div class="grid-child">!E<sub>2</sub></div> + <div class="grid-child" id="2"></div> + <div class="grid-child" id="6"></div> + <div class="grid-child" id="5"></div> + <div class="grid-child" id="1"></div> + <div class="grid-child">!E<sub>4</sub></div> + <div class="grid-child"></div> + <div class="grid-child">!E<sub>3</sub></div> + <div class="grid-child">E<sub>3</sub></div> + <div class="grid-child">E<sub>3</sub></div> + <div class="grid-child">!E<sub>3</sub></div> + <div class="grid-child"></div> +</div> |