Книга: Пять уроков Великого Магистра, или повесть о том, как Петя Бочкин изучал программирование

КОНСТРУКЦИЯ ПРИСВАИВАНИЯ. ОПЕРАТОР ПРИСВАИВАНИЯ

КОНСТРУКЦИЯ ПРИСВАИВАНИЯ. ОПЕРАТОР ПРИСВАИВАНИЯ

— Всякая программа — это не что иное, как производство каких-то операций над какой-то одной или несколькими переменными, — продолжал Казимир. — Представь себе, запускают космический корабль. За короткое время его скорость возрастает от нуля до семи километров в секунду. Ракета-носитель испытывает много внешних воздействий: ветер, перепады давления, разница температуры в нижних и верхних слоях атмосферы, но при этом скорость ракеты должна поддерживаться в строго определенных пределах. Для этого Исполнитель, то есть бортовой компьютер, постоянно анализирует ситуацию и подает соответствующие команды двигателям. Но чтобы выполнять эту задачу, Исполнитель должен держать в памяти множество данных. А память у него хотя и обширная, но не безграничная. Поэтому ее нужно экономить. И вот для этого программисты придумали очень простую конструкцию. Она называется «присваиванием». Например, в настоящий момент скорость ракеты — два километра в секунду. А через секунду она становится два километра десять метров в секунду. Тут компьютер вызывает из ячейки памяти, где хранится информация о скорости, прежние данные и говорит сам себе: «переменной «скорость» присваивается значение — два километра десять метров в секунду» — и тут же загоняет эту новую информацию в ту же самую ячейку памяти.

— А прежнюю скорость компьютер забывает?

— Начисто. Зачем ему забивать свои мозги сведениями, которые больше не понадобятся?

— Да, но ведь в следующую секунду скорость ракеты снова повысится?

— И тогда компьютер вызовет из памяти старое значение скорости и снова скажет: «переменной «скорость» присваивается такое-то значение». Например, два километра двадцать метров в секунду. И, что интересно, компьютер будет действовать по программе, которую ввел в него программист. А программа, если сильно упрощать дело, будет выглядеть так:


Или так:


— Ну что? — спросил Казимир. — Знакомые конструкции?

— Да, — сказал Петя. — Первая — это разветвление. А вторая — цикл.

— Прекрасно, — сказал Казимир. — Тогда последнее. Команду «присвоить значение» в текстах программы словами не записывают. Вместо слов употребляют вот такой знак.

И Казимир нарисовал шпагой на песке:


— Это все равно, как если соединить вместе два знака — «разделить» и «равняется», — сказал Петя. — Правда, Казимир?

— Да, — ответил Великий Магистр. — Те, кто его придумали, долго себе голову не ломали. Творили, так сказать, из подручного материала. Запомни: этот знак называется «оператор присваивания».

Казимир приблизился к орудию.

— А теперь вернемся к нашему обеду. Можешь ли ты сразу дать спецификацию для Исполнителя?

— Значит, так. Три матроса любят сгущенку, а три — тушенку. Поэтому Кристина должна выстрелить три раза сгущенкой и три раза — тушенкой. Всего шесть раз.

— Как бы ты назвал переменную, которая будет фигурировать в программе?

— Я бы назвал ее «заряд».

— Можно и так, — сказал Казимир. — Пиши программу.

И Петя написал:

ПОДОЙТИ К ОРУДИЮЗАРЯД:= СГУЩЕНКАПОВТОРЯТЬ 3 РАЗА ЕСЛИ ОРУДИЕ НЕ ЗАРЯЖЕНО  ЗАРЯДИТЬ ОРУДИЕ  ВЫСТРЕЛИТЬ КОНЕЦ ЦИКЛАКОНЕЦ УСЛОВИЯЗАРЯД:= ТУШЕНКАПОВТОРЯТЬ 3 РАЗА ЕСЛИ ОРУДИЕ НЕ ЗАРЯЖЕНО  ЗАРЯДИТЬ ОРУДИЕ  ВЫСТРЕЛИТЬ ИНАЧЕ  ВЫСТРЕЛИТЬКОНЕЦ ЦИКЛАКОНЕЦ УСЛОВИЯКОНЕЦ

Оглавление книги


Генерация: 0.580. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз