Как Петя Бейсиков Тоню Соображалкину программировать учил
- Автор: Бруно Мартузан
- Жанр: Околокомпьютерная литература / Детская образовательная литература / Basic, Visual Basic, VB Script, VBA и т.п.
- Дата выхода: 1987
Читать книгу "Как Петя Бейсиков Тоню Соображалкину программировать учил"
ЧТО ТОНЯ УЖЕ УМЕЕТ
— Порядок. Теперь мы могли бы эту твою последнюю программу «проразмыслить». Смогла бы ты сейчас написать такую программу, которая делала бы наоборот — переводила градусы Цельсия в градусы Фаренгейта?
— Конечно. Там, где написано ФАРЕНГЕЙТА, я написала бы ЦЕЛЬСИЯ, вместо ЦЕЛЬСИЯ написала бы ФАРЕНГЕЙТА.
— К сожалению, самого главного ты не сказала. Нужно изменить формулу для расчета значения переменной С.
— Ах, да! Такой формулы пока нет, но ее же легко получить из старой.
— Конечно. Она получается такой:
Но это совсем не важно, поскольку мы ее сейчас не собираемся программировать. Скажи, ты смогла бы сейчас составить программу, которая переводила бы, например, километры в сантиметры?
— О чем речь, товарищ профессор! Я даже знаю формулу, которую здесь нужно использовать. Если желаешь, я могу тебе написать программу, которая сантиметры будет переводить в километры или даже дюймы в миллиметры.
— Прекрасно! А секунды — в годы?
— Вы меня обижаете, товарищ академик!
— Итак, получилось, что нашу программу очень легко переделать, чтобы она переводила любую единицу измерения в другую независимо от того, что эти единицы измеряют.
— Вряд ли это так уж важно, что мы одни единицы переводим в другие…
— Во! Именно это я и хотел услышать. Важно то, что счет проводится по какой-то формуле, все равно по какой. Это может быть расчет скорости по заданным пути и времени, расчет зарплаты по количеству выработанных норм и расценке; это может быть расчет объема куба по одной грани или объема цилиндра по радиусу и высоте.
— С таким же успехом это могло бы быть и вычисление площади.
— Другой пример. Проявив чудеса изобретательности, ты решила какую-то очень сложную задачу по математике. Например, такую: из пункта А в пункт В со скоростью V1 мчится поезд, ему навстречу со скоростью V2 мчится другой поезд. Через какое время они налетят друг на друга, если расстояние между А и В равно т километров.
— Лучше бы автомашины, они смогли бы разминуться.
— Это совершенно все равно. Если тебе нравится, пусть это будут лягушки. Важно то, что с обеих сторон кто-то несется друг другу навстречу. Если решишь эту задачу, то сможешь запрограммировать формулу для расчета времени встречи
и тебе останется только ввести какие-нибудь значения скоростей V1, V2 и расстояния т, чтобы получить время встречи. И так будет с любой похожей формулой. И с непохожей тоже. Лишь бы была формула.
— Однако есть и различия. В нашей первой программе нужно было ввести только одно число — градусы Фаренгейта. А чтобы считать по твоей формуле встречи поездов, нужно ввести 3 числа.
— Да, такое различие имеется. Но все равно, мы сейчас можем запрограммировать любую формулу на свете.
Понимаешь, блок-схемы этих программ будут почти одинаковы, а программы будут делать нечто вроде бы совсем разное.
— Почему же «вроде бы»?
— Потому что различия появляются только тогда, когда ты начинаешь вникать в существо дела: что это такое считается по этой формуле? что вводят? что выводят? Когда ты хочешь понять, какой во всем этом смысл. Машина же не может ни хотеть, ни понимать, она только рассчитывает по заданной формуле. И тогда между формулами большого различия нет. Поняла?
— Нет, не совсем. Но ничего, до следующего раза пойму. Сейчас все равно нужно уходить, так как уже прибыли жаждущие программировать.