JSFiddle - React, Tailwind, and code Playground

by Yurii Predborskyi

HTML

<div id="doc">

</div>

<div id="monospace">

</div>

CSS

table {
  border-collapse: collapse;
}

table td {
  padding: 5px 0px;
  min-width: 35px;
  text-align: center;
}

#monospace {
  font-family: "Courier New", Courier, monospace;
  line-height: 8px;
}

#monospace span {
  display: inline-block;
  width: 8px;
  height: 8px;
}

JavaScript

// каждое задание вынесено в отдельную функцию дабы избежать конфликтов пространства имен (namespace)
/* обход проблемы с document . write, используем innerHTML */
function write(text, style) {
  var el = document.getElementById("doc");
  var styled = text;
  switch (style) {
    case "h1":
      styled = "<h1>" + text + "</h1>";
      break;
    case "h2":
      styled = "<h2>" + text + "</h2>";
      break;
    default:
      styled = "<p>" + text + "</p>";
  }
  el.innerHTML += styled;
}

function writeln(text) {
  var el = document.getElementById("monospace");
  el.innerHTML += text + "<br />";
}

// данная функция создает HTML таблицу из многомерного массива
function stringTable(arr) {
  if (!"length" in arr) {
    return "incorrectParameters";
  }
  var table = "<table border='1'>";
  for (var i = 0; i < arr.length; i++) {
    table += "<tr>";
    for (var j = 0; j < arr[i].length; j++) {
      table += "<td>" + arr[i][j] + "</td>";
    }
    table += "</tr>"
  }
  return table + "</table>";
}

/*
https://www.dropbox.com/s/p2a8lx4n9hioz5j/JavaScript%20%232%20%D0%9C%D0%B0%D1%81%D0%B8%D0%B2%D0%B8.docx?dl=0
*/
/*
1.	Масив вигляду [[2,5,6],[7,3,9],[3,2,6]] потрібно вивести в зручному для людини вигляді
*/
function task1() {
  var arr = [
    [2, 5, 6],
    [7, 3, 9],
    [3, 2, 6]
  ];
  write(stringTable(arr));
}

/*
2.	Створити масив розміром N елментів, заповинити його випадковими цілими значеннями. 
а) мінімальний елемент;
б) максимальний елемент;
в) вивести всі парні елементи;
г) вивести всі не парні елементи;
ґ) кількість нулів;
д) суму всіх елементів;
е) середнє арифметичне.
*/
function makeArray(size, max) {
  if (!max) {
    max = 10;
  }
  var arr = [];
  for (var i = 0; i < size; i++) {
    arr[i] = Math.round(Math.random() * max * 2) - max;
  }
  return arr;
}

// matrix - array of arrays
function makeMatrix(size, max) {
  if (!max) {
    max = 10;
  }
  var arr = [];
  for (var i = 0; i < size; i++) {
    arr[i] = makeArray(size, max);
  }
  return...