Хелпикс

Главная

Контакты

Случайная статья





Цикл с предусловием



 

Дата: 10 ноября 2020 г.

Номер группы: 107

Дисциплина: ОДУ 11. Информатика

Тема занятия:  Решение задач на компьютере

План изучения нового материала:

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

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

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

Третий этап – построение алгоритма. Наиболее эффективно математическую модель можно реализовать на компьютере в виде алгоритмической модели. Для этого может быть использован язык блок-схем или какой-нибудь псевдокод, например учебный алгоритмический язык. Разработка алгоритма включает в себя выбор метода проектирования алгоритма; выбор формы записи алгоритма (блок-схемы, псевдокод и др.); выбор тестов и метода тестирования; проектирование самого алгоритма.

Четвертый этап – программирование. Первые три этапа - это работа без компьютера. Дальше следует собственно программирование на определенном языке в определенной системе программирования. Программирование включает в себя следующие виды работ: выбор языка программирования; уточнение способов организации данных; запись алгоритма на выбранном языке программирования

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

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

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

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

Шестой этап – анализ результатов и уточнение модели. Последний этап - это использование уже разработанной программы для получения искомых результатов. Производится анализ результатов решения задачи и в случае необходимости - уточнение математической модели (с последующей корректировкой алгоритма и программы). Программы, имеющие большое практическое или научное значение, используются длительное время. Иногда даже в процессе эксплуатации программы могут исправляться, дорабатываться.

 

Структурное программирование – это такой подход (метод) составления программ, который способствует построению надежных, корректных и хорошо понимаемых программ. Такие программы имеют ясную логику, их легко читать сверху вниз, в них можно гораздо быстрее отыскать ошибки, внести изменения и исправления. Принцип структурного программирования состоит в том, что программа составляется из небольшого набора структурных конструкций управления вычислениями. При этом каждая структурная конструкция имеет один выход и один вход. Программа написания с помощью таких структур (`регулярных` способов) называется структурированием. И таких структур 3: следования (последовательности), ветвления и цикла.

1) Структура «следование» задает определенный порядок следования действий. Действия выполняются в порядке их написания. Структура может задаваться явно(когда используются какие-то средства для выделения структуры) или неявно(один оператор следует за другим).

2) Структура «ветвления» задает выбор одного действия из нескольких возможностей.

3) Структура «цикл» используется для того, чтобы задать действия, которые должны быть многократно повторить.

Цикл — одна из форм управляющих конструкций в языках программирования. Используется для многократного выполнения набора команд.

Цикл с предусловием

На рисунке ниже представлена блок-схема цикла с предусловием. Другие названия цикла: цикл-пока, цикл с заданным условием продолжения работы. Особенность данного вида цикла: операторы цикла будут повторяться до тех пор, пока условие истинно. Его проверка делается каждый раз пере выполнением операторов цикла. Цикл может ни разу не выполниться, если его условие ложно.

 

На рисунке показан вариант записи данной структуры на языке программирования Паскаль:

с использованием операторных скобок (begin end), выполнение двух и более команд;

запись с одной командой.

Задание 1. Даны два положительных числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Не используя операции умножения и деления, найдите длину незанятой части отрезка A.

program cycle1;

var a,b:real;

begin write('Введите длину отрезка А '); { вывод текстовой подсказки на экран }

readln(a); { ввод исходного значения длины отрезка А }

write('Введите длину отрезка В '); { вывод текстовой подсказки на экран }

readln(b); { ввод исходного значения длины отрезка В }

while a > b do a:=a-b; { цикл - вычисление остатка отрезка А }

write('Длина незанятой части отрезка А равна ',a); { вывод остатка отрезка А }

end.



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.