Просмотров-170
0

Методика изучения алгоритмов решения задач

Использование среды программирования для изучения алгоритмов

Хорошо известно, что программирование и алгоритмы решения задач на ЭВМ не разрывно взаимосвязаны при разработке хорошего программного обеспечения. Поэтому изучение алгоритмов решения задач неотъемлемый атрибут становления программистом. Методика изучения алгоритма решения задач программисту при при проектировании и создании программного обеспечения с использование среды программирования рассматривается в данной статье.

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

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

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

Для этого необходимо взять любую программу и повыполнять ее в пошаговом режиме, наблюдая за изменениями переменных, так чтобы понять, как работает запрограммированный алгоритм. Одновременно можно запоминать и приемы программирования.  И тогда станет ясно, что алгоритмы и программирование это единый процесс для профессионала.

Для примера рассмотрим методику изучения алгоритма пузырьковой сортировки элементов массива на языке Pascal.
Находим программу пузырьковой сортировки массива. Создаем проект консольного типа. Вставляем в него текст программы. Если имеются ошибки, в процессе отладки программы устраняем их.

Методика изучения алгоритма в среде выполнения задачи

Когда программа выполняется, расставляем точки останова в местах с которых будем контролировать значения переменных и элементов сортируемого массива. Запускаем программу. Выполнение остановится на первой контрольной точке. Далее выполнение осуществляется по шагам, путем нажатия клавиши F8.

Нулевая итерация внутреннего цикла (i=1, j=1) заключается в выборе первого элемента массива и сравнении его со вторым элементов. Так как результат “ложный”, то ничего не делается.

Первая итерация внутреннего цикла – сравнивается второй элемент с третьим. Сравнение “истина”. Запоминается больший элемент в переменной k=246. Затем меньший элемент 39 записывается на предыдущее место большего. В следующем операторе значение большего элемента записывается на предыдущее место второго элемента. Произошла перестановка второго и третьего элементов. Больший элемент(камень) опустился на одну позицию вниз, меньший элемент(пузырек) поднялся на позицию вверх. Первые три итерации внутреннего цикла показаны на рисунках ниже.

Методика изучения алгоритма в среде выполнения задачи - первая итерация

Вторая итерация внутреннего цикла – сравнивается третий элемент с четвертым. Сравнение “истина”. Запоминается больший элемент в переменной k=246. Затем меньший элемент 245 записывается на предыдущее место большего. В следующем операторе значение большего элемента записывается на предыдущее место третьего элемента. Произошла перестановка третего и четвертого элементов. Больший элемент(камень) опустился на одну позицию вниз, меньший элемент(пузырек) поднялся на позицию вверх.

Методика изучения алгоритма в среде выполнения задачи - вторая итерация

Третья итерация внутреннего цикла – сравнивается четвертый элемент с пятым. Сравнение “истина”. Запоминается больший элемент в переменной k=246. Затем меньший элемент 26 записывается на предыдущее место большего. В следующем операторе значение большего элемента записывается на предыдущее место четвертого элемента. Произошла перестановка четвертого и пятого элементов. Больший элемент(камень) опустился на одну позицию вниз, меньший элемент(пузырек) поднялся на одну позицию вверх.

Методика изучения алгоритма в среде выполнения задачи - третья итерация

И так повторяется столько раз, каков размер массива. Для рассматриваемого примера 10 раз. При этом самый большой элемент окажется в самом низу.

Затем вся эта процедура повторяется еще десять раз. В результате в консоль выводится отсортированный массив.

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

Аналогично данная методика изучения алгоритма может применяться для изучения работы более совершенных алгоритмов сортировки, таких как метод быстрой сортировки Хоара и другие. Что касается сложных программ, то здесь нужен опыт и умение применит данный подход к фрагментам программы, а не к программе в целом.

Другой подход к изучению алгоритмов решения задач на ЭВМ описан в статье данного сайта Как изучать алгоритмы по математическим преобразованиям?

Заключение

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

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

Связанные материалы

Внимание! Кто хочет своевременно узнавать о выходе новой статьи на сайте должен подписаться.

ПОДПИСКА НА РАССЫЛКУ

Статьи об онлайн курсах обучения

Дистанционное обучение
Обучение программированию
Проектирование информационных систем
 
Реклама. Информация о рекламодателе по ссылкам в статье.

brasm

Пенсионер с 33 - летним педагогическим стажем

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *