1
0
Files
web-programming/Лаб7/Сайт/index.html
2024-05-23 18:54:11 +03:00

107 lines
3.8 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Лабораторная работа No7</title>
</head>
<body>
<div>
<label for="xMin">X min: </label>
<input type="number" id="xMin" value="5">
<label for="xMax">X max: </label>
<input type="number" id="xMax" value="10">
<label for="h">Шаг: </label>
<input type="number" id="h" value="0.1">
<br><br>
<label for="fn">Функция: </label>
<select id="fn">
<option value="f_1">f_1</option>
<option value="f_2">f_2</option>
<option value="f_3">f_3</option>
</select>
<br><br>
<h3>Характеристики</h3>
<label for="findMin">Найти минимум</label>
<input type="checkbox" id="findMin">
<label for="countPositive">Подсчитать количество положительных элементов</label>
<input type="checkbox" id="countPositive">
<label for="isMonotonous">Проверить монотонность</label>
<input type="checkbox" id="isMonotonous">
<br><br>
<h3>Варианты функции</h3>
<label for="memoization">Мемоизация</label>
<input type="checkbox" id="memoization">
<label for="debug">Отладка</label>
<input type="checkbox" id="debug">
<label for="countCalls">Подсчет количества вызовов</label>
<input type="checkbox" id="countCalls">
<br><br>
<button onclick="run()">Выполнить</button>
</div>
<div>
<h3>Результат:</h3>
<div id="result"></div>
</div>
<script src="script.js"></script>
<script>
function run() {
const xMin = document.getElementById('xMin').value;
const xMax = document.getElementById('xMax').value;
const h = document.getElementById('h').value;
const fn = document.getElementById('fn').value;
const isFindMin = document.getElementById('findMin').checked;
const isCountPositive = document.getElementById('countPositive').checked;
const isIsMonotonous = document.getElementById('isMonotonous').checked;
const isMemoization = document.getElementById('memoization').checked;
const isDebug = document.getElementById('debug').checked;
const isCountCalls = document.getElementById('countCalls').checked;
func = f_1;
if (fn == 'f_1')
func = f_1;
else if (fn == 'f_2')
func = f_2;
else if (fn == 'f_3')
func = f_3;
if (isMemoization)
func = memoize(func);
if (isDebug)
func = debug(func);
if (isCountCalls)
func = countCalls(func);
characteristics = [];
names = []
if (isFindMin) {
characteristics.push(findMin);
names.push('Минимум');
}
if (isCountPositive) {
characteristics.push(countPositive);
names.push('Кол-во положительных');
}
if (isIsMonotonous) {
characteristics.push(isMonotonous);
names.push('Монотонность');
}
const chars = calculateCharacteristics(func, Number(xMin), Number(xMax), Number(h), characteristics);
console.log(chars);
const result = document.getElementById('result');
names.forEach((name, index) => {
result.innerHTML += name + ': ' + chars[index] + '<br>';
})
}
</script>
</body>
</html>