Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Клуб профессиональных программистов :: Выпуск #93


Клуб профессиональных программистов "Весельчак У"
Информационная рассылка сайта и форума.  Выпуск No93 (2010-05-11).

Здравствуйте, уважаемые читатели!

На наш форум часто заходят новички в программировании. К сожалению, в большинстве это — студенты-халявщики (и у каждого есть объяснение, важное только для него, почему он не хочет учиться). Таки мы сразу говорим, что за них ничего нелать не будем и чтобы получить помощь они должны показать свое желание учиться, показать уже написанный код или алгоритм, объяснить, что они делали и что не получается.

Другая, пусть и малочисленная, группа новичков (в ней попадаются не только студенты и школьники, но и люди постарше) проявляет стремление к обучению и мы им помогаем в этом, в меру наших сил и наличия времени.

А есть еще меньшая группа, пограничная между надоевшими халявщиками и созначельными учащимися — те, кто хочет и старается, но не может понять по причине неразвитости навыков к программированию. Таких как способность к анализу задания, построению алгоритмов и т.п. После общения с такими постителями форума наш автор Dimka (кстати, преподаватель) написал лекцию по составлению алгоритмов для простейщих случаев. Лекция должна помочь понять новичку основы, чтобы он смог самостоятельно сделать следующий шаг в изучении программирования.


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

Отзывы о прочитанном и предложения можно высказать на нашем форуме, а разделе для начинающих.



Любой алгоритм — это упорядоченная последовательность действий, направленная на перевод системы из одного состояния в другое. Соответственно, начальное состояние называется предусловием — чтобы алгоритм правильно работал, нужно, чтобы он запустился только тогда, когда система находится в начальном состоянии, иначе нельзя гарантировать, что выполнение всех действий приведёт к ожидаемому результату, или, что эти действия не приведут к аварии. Конечное состояние называется постусловием — алгоритм обязан гарантированно приводить к конечному состоянию, нередко окончание работы алгоритма (особенно с циклами и/или рекурсией) определяется именно по факту выполнения постусловия (т.е. достижения ожидаемого результата). Пред- и постусловие разрабатываются до алгоритма и потом помогают программисту составлять сам алгоритм. Когда алгоритм разбивается на части — на последовательные шаги или этапы, пред- и постусловие разрабатываются для каждого шага, при этом постусловие предыдущего не должно конфликтовать с предусловием последующего шага.

Как этим пользоваться? Рассмотрим на элементарном примере. Допустим, система — это дверь. Соответственно, она может находиться в двух состояниях: открыта или закрыта. И над ней можно выполнять три действия: открыть или закрыть, а также узнать текущее состояние. Поскольку алгоритм должен переводить систему из одного состояния в другое, для двери возможно составить 2 алгоритма, каждый из которых состоит лишь из 1 действия:


  • Предусловие А: дверь открыта.
  • Алгоритм А: закрыть дверь.
  • Постусловие А: дверь закрыта.

  • Предусловие Б: дверь закрыта.
  • Алгоритм Б: открыть дверь.
  • Постусловие Б: дверь открыта.

...


Если начало вас заинтересовало, прочитать лекцию целиком вы можете на сайте клуба.



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


С уважением, команда Клуба.


В избранное