Дороги, дураки и компьютеры. Есть ли будущее у России - страница 54



 – это всего лишь компактная форма записи выбора из множества вариантов. Кроме того, в блок-схеме много стрелок, определяющих последовательность операций. Для описания алгоритма используются всего три алгоритмических конструкции: следование, развилка и цикл. Даже очень сложная программа, в том числе та, которая играет в шахматы, состоит из арифметических и логических операций, образующих сложную систему всего из трёх простых структур: следование, развилка и цикл.

Следование – последовательность операций, в которой завершение предыдущей операции однозначно обозначает переход к последующей (Ложиться спать – Спать – Проснуться; Идти грабить – Стоять на большой дороге).

Развилка – алгоритмическая структура, в которой исполнение или неисполнение определённого условия предыдущей операции определяет последующую операцию (уже темно? СЧВ >3? Моя очередь грабить? Появились клиенты? Стреляют?).

Цикл – алгоритмическая структура, обеспечивающая многократное повторение определённой совокупности операций (в блок-схеме: цикл всего поведения, цикл вставаний без умываний, цикл процесса ограбления и др.).

Кроме того, данная блок-схема включает в себя очень распространённую форму организации цикла – «счётчик» и особую форму выбора из множества вариантов – «меню»

Счётчик – циклическое накопление определяемого по заданной формуле числа. Например, СЧВ = СЧВ + 1. означает, что при каждом вставании в СЧВ добавляется 1. После выполнения своей функции счётчик очищается (обнуляется), т. е. в СЧВ записывается 0.

Меню – способ организации развилки с множеством вариантов перехода.

В обычной жизни мы постоянно пользуемся этими структурами. Просто не знаем их названий. Но это не меняет сути дела. А если скажите, что всё это слишком примитивно, что реальная жизнь значительно сложнее, будете правы. Алгоритм – это модель определенного процесса. А любая модель отражает лишь некоторые стороны моделируемого объекта. Значит, чем лучше автор алгоритма знает объект моделирования, тем лучше будет алгоритм. Кроме того, алгоритм разрабатывается для реализации в конкретной системе. Значит, его автор должен знать эту систему, например, самого себя. Алгоритм, описанный на языке и в терминах реализующей его системы, это уже программа. Значит, автор алгоритма – это и есть настоящий программист. А тот, кто описывает готовый алгоритм в командах ЭВМ или на человеческом языке – это кодировщик. Умение программировать – это дар божий! А как быть тем, кому этого дара досталось меньше или не досталось совсем? Учиться!

Урок 2. Системы счисления

Считать люди начали с момента появления на земле

Сначала, для обозначения количеств, они придумали их изображения – цифры. Но количества были и очень большими, понадобились числа, а значит системы счисления. Сегодня мы пользуемся позиционной десятичной системой. Позиционной она называется потому что значение каждой цифры в записи числа зависит от ее позиции в последовательности цифр, изображающей число. А десятичная – потому что основанием счета является число десять. Если бы у человека было восемь пальцев, мы считали бы в восьмеричной системе: 1, 2…, 7, 10>8 (восемь). Запись числа «восемь» в виде «10» использовали бы для того, чтобы на месте нуля записывать цифры 1, 2…. 7 и формировать записи чисел – 11>8 (один>навосемь или скороговоркой одиннавсемь), 12>8

(два>навосемь, или двенавсемь) и т. д. После числа 17