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