пятница, 16 декабря 2016 г.

Программа построения 4-х графиков

Задание:

1. Разработать подробный алгоритм построения 4х графиков на одном экране.
(4 функции для построения графиков придумать самостоятельно)

2. Алгоритм представить в содержательном виде, или в виде блок схемы, или в виде программного кода.

Решение:

Для разработки программы был выбран язык Delphi(Object Pascal).

Для разработки интерфейса использован кроссплатформенный фреймворк FMX (Fire-Monkey), что позволяет перекомпиляцией проекта получать рабочие бинарные файлы для следующих платформ: Windows32, Windows64, MacOS, Android, iOS.

Программа позволяет настроить область отображения графика, и параметры осей, кроме того область просмотра можно перемещать с помощью мыши.

Исходный код и скомпилированное приложение:

https://github.com/AnotherStudent/Draw4Graphics
https://raw.githubusercontent.com/AnotherStudent/Draw4Graphics/master/ProjectGraph.exe

Скриншоты работы:


Исходный текст:

Решение системы двух линейных уравнений методом Крамера (js)

Задание:

Ниже находится система двух линейных уравнений. Напишите программу, которая выводит в консоль значения x и y по заданным переменным a1,b1,c1,a2,b2,c2 с использованием формул Крамера (т.е. через определители)

Решение: 

Формулы для 2х неизвестных:

js код:


<p>
  <input type="text" id="a1" oninput="Change(event)" placeholder="0" pattern="^[+-]?[\d]+($|[\.][\d]+|([\.][\d]+[Ee]|[Ee])[+-]?\d+)$" size="8">X + 
  <input type="text" id="b1" oninput="Change(event)" placeholder="0" pattern="^[+-]?[\d]+($|[\.][\d]+|([\.][\d]+[Ee]|[Ee])[+-]?\d+)$" size="8">Y = 
  <input type="text" id="c1" oninput="Change(event)" placeholder="0" pattern="^[+-]?[\d]+($|[\.][\d]+|([\.][\d]+[Ee]|[Ee])[+-]?\d+)$" size="8">
  <div style="height: 4px;"></div>
  <input type="text" id="a2" oninput="Change(event)" placeholder="0" pattern="^[+-]?[\d]+($|[\.][\d]+|([\.][\d]+[Ee]|[Ee])[+-]?\d+)$" size="8">X + 
  <input type="text" id="b2" oninput="Change(event)" placeholder="0" pattern="^[+-]?[\d]+($|[\.][\d]+|([\.][\d]+[Ee]|[Ee])[+-]?\d+)$" size="8">Y = 
  <input type="text" id="c2" oninput="Change(event)" placeholder="0" pattern="^[+-]?[\d]+($|[\.][\d]+|([\.][\d]+[Ee]|[Ee])[+-]?\d+)$" size="8">
  <div style="height: 4px;"></div>
  <br>X = <span id="X">Please enter data!</span>
  <br>Y = <span id="Y">Please enter data!</span>
</p>
<script>
function Disp(X, Y)
{
  const Fail = 'Solive not found!';
  document.getElementById('X').innerHTML = !isNaN(X) ? X : Fail;
  document.getElementById('Y').innerHTML = !isNaN(Y) ? Y : Fail;
}

function Det2x2(Array)
{
  return Array[0] * Array[3] - Array[1] * Array[2];
}

function Change(e)
{
  let a1 = document.getElementById('a1').value;
  let b1 = document.getElementById('b1').value;
  let c1 = document.getElementById('c1').value;
  let a2 = document.getElementById('a2').value;
  let b2 = document.getElementById('b2').value;
  let c2 = document.getElementById('c2').value;
  
  let Det = Det2x2([a1, b1, a2, b2]); 
  let X = Det2x2([c1, b1, c2, b2]) / Det;
  let Y = Det2x2([a1, c1, a2, c2]) / Det;
  
  Disp(X, Y);
}
</script>

Данный код в работе:

X + Y =
X + Y =
X = Please enter data!
Y = Please enter data!

четверг, 15 декабря 2016 г.

Почему после вычисления выражений "let a = Math.sqrt(33)" получается undefined?

Почему после вычисления выражений "let a = Math.sqrt(33)" получается undefined?
Судя по всему возврат значений операторами let\var просто не предусмотрен, доказательством этого является код:
a = let b = 3
 
Вызывающий ошибку интерпретации:


"missing ; before statement"