Программы-визуализаторы алгоритмов - самый понятный и наглядный способ демонстрации работы сложных алгоритмов. n-mirgorodskay's blog / 06.08.2011 Одно из важнейших качеств хорошего учебника - это большое количество иллюстрационных примеров. Именно они помогают учащимся разобраться в тонкостях и нюансах, которые они не смогли понять в теоретической части. А иногда человек без поясняющего примера практического использования вообще не может понять, о чём идёт речь в теоретической части.Но как быть, если Вы преподаватель по предмету «структуры и алгоритмы», или учитель, который объясняет длинный и сложный (для школьника) алгоритм!? До того, как начать преподавать в школе информатику и алгебру, я преподавала в вузе студентам «структуры и алгоритмы». И поначалу в вузе, я, как и многие другие преподаватели, пошагово разбирала примеры работы алгоритмов прямо на доске во время лекций и практик. Но так как большинство алгоритмов содержат циклы и ветвления, каждый иллюстрационный пример получался ужасно громоздким, и его изложение занимало уйму времени. Приходилось писать то в одной части доски, то в другой - места не хватало. Учащиеся во всём этом начинали путаться, терять «ниточку», и далее уже не слушали. Кроме того, так как время ограничено, приходилось выбирать наиболее простые примеры, а значит плохие примеры - ненаглядные. Всё это негативно сказывалось на учебном процессе.Поэтому сейчас для иллюстрации работы алгоритмов и в вузе, и в школе я использую визуализаторы. Например, я применяю визуализаторы, когда нужно рассказать школьникам про сортировку пузырьком и другие виды сортировок (да, да, и про другие, благодаря визуализаторам на это остаётся время). Визуализаторы алгоритмов - это программы, которые наглядно, пошагово показывают выполнение алгоритма. То есть это, фактически, программная реализации алгоритма, выполняемая пошагово. На каждом шаге выполнения алгоритма на экране отображает состояние данных, с которыми работает алгоритм, и даются пояснения, какие действия над этими данными на данном шаге были произведены. При этом в визуализаторах обычно предусмотрена возможность вернуться назад, к предыдущему шагу выполнения алгоритма. То есть, используя визуализатор, ученик может ввести в него интересующий его пример входных данных, а дальше пошагово посмотреть, как программа преобразует эти данные в выходные, используя алгоритм.К сожалению, интернет-ресурсов, содержащих готовые визуализаторы, мало. Поэтому я написала программы-визуализаторы для нужных мне алгоритмов самостоятельно. Имея опыт программирования, это не очень сложно. Нужно просто закодировать алгоритм так, чтобы он выполнялся пошагово, добавить интерфейс для ввода и вывода данных, а также для перехода между шагами выполнения алгоритма. И всё. Единственное, в чем у Вас может возникнуть загвоздка, как реализовать в программе возвращение на шаг назад!? Ведь делать обратное преобразование данных порой бывает сложно. Поэтому удобнее просто на каждом шаге выполнения сохранять данные в файл, а потом, для возвращения на шаг назад, загружать соответствующую строчку из файла.Теперь, когда требуется рассказать школьникам или студентам достаточно сложныйалгоритм, я стараюсь проводить этот урок в классе, в котором есть компьютеры. Сначала я рассказываю учащимся алгоритм, потом они, используя визуализатор данного алгоритма, более подробно разбираются, как он работает. Далее, если этоинформатика, то учащиеся пишут небольшую программку, реализующую алгоритм. А если это математика, то решают примеры. После урока ученики скачивают визуализатор к себе на флэшку.Преимущества программ-визуализаторов алгоритмов: 1. Не надо писать длинные иллюстрационные примеры на доске. Это позволяет сэкономить учебное время, силы преподавателя... и ученики на уроке реже «засыпают». 2. Ученик, разбираясь в алгоритме, может не ограничиваться теми иллюстрационными примерами, которые продемонстрировал учитель. А может сам выбирать на примере каких данных смотреть работу алгоритма и делать это неограниченное количество раз и в более удобном виде. Это позволяет разобраться в алгоритме всем, даже тем, кто не очень внимателен на уроках.3. Работать с визуализатором ученику намного приятнее, чем с учебником или конспектом. Особенно если визуализатор хорошо оформлен.Таким образом, программы-визуализаторы алгоритмов часто полезно использовать в школах, и просто необходимо использовать в вузах. Тем не менее, в вузах они пока используются очень редко – жаль.Примеры программ-визуализаторов можно посмотреть здесь. алгоритм визуализатор программа