Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_1 / ЛК-2- Введение в программирование.doc
Скачиваний:
85
Добавлен:
06.03.2016
Размер:
80.9 Кб
Скачать

6

Введение в программирование

1. Этапы решения задач на эвм

Компьютер – это программно-управляемое многофункциональное автоматическое устройство для создания, хранения, обработки и передачи информации.

Перед нами может стоять задача, для решения которой на ком­пьютере уже имеется готовая программа. Если у нас есть право на ее использование, то мы можем применить эту программу. Так, для работы с текстом, графическим изображением, для типовых расче­тов все чаще используют разработанное специалистами приклад­ное программное обеспечение. Но если для решения задачи хотят прибегнуть к помощи компьютера, а готовой программы для ее решения нет, то понадобится освоить весь процесс решения задачи на компьютере, создав свою оригинальную (уникальную) программу. В этом случае процесс решения задачи на компьютере включает в себя следующие основные этапы:

  1. Постановка задачи.

  2. Выбор метода решения (построение математической мо­дели).

  3. Разработка алгоритма – последовательности действий по решению задачи.

  4. Составление программы на языке программирования.

  5. Реализация программы на компьютере.

  6. Анализ полученных результатов.

  7. Тестирование.

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

Постановка задачи. Занимаясь постановкой задачи, вы должны четко сформулировать задачу. Такое требование вам может показаться странным: ведь обычно из формулировки школьной задачи можно однозначно извлечь, что дано, что требуется полу­чить и как связаны исходные данные с результатами (хотя, быть может, не всегда просто это сделать). Однако жизнь постоян­но заставляет решать задачи посложнее, чем в школьных учебни­ках. Примеры из жизни: решить задачу по обмену квартир или составить школьное расписание. Представьте, сколько различных факторов должны быть учтены при решении каждой задачи и вы согласитесь, что формулировка задачи очень важное дело. Недаром говорят, правильная постановка задачи – половина дела.

Четко сформулировать задачу — это значит выска­зать те предположения, которые позволят в море информации об изучаемом явлении или объекте выудить исходные данные, опре­делить, что будет служить результатом, и какова связь между исходными данными и результатом. Все это: предположения, исходные данные, результаты и связи между ними — называют моделью задачи.

Выбор метода решения (построение математической моде­ли). Разрабатывать алгоритм как последовательность действий бу­дущего исполнителя, направленных на решение задачи, можно лишь тогда, когда ясно, как решать задачу, в чем ее смысл, слож­ность, к какому классу задач она принадлежит, какой математический способ, ме­тод решения наиболее адекватно будет соответствовать реальным явлениям и процессам. То есть необходимо перевести задачу на язык математики. Результатом такого математического перевода является получение математической модели задачи.

Разработка алгоритма. На основе математической модели задачи затем разрабатывается алгоритм решения данной задачи то есть система точных и понятных предписаний (команд) о последовательности дейст­вий, позволяющая за конечное число их шагов получить результат. Этап алгоритмизации заслуженно считается наиболее творческим, но и самым трудным.

Алгоритм, разрабатываемый нами для компьютера, должен обладать свойства­ми дискретности, понятности, детерминированности, резуль­тативности и массовости. Алгоритм составляется в форме, допустимой для конкретного типа алгоритма, чаще всего в графи­ческой, ввиду универсальности ее применения и наглядности.

Составление программы. В ЭВМ алгоритм реализуется с помощью программы.

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

Для первых ЭВМ программы составлялись в машинных кодах, теперь главным образом – на языках программирования. Затем программа реализуется на ЭВМ.

Языков программирования великое множество. Они, как люди, – рождаются и умирают. Среди них QBasic является долгожителем. Он легок в изучении, дает универсальную общую информацию о программировании. Его мы и будем изучать. После его изучения переход к другим «профессиональным» языкам программирования становится простым и естественным.

Реализация программы на компьютере. Для выполнения программы на ЭВМ программа должна быть переведена на язык машинного кода. Такой перевод осуществляют трансляторы – специальные программы-переводчики. Существуют два вида таких программ: компиляторы и интерпретаторы.

Различие между ними следующее. Компилятор переводит всю программу в машинный код оптимальным образом и формирует исполняемый файл с расширением ,exe и .com. Это чистый машинный код. Программируемая среда языка для выполнения такого файла не требуется. Интерпретатор обеспечивает немедленное покомандное выполнение программы и результат далек от оптимального. Откомпилированные программы работают в 20 – 50 раз быстрее, чем программы, выполненные под управлением интерпретатора.

Чтобы программа работала правильно и не содержала ошибок, ее необходимо отладить. Сложность отладки больших программ подтверждает известная шутка программистов: «в каждой отлаженной программе содержится, как минимум, 2 – 3 ошибки». Отладка компьютерной программы означает не только устранение синтаксических ошибок, в поиске которых помогает транслятор. Также должна обязательно производиться проверка работы программы на конкретных вариантах исходных данных, подобранных так, чтобы охватить все возможные для дан­ной задачи случаи. Самый трудный случай отладки – программа идет, а результат ошибочный. Источники таких ошибок: или сам алгоритм неправильный, или правильный алгоритм неправильно запрограммирован. То есть когда крупные ошибки в программе найдены, исправлены и начинается поиск мелких ошибок.

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

  • сравнивают полученные результаты с результатом, рассчитан­ным в соответствии с тем же методом, но вручную или с помо­щью калькулятора;

  • сопоставляют результат, полученный в результате работы ком­пьютерной программы, с экспериментальными фактами, теоре­тическими воззрениями и другой достоверной информацией об изучаемом объекте.

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