В фильме X+Y главный герой изучал в энциклопедии формулу любви, имея склонность к теоретическому познанию окружающего мира.
Представим, что компьютер -- это усовершенствованный калькулятор (на самом деле примерно так и есть). Кроме того, представим, что у нас на компьютере нет ничего, кроме браузера и текстового редактора. Да, браузер на современном компьютере или смартфоне -- это такое же популярное приложение, как трансляторы на первых ЭВМ.
Сейчас, похоже, прагматические склонности у людей преобладают. Компьютеры, которые когда-то создавались как средство вычислений и были плодом математических и физических теорий и экспериментов, стали обыденными и используются повсеместно. Сейчас в компьютер можно запихнуть любую логику, вплоть до алгоритмов искусственного интеллекта.
Похоже, мы стали забывать, для чего создавались первые ЭВМ.
Представим, что компьютер -- это усовершенствованный калькулятор (на самом деле примерно так и есть). Кроме того, представим, что у нас на компьютере нет ничего, кроме браузера и текстового редактора. Да, браузер на современном компьютере или смартфоне -- это такое же популярное приложение, как трансляторы на первых ЭВМ.
Откроем текстовый редактор (например, Блокнот) и введём следующий текст.
<script>
for (var i = 1; i <= 10; i++) {
for (var j = 1; j <= 10; j++)
document.write(i + ' × ' + j + ' = ' + i*j + '<br>');
document.write('<br>');
}
</script>
Затем сохраним текст в файл с расширением .html и откроем в браузере.
Мы распечатали таблицу умножения. Оказывается, что браузер можно использовать как калькулятор.
Следующий код позволяет распечатать таблицу Пифагора.
<script>
document.write('<table cellpadding="7" border="1">');
for (var i = 1; i <= 10; i++) {
document.write('<tr>');
for (var j = 1; j <= 10; j++)
document.write('<td>' + i*j + '</td>');
document.write('</tr>');
}
document.write('</table>');
</script>
Формула любви несколько сложнее, чем таблица умножения.
Для начала распечатаем сердечко в виде текста. Нам поможет код, составленный в 2013 г. на мастер-классе по информатике для школьников при ДВФУ.
<font face="Courier New" color="red">
<script>
for (var y = 27; y > -20; y--) {
for (var x = -40; x < 40; x++) {
var j = y;
var i = x;
j = j/17;
i = i/40;
if (i*i + Math.pow((5*j)/4 - Math.sqrt(Math.abs(i)), 2) <= 1)
document.write('♥');
else
document.write('.');
}
document.write('<br>');
}
</script>
</font>
Вот что покажет браузер.
А если мы хотим нарисовать сердечко? Нам понадобится подключить библиотеку Flot. Её нужно скачать, а затем сохранить следующий код в файл с расширением .html (туда же, где находится папка flot).
<script language="javascript" type="text/javascript" src="./flot/jquery.js"></script>
<script language="javascript" type="text/javascript" src="./flot/jquery.flot.js"></script>
<script>
$(function() {
var d1 = [], d2 = [], d3 = [], d4 = [];
for (var x = 0; x < 1; x += 0.001) {
y = Math.pow(x, 2/3) + Math.sqrt(1 - x*x);
d1.push([x, y]);
d2.push([-x, y]);
y = Math.pow(x, 2/3) - Math.sqrt(1 - x*x);
d3.push([x, y]);
d4.push([-x, y]);
}
$.plot("#placeholder", [d1, d2, d3, d4],
{colors: ["red", "red", "red", "red"],
xaxis: {min: -1.1, max: 1.1},
yaxis: {min: -1.1, max: 1.7}});
});
</script>
<div id="placeholder" style="width:500px;height:500px"></div>
Получим такой график.
Комментарии
solkeydredti
forksironac
https://colab.research.google.com/drive/1IgHIHzXlJnrlhAf6JaNT3WOFqQSpL-g5
download
link
alemantio
Отправить комментарий