Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
osnovy_programmirovanija_v_srede_lazarus.pdf
Скачиваний:
187
Добавлен:
18.03.2015
Размер:
6.53 Mб
Скачать

1.1 Понятие алгоритма.

____________________________________________________________________

1.1.3 Вместо лирического отступления

Какие выводы можно сделать из анализа этой задачи с точки зрения разра-

ботки алгоритма или, как еще говорят, алгоритмизации данной задачи?

Во-первых, крайне редко и для очень простых задач удается сразу и без-

ошибочно записать алгоритм. В большинстве случаев приходится, как мы ви-

дели, начинать с самой общей и несколько "расплывчатой" формулировки ал-

горитма. В любом случае стоит даже этот алгоритм записать в виде блок схемы

(рис. 1.2). Потому что одно из несомненных достоинств записи алгоритма в ви-

де блок-схемы заключается в том, что это позволяет увидеть структуру алго-

ритма.

Постепенно мы детализировали алгоритм, с каждым шагом улучшая и со-

вершенствуя его. Кстати, метод, которым мы воспользовались, так и называется

метод пошаговой детализации.

Во-вторых, многие молодые, особенно начинающие, программисты часто вообще игнорируют этап составления алгоритма, и едва успев прочесть усло-

вие задачи, сразу садятся за компьютер и начинают писать программу. Встре-

чаются, конечно, сверходаренные люди, которые могут позволить себе это, и

то – не всегда. Но таких – единицы! Большинству "смертных" приходится по-

шагово разрабатывать алгоритмы и записывать их в том или ином виде.

В-третьих, автор многократно наблюдал такую картину – студент получает задание, записывает условие задачи себе в тетрадь и … застывает как сфинкс!

Проходит минут пять, десять, двадцать, … много проходит времени, а он даже не шелохнется, не в силах предложить что-нибудь путное! Потом, когда спра-

шиваешь у него – о чем ты думал в это время, ответы неопределенные, чаще всего типа "не знал с чего начать".

Помимо стандартного ответа – "если не знаешь с чего начать, начни с на-

чала", что еще можно посоветовать:

1. Еще более стандартно – больше читайте книг, скрупулезно разбирайте

26

Глава 1 Основы программирования

____________________________________________________________________

примеры, приведенные в них. "Горе тому, кто читает только одну книгу" (Джордж Герберт).

2. Одного чтения и "понимания" примеров в книгах недостаточно. Надо самостоятельно тренироваться в составлении алгоритмов для самых разных за-

дач. Если можно так выразиться – тренируйте "соображалку"! Лучший способ такой. Если вы видите в книге подробно разобранный пример, не спешите чи-

тать дальше. Попробуйте составить алгоритм самостоятельно! Это может от-

нять у вас довольно много времени. Не жалейте его! И только после полного завершения составления алгоритма можете свериться с книгой. На первых по-

рах у вас может ничего не получаться. Не отчаивайтесь, со временем придет умение и опыт.

3. Не стесняйтесь спрашивать, перенимайте опыт у других. В сети огром-

ное количество форумов по программированию. Зайдите в любой из них, по-

смотрите, какие вопросы там задаются и, опять, постарайтесь сначала сами от-

ветить на этот вопрос и лишь после этого можете смотреть, как на этот вопрос отвечают другие. В конце книги приведены адреса нескольких сайтов, в кото-

рых имеются форумы по программированию, в частности форум, посвященный программированию в среде Lazarus.

4. У вас должна быть создана (со временем, конечно!) своя коллекция ал-

горитмов, собственных наработок, типовых приемов и даже готовых кусков ко-

да, которые вы будете вставлять в будущие свои программы.

И, наконец, сплошь и рядом встречаются ситуации, когда не помогает ни опыт, ни знания. Как быть? Готовых рецептов не существует. И здесь снова хо-

чу подчеркнуть, что программирование это творчество. А в творчестве нет, и не может быть никаких готовых рецептов. Здесь, как говорится, дело в "искре божьей"! Уместно вспомнить и высказывание Остапа Бендера – "блондин игра-

ет в шахматы хорошо, брюнет играет плохо и никакие лекции не изменят этого соотношения сил"!

27

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]