Ответ:

1. Развитие языков программирования. Сначала программы записывали в машинных кодах — последовательностях нулей и единиц. Затем появились языки ассемблера, в которых машинные команды обозначались более понятными символами. Позже возникли языки высокого уровня, более близкие к человеческому языку и математической записи. Современные языки позволяют создавать программы для разных задач и устройств.

2. Можно ли считать перечисленное алгоритмом?

  1. (a) Правила правописания сами по себе не всегда являются алгоритмом, но конкретные правила проверки написания можно применять как последовательность действий. Например, правило может предписывать подобрать проверочное слово.
  2. (b) Законы физики описывают закономерности природы, а не последовательность команд исполнителю, поэтому сами по себе алгоритмами не являются.
  3. (c) Математические формулы сами по себе задают зависимости или вычисления, но не обязательно порядок действий. Алгоритмом может быть инструкция по вычислению значения по формуле.
  4. (d) Статьи уголовного кодекса устанавливают правовые нормы, а не последовательность команд для получения результата; сами по себе алгоритмами не являются.

3. Что нельзя назвать алгоритмом? Афишу кинотеатра: она сообщает сведения о фильмах и сеансах, но не задаёт последовательность действий для решения задачи. Рецепт и инструкция по использованию прибора, напротив, обычно содержат последовательность действий.