Возьмите любую алгоритмическую задачу (например, из тех, что решают при изучении программирования в школе) и попробуйте её решить средствами HTML.
Только помните: программа должна получать от пользователя (тем или иным образом) исходные данные, обрабатывать их согласно заложенному в неё алгоритму, и выдавать опять же пользователю результатные данные.
Хочется ещё раз подчеркнуть, что HTML - язык специализированный. Ориентированный на решение не любых задач, а лишь связанных с обработкой и представлением информации.
Ввод данных пользователем осуществляется в основном посредством кликанья мышью на том или ином участке текста.
Впрочем, программа и не обязана получать данные от пользователя. Данные вполне могут содержаться в самой программе, а пользователь лишь даёт команду к началу их обработки. Вывод результата - путём запроса и показа тех или иных гиперстраниц.
Вот пример. Решение неравенства X^2 + Y^2 > 70^2
Делается при помощи нижеследующего кода (пример почти прямо из спецификации HTML-4.0). В зависимости от того, больше или меньше установленной величины радиус, происходит переход по ссылке с ответом: "greater.htm" или "less.htm".
<IMG src="map04.jpg" usemap="#map1" alt="навигационная панель">
<MAP name="map1">
<AREA href="less.htm"
alt="меньше"
shape="circle"
coords="200,100,70">
<AREA href="greater.htm"
alt="больше"
shape="rect"
coords="0,0,500,200">
</MAP>
СильнО! Действительно, у слабых в идейном плане читателей
может возникнуть иллюзия обработки данных.
Ответ поумнее я напишу днём. Пока только дам ссылку на ассоциацию, возникшую у меня при ознакомлении с приведённой "компьютерной программой".
========
Аркадий и Борис Стругацкий.
"Сказка о тройке"
...
- Вот, изволите видеть, так называемая эвристическая машина, - сказал старичок.
- Точный электронно-механический прибор для отвечания на любые вопросы, а именно - на научные и хозяйственные. Как она у меня работает? Не имея достаточных средств и будучи отфутболиваем различными бюрократами, она у меня пока не полностью автоматизирована. Вопросы задаются устным образом, и я их печатаю и ввожу таким образом к ей внутрь, довожу, так сказать, до ейного сведения. Отвечание ейное, опять через неполную автоматизацию, печатаю снова я. В некотором роде посредник, хе-хе!
========
Очень похожа эта "программа" на "эвристическую машину" ;-)
(Ну, у меня такие ассоциации извращённые...)
Могу предложить "программу" ещё круче. Выводящую таблицу умножения. Выглядеть она будет так:
<html>
<title>Компьютерная программа, выводящая таблицу умножения</title>
<body>
<a href="1x1.htm">1 x 1</a><br>
<a href="1x2.htm">1 x 2</a><br>
<a href="1x3.htm">1 x 3</a><br>
<a href="1x4.htm">1 x 4</a><br>
<a href="1x5.htm">1 x 5</a><br>
<a href="1x6.htm">1 x 6</a><br>
<a href="1x7.htm">1 x 7</a><br>
<a href="1x8.htm">1 x 8</a><br>
<a href="1x9.htm">1 x 9</a><br>
<br>
<a href="2x1.htm">2 x 1</a><br>
<a href="2x2.htm">2 x 2</a><br>
<a href="2x3.htm">2 x 3</a><br>
<a href="2x4.htm">2 x 4</a><br>
<a href="2x5.htm">2 x 5</a><br>
<a href="2x6.htm">2 x 6</a><br>
<a href="2x7.htm">2 x 7</a><br>
<a href="2x8.htm">2 x 8</a><br>
<a href="2x9.htm">2 x 9</a><br>
...
<a href="9x1.htm">9 x 1</a><br>
<a href="9x2.htm">9 x 2</a><br>
<a href="9x3.htm">9 x 3</a><br>
<a href="9x4.htm">9 x 4</a><br>
<a href="9x5.htm">9 x 5</a><br>
<a href="9x6.htm">9 x 6</a><br>
<a href="9x7.htm">9 x 7</a><br>
<a href="9x8.htm">9 x 8</a><br>
<a href="9x9.htm">9 x 9</a><br>
</body>
</html>