Как Петя Бейсиков Тоню Соображалкину программировать учил

Бруно Мартузан
100
10
(1 голос)
0 0

Аннотация: В книге в занимательной форме излагаются основные идеи программирования. В основу излагаемого положен язык Бейсик, широко применяемый для программирования на мини-и микро-ЭВМ. Сведений, которые приводятся в книге, достаточно для освоения практического программирования. На примерах небольших программ обработки данных, программ обучения и других дается представление об основных областях применения ЭВМ.

Книга добавлена:
20-07-2023, 07:33
0
151
141
Как Петя Бейсиков Тоню Соображалкину программировать учил
Содержание

Читать книгу "Как Петя Бейсиков Тоню Соображалкину программировать учил"



ВОЗМОЖНЫЕ ОШИБКИ

— Все логично с правильной программой. Но программа может быть и неправильной, и притом работать неправильно только при отдельных комбинациях входных данных, а при всех остальных изображать правильно работающую программу.

— Не верю, что такие ошибки могут быть.

— Труднее всего найти ошибки, которых не может быть. Так говорил Алгоритмыч.

— Придумай тогда в этой программе такую ошибку!

— Я не говорю об этой программе, а вообще. Здесь, может быть, и не удастся придумать достаточно «естественную» ошибку, но попробовать можно. Например, для отыскания последней буквы в имени поздравляемого человека мы пишем не

Р¤ = SEG¤(V¤,L,L)

а по рассеянности вводим букву G не только в имени функции, но и в аргументах

P¤ = SEG¤(V¤,G,G)

Что произойдет?

— Что произойдет? Если обращаемся «дорогой», будет найдена первая буква, а если «уважаемый»— вторая.

— Вот представь: ты вводишь имя АНТОНИНА и если хочешь к ней обратиться «дорогая», то все правильно — первая буква совпадает с последней, и наш алгоритм срабатывает правильно. Если же хочешь обратиться «уважаемая»— не тут-то было — получишь УВАЖАЕМЫЙ АНТОНИНА. С именем КАТЯ будет наоборот — она станет мужчиной, когда будет дорогой. А если такая ошибка:

P¤ = SEG¤(V¤,5,5)

— Тогда в имени будет найдена пятая буква. И только с пятибуквенными именами программа сработает правильно, с другими — как бог на душу положит.

— Нужно признать, что наша система тестирования не обеспечивает обнаружения таких ошибок. Скажем, мы могли случайно для тестов взять как раз пятибуквенные слова. Или случайно пропустить вариант «дорогая Антонина», а уважаемым считать Петра. Ведь мы же договорились не перебирать все возможные комбинации входных данных. Тестирование — это сложная наука.

— Ну а если все-таки обнаружили, что программа делает не то. Как найти, где именно ошибка?

— Ой, это нелегко! Если программа вдруг начинает путать, можно подумать, что какой-то из операторов сравнения срабатывает неправильно. Можно их просмотреть и убедиться, что они записаны верно. Если так, то неверны данные, используемые этими операторами. В нашем случае самое подозрительное данное — это последняя буква РД, которая присутствует во многих операторах сравнения. Чтобы проверить это значение, можно поступить так. После строки 310 с нахождением РД вставляем дополнительную строку 315 STOP и пропускаем программу еще раз с теми же входными данными, которые до того давали ошибку. Когда произойдет останов на строке 315, можем в непосредственном режиме посмотреть значения P¤, D и другие, какие захотим. Если обнаружится что-то подозрительное, то посмотрим программные строки, ответственные за это. В конце концов и обнаружим ошибку.

— По традиции мы сейчас должны были бы эту программу «проразмыслить». Но мы столько провозились, что это дело нужно пока отложить.


Скачать книгу "Как Петя Бейсиков Тоню Соображалкину программировать учил" - Бруно Мартузан бесплатно


100
10
Оцени книгу:
0 0
Комментарии
Минимальная длина комментария - 7 знаков.
Книжка.орг » Околокомпьютерная литература » Как Петя Бейсиков Тоню Соображалкину программировать учил
Внимание