Скачать презентацию Виды алгоритмов и основные принципы составления алгоритмов Скачать презентацию Виды алгоритмов и основные принципы составления алгоритмов

Vidy_algoritmov.pptx

  • Количество слайдов: 87

Виды алгоритмов и основные принципы составления алгоритмов Виды алгоритмов и основные принципы составления алгоритмов

Должен знать: - Типы алгоритмов, символы блок-схем Должен уметь: - Определить типы алгоритмов (линейный, Должен знать: - Типы алгоритмов, символы блок-схем Должен уметь: - Определить типы алгоритмов (линейный, циклический, разветвляющийся), использовать унифицированные структуры для построения блок-схем.

Основные принципы алгоритмизации (общие правила построения схемы алгоритма) 1. Выяснить исходные данные, результаты, назначить Основные принципы алгоритмизации (общие правила построения схемы алгоритма) 1. Выяснить исходные данные, результаты, назначить им имена. 2. Выбрать метод (порядок) решения задачи. 3. Разбить метод решения задачи на этапы (с учетом возможностей ЭВМ). 4. Изобразить каждый этап в виде соответствующего блока схемы алгоритма и указать стрелками порядок их выполнения. 5. В полученной схеме при любом варианте вычислений: а) предусмотреть выдачу результатов или сообщений об их отсутствии; б) обеспечить возможность после выполнения любой операции так или иначе перейти к блоку «Останов» (к выходу схемы).

Вида алгоритмов по их структуре: Несмотря на очевидное разнообразие алгоритмов, с которыми приходится сталкиваться Вида алгоритмов по их структуре: Несмотря на очевидное разнообразие алгоритмов, с которыми приходится сталкиваться человеку в процессе решения множества различных задач, все же можно выделить три основных вида алгоритмов по их структуре: — линейные алгоритмы; — разветвляющиеся алгоритмы; — циклические алгоритмы.

Линейные алгоритмы Линейными называются алгоритмы, в которых все этапы решения задачи выполняются строго последовательно. Линейные алгоритмы Линейными называются алгоритмы, в которых все этапы решения задачи выполняются строго последовательно.

Пример 2. Найти силу тяготения F двух тел с массами m 1 и т2 Пример 2. Найти силу тяготения F двух тел с массами m 1 и т2 находящихся на расстоянии r между собой. Решение: По закону всемирного тяготения: где G = 6, 67*10 -11 Н*м 2/кг 2.

Линейные алгоритмы Линейные алгоритмы

Задача Даны длины двух катетов прямоугольного треугольника. Определить периметр этого треугольника. Требуется составить алгоритм Задача Даны длины двух катетов прямоугольного треугольника. Определить периметр этого треугольника. Требуется составить алгоритм решения задачи. Решение. 1. Исходные данные: А, В — длины катетов. Результат: Р — периметр треугольника. 2. В нашем случае метод решения задачи на ЭВМ такой: ▪ ▪ 1. Ввод данных. 2. Вычисление: 3. Вычисление: Р=Y+А+В. 4. Вывод Р.

 Независимо от того, на каком языке программирования будет написана программа, алгоритм решения любой Независимо от того, на каком языке программирования будет написана программа, алгоритм решения любой задачи на ЭВМ может быть составлен из команд: присваивания; ввода; вывода; обращения к вспомогательному алгоритму; цикла; ветвления.

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

Деление обыкновенных дробей Деление обыкновенных дробей

Формат команды присваивания следующий: переменная: =выражение Знак «: =» нужно читать как «присвоить» . Формат команды присваивания следующий: переменная: =выражение Знак «: =» нужно читать как «присвоить» . Команда присваивания обозначает следующие действия, выполняемые компьютером: 1. Вычисляется выражение. 2. Полученное значение присваивается переменной.

В алгоритме присутствует команда ввода: ввод a, b, c, d В блок-схеме команда ввода В алгоритме присутствует команда ввода: ввод a, b, c, d В блок-схеме команда ввода записывается в параллелограмме — блоке ввода-вывода. При выполнении данной команды процессор прерывает работу и ожидает действий пользователя. Пользователь должен набрать на устройстве ввода (клавиатуре) значения вводимых переменных и нажать на клавишу ввода Enter. Значения следует вводить в том же порядке, в каком соответствующие переменные расположены в списке ввода. Обычно с помощью команды ввода присваиваются значения исходных данных, а команда присваивания используется для получения промежуточных и конечных величин. Полученные компьютером результаты решения задачи должны быть сообщены пользователю. Для этих целей предназначена команда вывода: вывод m, n С помощью этой команды результаты выводятся на экран или на устройство печати на бумагу.

Операция присваивания Рассмотрим последовательное выполнение четырех команд присваивания, в которых участвуют две переменные величины Операция присваивания Рассмотрим последовательное выполнение четырех команд присваивания, в которых участвуют две переменные величины а и b. Основные свойства команды присваивания: пока переменной не присвоено значение, она остается неопределенной; значение, присвоенное переменной, сохраняется в ней вплоть до выполнения следующей команды присваивания этой переменной; новое значение, присваиваемое переменной, заменяет ее предыдущее значение.

Обмен данными Даны две величины: Х и Y. Требуется произвести между ними обмен значениями. Обмен данными Даны две величины: Х и Y. Требуется произвести между ними обмен значениями. Например, если первоначально было Х = 1, Y= 2, то после обмена должно стать: Х = 2, Y= 1. Нужна третья дополнительная переменная. Назовем ее Z. Тогда задача обмена решается последовательным выполнением трех команд присваивания:

Задача Даны переменные А и B. Требуется обменять их значения, т. е. переменная А Задача Даны переменные А и B. Требуется обменять их значения, т. е. переменная А должна получить значение B, а B — значение А. Решение. 1. Исходные данные: А, B. Результат: А, B. 2. Метод решения задачи: Введем еще одну величину С

Исполнение алгоритма Исполнение алгоритма

Задача Даны величины А, B, С, D. Требуется переместить значения величин: B должно получить Задача Даны величины А, B, С, D. Требуется переместить значения величин: B должно получить значение А; С — значение Б; D — значение С. Решение: 1. Исходные данные А, B, С, D. Результат: А, B, С, D.

Метод решения задачи 2. Метод решения задачи: обычно предлагают такую последовательность операций: B: =А Метод решения задачи 2. Метод решения задачи: обычно предлагают такую последовательность операций: B: =А С: =B D: =C Для отладки исполним ее, взяв в качестве теста такие значения величин: А: =5; B: =10; С: =20; D: =100. Результаты исполнения: 1) B=А=5; 2) С=B=5; 3) D=С=5. ПЕРЕМЕЩЕНИЯ ЗНАЧЕНИЙ ВЕЛИЧИН НЕ ПРОИЗОШЛО Любая величина сохраняет свое значение, пока ей не будет присвоено новое, т. е. чтение числа из ячейки памяти не изменяет содержимого ячейки.

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

Разветвляющиеся алгоритмы Разветвляющимися называются такие алгоритмы, в которых выбирается один из нескольких возможных путей Разветвляющиеся алгоритмы Разветвляющимися называются такие алгоритмы, в которых выбирается один из нескольких возможных путей (вариантов) вычислительного процесса. Каждый подобный путь называется ветвью алгоритма. Признаком разветвляющегося алгоритма является наличие хотя бы одной операции проверки условия. В схеме алгоритма операцию проверки условия выполняет логический блок. Он изображается ромбом, внутри которого указывается проверяемое условие (отношение), и имеет два выхода: «Да» и «Нет» . Если условие (отношение) истинно (выполняется), то выходим из блока по выходу «Да» , если ложно (не выполняется) — по выходу «Нет» . Условие (отношение), содержащееся в логическом блоке, может быть заменено на противоположное: А ≠ В => В = А; х ≤ у=> у> х. При этом «Да» и «Нет» меняются местами. Логический блок может содержать лишь одно условие.

Пример 3. Определить кислотность раствора. Для этого капнуть на индикатор — лакмусовую бумажку — Пример 3. Определить кислотность раствора. Для этого капнуть на индикатор — лакмусовую бумажку — каплю раствора. Если лакмусовая бумажка под каплей раствора не изменит цвета, значит, это нейтральный раствор. Если индикатор покраснеет, значит, раствор кислый. Если бумажка посинеет, раствор щелочной.

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

Алгоритм решения квадратного уравнения Составить алгоритм решения квадратного уравнения Исходными данными здесь являются коэффициенты Алгоритм решения квадратного уравнения Составить алгоритм решения квадратного уравнения Исходными данными здесь являются коэффициенты а, b, с. Решением в общем случае будут два корня х1 и х2 которые вычисляются по формуле: Все используемые в этой программе величины вещественного типа.

Алгоритм решения квадратного уравнения Чтобы построить универсальный алгоритм, сначала требуется тщательно проанализировать математическое содержание Алгоритм решения квадратного уравнения Чтобы построить универсальный алгоритм, сначала требуется тщательно проанализировать математическое содержание задачи. Решение уравнения зависит от значений коэффициентов a, b, с: если а = 0, b = 0, с = 0, то любое х — решение уравнения; если а = 0, b = 0, с ≠ 0, то уравнение действительных решений не имеет; если а = 0, b ≠ 0, то это линейное уравнение, которое имеет одно решение х = -с/b; если а≠ 0 и d=b 2 - 4 ас ≥ 0, то уравнение имеет два вещественных корня ; если а ≠ 0 и d < 0, то уравнение не имеет вещественных корней.

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

Разветвляющимся называется такой алгоритм, в котором в зависимости от логического выражения выполняется то или Разветвляющимся называется такой алгоритм, в котором в зависимости от логического выражения выполняется то или иное действие. Задача. Вычислить значение Y по одной из формул: Y= хx+а, если х< 10 хx-b 1, если 10<=х<=20 сc+b 2, если 20<х<30 сc-b. З, если х>=30 Признаком разветвляющегося алгоритма является наличие операции проверки условия. Обычно различают два вида условий простые и сложные. Задача. Вычислить значение функции Z по одной из формул: Z= х-b 1, еслих<6 х2 + b 2 , если х=15 b 3+х, в остальных случаях

Циклические алгоритмы Циклическим называется алгоритм, в котором некоторая часть операций (тело цикла – последовательность Циклические алгоритмы Циклическим называется алгоритм, в котором некоторая часть операций (тело цикла – последовательность команд) выполняется многократно. Слово «многократно» не значит «до бесконечности» . Организация циклов, никогда не приводящая к остановке в выполнении алгоритма, является нарушением требования его результативности – получения результата за конечное число шагов. Типовая схема циклического алгоритма

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

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

Задача: Дано целое положительно е число п. Требуется вычислить n! (n-факториал). Вспомним определение факториала: Задача: Дано целое положительно е число п. Требуется вычислить n! (n-факториал). Вспомним определение факториала: Используются три переменные целого типа: п — аргумент; i — промежуточная переменная; F— результат

Пример 4. Задан массив А(1 : n), где значение n — четное число. Вычислить Пример 4. Задан массив А(1 : n), где значение n — четное число. Вычислить сумму элементов этого массива с четными номерами. Исходные данные: А(1 : n) = {а 1, a 2, a 3, . . . аn}. Результат: S.

Циклические алгоритмы Циклические алгоритмы

Цикл-пока, или цикл с предусловием Цикл-до, или цикл с постусловием Выполнение серии команд (тела Цикл-пока, или цикл с предусловием Цикл-до, или цикл с постусловием Выполнение серии команд (тела цикла) повторяется, Выполнение серии команд пока условие цикла ложно. (тела цикла) повторяется, Когда условие становится пока условие цикла истинно. истинным, цикл Когда условие становится заканчивает выполнение. ложным, цикл заканчивает выполнение.

Задания для самостоятельной работы (оператор цикла с параметром-со счетчиком) Нарисовать блок-схему вывода на экран Задания для самостоятельной работы (оператор цикла с параметром-со счетчиком) Нарисовать блок-схему вывода на экран всех целых чисел от 10 до 20 Нарисовать схему работы оператора цикла с параметром, значение которого меняется: а) от большего начального значения до меньшего конечного с шагом, равным - 1; б) от меньшего начального значения до большего конечного с шагом, равным 2.

Задания для самостоятельной работы (оператор цикла с параметром-со счетчиком) Ответьте, пожалуйста, на вопросы: 1) Задания для самостоятельной работы (оператор цикла с параметром-со счетчиком) Ответьте, пожалуйста, на вопросы: 1) может ли тело оператора цикла с параметром не выполниться ни разу? 2) сколько раз будет выполняться тело оператора цикла с параметром при начальном (а) и конечном (b) значениях параметра цикла, равных: ▪ ▪ а= 1; b= 10; а= 10; b = 20; а = N; b = M если во всех случаях шаг изменения величины-параметра равен 1; Cколько раз будет выполняться тело оператора цикла с параметром, если начальное значение параметра а = N, конечное значение b = М, а шаг изменения равен s (s≠ 1) ? (Конечно, в случае, если значение s≠ 1 допускается в языке программирования. )

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

Задания для самостоятельной работы (оператор цикла с предусловием) Данный оператор используется в тех случаях, Задания для самостоятельной работы (оператор цикла с предусловием) Данный оператор используется в тех случаях, когда число повторений действий в программе неизвестно. Правило: 1) необходимо определить условие, при котором нельзя или не нужно выполнять повторяющиеся действия; 2) записать в операторе условие, противоположное найденному на предыдущем этапе.

Задания для самостоятельной работы (оператор цикла с предусловием) 1) может ли тело оператора цикла Задания для самостоятельной работы (оператор цикла с предусловием) 1) может ли тело оператора цикла с предусловием не выполниться ни разу?

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

Задания для самостоятельной работы (оператор цикла с постусловием) Подготовить блок-схему, в которой пользователь в Задания для самостоятельной работы (оператор цикла с постусловием) Подготовить блок-схему, в которой пользователь в ответ на вопрос "Чет (2) или нечет (1) ? " должен ввести одно из двух значений — 1 или 2. В случае ввода другого числа на экран должно выводиться сообщение об ошибке, после чего действия должны повторяться до ввода правильного значения. Подготовить блок-схему, в которой пользователь должен ввести установленный пароль. В случае ввода неправильного пароля на экран должно выводиться сообщение об ошибке, после чего действия должны повторяться до ввода правильного значения.

 Часто в программах необходимо заменить одну разновидность оператора цикла на другую. Обсудим, всегда Часто в программах необходимо заменить одну разновидность оператора цикла на другую. Обсудим, всегда ли это возможно.

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

 Имея оператор цикла с параметром, всегда можно заменить его на оператор цикла с Имея оператор цикла с параметром, всегда можно заменить его на оператор цикла с постусловием (и, следовательно, — на оператор цикла с предусловием).

 Схема, иллюстрирующая возможность замены одной разновидности оператора цикла на другую, можно представить в Схема, иллюстрирующая возможность замены одной разновидности оператора цикла на другую, можно представить в виде:

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

Циклический алгоритм описывает вычислительный процесс, содержащий однотипные, многократно повторяющиеся вычислений. Выделяют циклы с известным Циклический алгоритм описывает вычислительный процесс, содержащий однотипные, многократно повторяющиеся вычислений. Выделяют циклы с известным количеством повторений и итерационные циклы (с неизвестным количеством повторений). Существуют три вида циклов: 1) с предварительным условием 2) с последующим условием 3) с параметром Задача. Вычислить значения функции у=х3+bх-с, где х принадлежит [-10; 10] , с шагом h=1

Контрольные вопросы 1. Охарактеризуйте базовые структуры алгоритмов. 2. Дано число X и последовательность действий: Контрольные вопросы 1. Охарактеризуйте базовые структуры алгоритмов. 2. Дано число X и последовательность действий: умножить полученное число на 2; сообщить результат; разделить А на 3; вычесть из полученного числа 5; прибавить к полученному числу 7. Сколько и каких различных алгоритмов можно составить из этой последовательности действий? Какие функции от Х при этом вычисляются? 3. Приведите примеры задач, для реализации которых применимы: а) линейные алгоритмы; б) разветвляющиеся алгоритмы; в) циклические алгоритмы. 4. Охарактеризуйте разницу между циклом типа до и циклом типа пока. 5. Приведите примеры задач, для реализации которых целесообразно применять циклические структуры: а) с постусловием; б) с предусловием. 6. Изобразите блок-схему алгоритма определения максимального числа в последовательности из n произвольных чисел.

Контрольные вопросы 7. Нарисуйте блок-схему алгоритма получения произведения п произвольных чисел (n= 15). 8. Контрольные вопросы 7. Нарисуйте блок-схему алгоритма получения произведения п произвольных чисел (n= 15). 8. Нарисуйте блок-схему алгоритма вычисления суммы квадратов первых n чисел натурального ряда. 9. Модифицируйте алгоритм вычисления суммы квадратов первых n чисел натурального ряда для вычисления суммы квадратов: а) только четных чисел (до n); б) только нечетных чисел (до n). 10. Изобразите блок-схему простого диалогового алгоритма, который обращается к пользователю с просьбой ввести сначала строку имя, а затем строку настроение. В результате диалога может появиться следующий общий совместный текст Программа> Здравствуйте! Как Ваше имя? Пользователь> Гаврик Программа> Доброе утро, Гаврик! Как настроение? Пользователь>так себе Программа> У меня тоже так себе, Гаврик!

Исполнение алгоритма Исполнение алгоритма

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

Как оформляется процесс исполнения алгоритма При выполнении любой операции для каждой переменой — результата Как оформляется процесс исполнения алгоритма При выполнении любой операции для каждой переменой — результата операции — указывается ее имя и полученное ею значение. Исполним алгоритм «Начисления зарплаты» при значении ST (стажа работы), равном 18: 1. Ввод: ST=18. 2. Проверить: условие — ST<5 выполняется? 18<5 — Нет. 3. Проверить: условие — SТ<15 выполняется? 18<=15 — Нет. 4. ZP=180+(18 -15)10=210. 5. Вывод: ZP=210. 6. Вычисления прекратить. То же самое можно записать короче: 1. ST=18. 2. ST<5? 18<5 — Нет. 3. ST<15? 18<=15 — Нет. 4. ZP=180+(18 -15)10=210. 5. Вывод: ZP=210. 6. Останов.

Отладка алгоритма Отладка алгоритма

Алгоритм можно использовать только в том случае, если он верен Однако на практике в Алгоритм можно использовать только в том случае, если он верен Однако на практике в любом достаточно сложном алгоритме (если не принять специальных мер) обязательно содержатся ошибки. «Человеку свойственно ошибаться!» — говорили древние. Это свойственно и составителям алгоритмов. Поэтому любой вновь составленный алгоритм нужно «отладить» .

Отладкой алгоритма называется процесс выявления и исправления ошибок в нем. Суть отладки алгоритма в Отладкой алгоритма называется процесс выявления и исправления ошибок в нем. Суть отладки алгоритма в том, что выбирается некоторый набор исходных данных, называемый тестовым набором (тестом), и задача с этим набором решается дважды: один раз — исполнением алгоритма, второй раз — каким-либо иным способом, исходя из условия задачи, так сказать, «вручную» . При совпадении результатов алгоритм считается верным.

 В качестве тестового набора можно выбрать любые данные, которые позволяют: 1) обеспечить проверку В качестве тестового набора можно выбрать любые данные, которые позволяют: 1) обеспечить проверку выполнения всех операций алгоритма; 2) свести количество вычислений к минимуму. Какой смысл решать задачу на ЭВМ, если предварительно нужно решить ее вручную? алгоритм обычно составляется для того, чтобы использовать его многократно для решения задачи с разными значениями исходных данных. Но прежде чем использовать его, убеждаются, что он верен, решая один раз подобную задачу вручную, с тем чтобы в дальнейшем в течение, может быть, многих лет использовать алгоритм без проверки, полностью ему доверяя.

Отладка задачи «Вычисление заработной платы» В тестовый набор включим три варианта значений ST, например Отладка задачи «Вычисление заработной платы» В тестовый набор включим три варианта значений ST, например такие: 1) ST=3 (для проверки варианта ST<5); 2) ST=8 (для проверки варианта 5

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

Контрольные вопросы 1. Что такое алгоритм? В чем отличие этого понятия от понятия «метод Контрольные вопросы 1. Что такое алгоритм? В чем отличие этого понятия от понятия «метод решения задачи» ? 2. Каковы основные способы описания алгоритмов? 3. В чем суть исполнения алгоритма? 4. Отладка алгоритма — в чем ее цель и суть? 5. Каковы основные принципы составления алгоритмов? Из чего они вытекают?

Задачи 1 -16 для самостоятельной работы Задачи 1 -16 для самостоятельной работы

Задачи для самостоятельной работы 1. Составить программу вычисления суммы кубов двух чисел, вводимых с Задачи для самостоятельной работы 1. Составить программу вычисления суммы кубов двух чисел, вводимых с клавиатуры. 2. Составить программу вычисления длины окружности при вводе значения радиуса и приближенного значения числа π с клавиатуры. 3. Составить программу вычисления высоты свободного падения тела с нулевой начальной скоростью при вводе значения времени и приближенного значения ускорения с клавиатуры. 4. Составить программу вычисления дискриминанта квадратного уравнения при вводе значений его коэффициентов с клавиатуры. 5. Составить программу вычисления среднего арифметического трех чисел, вводимых с клавиатуры.

Задачи для самостоятельной работы 6. Две емкости воды слили в одну. Определить температуру смеси, Задачи для самостоятельной работы 6. Две емкости воды слили в одну. Определить температуру смеси, если массы начальных емкостей m 1, m 2, а температура соответственно t 1, t 2. Все величины вводятся с клавиатуры. Формула для вычисления 7. Одно и то же расстояние поезд прошел в одном направлении со скоростью V 1 км/час, а в обратном направлении — со скоростью V 2 км/час. Определить среднюю скорость движения поезда на два расстояния. V 1 и V 2 вводятся с клавиатуры. Формула для вычисления: 8. Определить общее сопротивление R при параллельном соединении трех сопротивлений R 1, R 2, R 3. 9. Определить площадь треугольника по заданным основанию и высоте. 10. Определить площадь трапеции по заданным основаниям и высоте.

Задачи для самостоятельной работы 11. Определить объем цилиндра и объем конуса при заданных основаниях Задачи для самостоятельной работы 11. Определить объем цилиндра и объем конуса при заданных основаниях и высоте. 12. Определить объем шара заданного радиуса. 13. Составить программу вычисления значений функции: при вводе значения х с клавиатуры. 14. Определить, на сколько увеличилась сумма срочного вклада за п лет, если за один год приращение равно 3% от суммы вклада. (Формула для вычисления: сумма вклада через n лет = [(1 + 0. 03)n -1] *х где х — сумма первоначального вклада. ) 15. Составить программу, по которой ЭВМ запрашивала бы ваше имя и потом приветствовала вас. 16. Составить программу выдачи на экран заголовка «Программа решения квадратного уравнения. . . » . (Вид уравнения вводится с клавиатуры. )

Задачи 17 -32 для самостоятельной работы Задачи 17 -32 для самостоятельной работы

Задачи для самостоятельной работы 17. Составить программу нахождения меньшего из двух чисел, вводимых с Задачи для самостоятельной работы 17. Составить программу нахождения меньшего из двух чисел, вводимых с клавиатуры; если они равные, то меньшим считать любое из них. 18. Составить программу нахождения модуля действительного числа, вводимого с клавиатуры. 19. Составить программу, устанавливающую, одного ли знака два числа, вводимые с клавиатуры (к числу 0 можно отнести любой знак). 20. Составить программу вычисления значений функции и вывода на экран значения функции или указания на точку разрыва. Значение аргумента вводится с клавиатуры. 21. Проверить, появляется ли при сложении двух цифр единица переноса в следующий разряд. Основание системы и цифры вводятся с клавиатуры. 22. Проверить, превышает ли 1000 произведение двух натуральных двузначных чисел, вводимых с клавиатуры.

Задачи для самостоятельной работы 23. Определить разность между квадратом большего и кубом меньшего из Задачи для самостоятельной работы 23. Определить разность между квадратом большего и кубом меньшего из двух различных чисел, вводимых с клавиатуры. 24. Натянутая нить удерживает тело, движущееся по окружности в вертикальной плоскости (другой конец нити закреплен). Возможен ли пролет тела через верхнюю точку окружности при данных V и r. Скорость полета и длина нити вводятся с клавиатуры. (Условие пролета тела через верхнюю точку: V 2 = r*g. ) 25. Превышает ли площадь прямоугольника со сторонами а, b площадь круга радиуса ? Данные вводятся с клавиатуры. 26. Можно ли в четырехугольник с длинами сторон а, b, с, d вписать окружность? 27. Существует ли логарифм числа а+ Ь* с? Числа а, b, с вводятся с клавиатуры.

Задачи для самостоятельной работы 28. Существует ли арифметическое значение квадратного корня числа а 2 Задачи для самостоятельной работы 28. Существует ли арифметическое значение квадратного корня числа а 2 - b 2? Числа а, b вводятся с клавиатуры. 29. Заданы коэффициенты квадратного уравнения а, b, с. Определить, имеет ли уравнение действительные корни. 30. Норма элемента в продукте не должна превышать к%. Установить, имеется ли превышение нормы, если в m кг продукта обнаружено n г этого элемента. 31. Можно ли считать человека совершеннолетним в апреле М-го года, если он родился в августе N-го года? 32. Зарплата у служащего больше 100 долларов в месяц. Он уплачивает подоходный налог в размере 8, 2 доллара плюс 13% той части зарплаты, на которую она превышает 100 долларов. Определить, превышает ли сумма налога 10% его зарплаты.

Задачи 33 -49 для самостоятельной работы Использовать вложенные условные операторы Задачи 33 -49 для самостоятельной работы Использовать вложенные условные операторы

Задачи для самостоятельной работы 33. Определить, попадает ли среднее арифметическое чисел а, b в Задачи для самостоятельной работы 33. Определить, попадает ли среднее арифметическое чисел а, b в промежуток [с, d]. Все данные вводятся с клавиатуры. 34. В каком отношении число а находится со средним геометрическим чисел b, с (положительные числа а, b, с вводятся с клавиатуры)? 35. В каком отношении число а находится со средним гармоническим чисел b, с (все числа положительные)? Среднее гармоническое находится по формуле 36. Определить тип треугольника по длинам сторон (равносторонний, равнобедренный или разносторонний). 37. Определить, удовлетворяет ли пара чисел р, q уравнению х2 + рх + q = 0. ах + by + с = 0, неравенству ах + by + с > 0 или неравенству ах + by + с < 0. (Значения а, b, с, р, q вводятся с клавиатуры. ) 38. Установить, принадлежит ли точка с координатами a, b окружности х2 + у2 = r 2, внутренней или внешней области по отношению к окружности.

Задачи для самостоятельной работы 39. По общему уравнению прямой (задаются коэффициенты а, b, с) Задачи для самостоятельной работы 39. По общему уравнению прямой (задаются коэффициенты а, b, с) установить, как расположена прямая — горизонтально, вертикально или наклонно (если прямая существует). 40. Исследовать уравнение с двумя неизвестными ах + by + с = 0 (в зависимости от значений коэффициентов а, Ь, с, задаваемых с клавиатуры). Информацию о количестве решений и сами решения, если они существуют, выдать на экран. 41. Решить систему линейных уравнений Информацию о количестве решений и само решение (если оно единственное), выдать на экран. 42. Решить неравенство ах> b (числа а, b вводятся с клавиатуры). 43. Установить, пересекаются ли прямые а 1 х + b 1 у + с1 = 0 и а 2 х+b 2 y + с2 = 0, параллельные, но не совпадают, или совпадают. Информацию выдать на экран.

Задачи для самостоятельной работы 44. По уравнениям двух прямых (задаются коэффициенты а 1, Ь Задачи для самостоятельной работы 44. По уравнениям двух прямых (задаются коэффициенты а 1, Ь 1, с1, и а 2, b 2, с2) установить, перпендикулярны ли они, параллельны, (в том числе совмещаются) или пересекаются, но не перпендикулярны. 45. Возможен ли треугольник с длинами сторон а, b, с ? Числа а, b, с вводятся с клавиатуры. 46. Существует ли четырехугольник с длинами сторон а> b, с, d? 47. Составить программу определения наибольшего (точнее, не меньшего других) из чисел а, b, с, вводимых с клавиатуры. 48. Определить среднее из трех различных чисел а, b, с, вводимых с клавиатуры. 49. Заменить систему неравенств: одним неравенством, ей эквивалентным.

Задачи 50 -69 для самостоятельной работы Задачи 50 -69 для самостоятельной работы

Задачи для самостоятельной работы 50. Проверить, попадает ли число а в промежуток [b; с]. Задачи для самостоятельной работы 50. Проверить, попадает ли число а в промежуток [b; с]. Все числа вводятся с клавиатуры. 51. Существует ли среди чисел а, b, с равное данному числу d ? 52. Проверить, расположены ли числа а, b, с в порядке возрастания. 53. Треугольник задан сторонами а, b, с. Определить, является ли угол, противолежащий стороне а, прямым, острым или тупым. 54. Определить тип треугольника по длинам сторон (равносторонний, равнобедренный или разносторонний). 55. Существует ли четырехугольник с длинами сторон а, b, с, d? 56. Определить среднее из трех чисел а, b, с. Если хотя бы два числа равны между собой, то за среднее принять любое из них. 57. По общим уравнениям двух прямых установить, перпендикулярны ли они, параллельны, совмещаются или пересекаются под острым углом.

Задачи для самостоятельной работы 58. Составить программу вычисления значений функции, заданной графиком: Задачи для самостоятельной работы 58. Составить программу вычисления значений функции, заданной графиком:

Задачи для самостоятельной работы 59. Составить программу вычисления значений функции, заданной графиком: Задачи для самостоятельной работы 59. Составить программу вычисления значений функции, заданной графиком:

Задачи для самостоятельной работы 60. Составить программу вычисления значений функции, равной сумме функций, указанных Задачи для самостоятельной работы 60. Составить программу вычисления значений функции, равной сумме функций, указанных в задачах 58, 59. 61. Составить программу вычисления значений функции, равной разности функций (первая минус вторая), указанных в задачах 58, 59. 62. Установить, принадлежит ли точка, заданная своими координатами, внутренней части треугольника, заданного координатами своих вершин. Указание. Точка принадлежит внутренней части треугольника, если по отношению к каждой стороне треугольника она лежит по ту же сторону, что и противолежащая этой стороне вершина. Если записать это условие для каждой стороны, предварительно выразив уравнения сторон через координаты вершин, мы получим развернутые условия, которые легко проверить с помощью программы.

Задачи 63 -74 для самостоятельной работы Задачи 63 -74 для самостоятельной работы

Задачи для самостоятельной работы 63. Составить программу, которая устанавливала бы, является ли четырехугольник со Задачи для самостоятельной работы 63. Составить программу, которая устанавливала бы, является ли четырехугольник со сторонами а, b, с, d параллелограммом (а, Ь, с, d— положительные действительные числа). 64. Составить программу, которая по координатам точки заключала бы, какому из координатных углов плоскости она принадлежит (первому, второму, третьему или четвертому). 65. Составить программу вычисления значений функции 66. По коэффициенту а и дискриминанту квадратного трехчлена установить, как расположены решения неравенства: ах2 + bх + с > 0 (если такие существуют) по отношению к корням соответствующего квадратного уравнения. 67. По длинам сторон треугольника а, b, с установить, является ли он прямоугольным, тупоугольным или остроугольным.

Задачи для самостоятельной работы 68. Установить, является ли четырехугольник с длинами сторон a, b, Задачи для самостоятельной работы 68. Установить, является ли четырехугольник с длинами сторон a, b, с, d ромбом. 69. Установить, принадлежит ли точка с координатами х, y внутренней части треугольника, ограниченного осями координат и прямой: х + у = 1. 70. Составить программу, определяющую наличие в данный день недели урока по алгебре и геометрии, если согласно расписанию уроки по алгебре есть в понедельник, среду и пятницу, а по геометрии — во вторник и четверг. 71. Используя составное условие, определить знак числа А, если известны отличные от нуля числа В и С=АВ. 72. Заданы какие-нибудь два угла одного треугольника и два угла другого треугольника. Определить, подобные ли эти треугольники. 73. Два треугольника заданы своими сторонами (в произвольном порядке). Определить, равные ли эти треугольники. 74. Два треугольника заданы своими сторонами. Определить, подобные ли эти треугольники.

Задачи 75 -79 для самостоятельной работы Задачи 75 -79 для самостоятельной работы

Задачи для самостоятельной работы 75. Составить программу нахождения частного и остатка при делении одного Задачи для самостоятельной работы 75. Составить программу нахождения частного и остатка при делении одного натурального числа на другое. 76. Найти наименьшее общее кратное натуральных чисел а, b 77. Дана последовательность натуральных чисел А, А + D, А + 2 D, . . . Входит ли в данную последовательность данное число А? С клавиатуры вводятся значения A, D, А. 78. Найти целое число n такое, чтобы выполнялись неравенства 2 n-1 <= М< 2 n для заданного положительного числа М. 79. Составить программу вычисления приближенного значения (а > =0), с точностью e > 0 по формуле Значения а, x 0, e вводятся с клавиатуры.

Задачи 80 -95 для самостоятельной работы Задачи 80 -95 для самостоятельной работы

Задачи для самостоятельной работы 80. Составить программу вычисления суммы кубов n первых натуральных чисел Задачи для самостоятельной работы 80. Составить программу вычисления суммы кубов n первых натуральных чисел (n задается с клавиатуры). 81. Вычислить значение суммы: при задании числа n с клавиатуры. 82. Вычислить значение произведения: Значение n вводится с клавиатуры. 83. Вычислить значение суммы: , при задании числа n с клавиатуры.

Задачи для самостоятельной работы 84. Вычислить значение суммы: при задании числа n с клавиатуры. Задачи для самостоятельной работы 84. Вычислить значение суммы: при задании числа n с клавиатуры. 85. Вычислить значение суммы: при задании n с клавиатуры. 86. В компьютер вводятся по очереди координаты n точек. Определить, сколько из них попадает в круг радиусом R с центром в точке (a, b). Значения n, а, b, R вводятся с клавиатуры. 87. Налоговая инспекция проводила проверку 30 предпринимателей (без образования юридического лица) на предмет полноты оплаты ими налогов. Вводя по очереди фамилии предпринимателей и величину уплаченных налогов в компьютер, определить, сколько из них полностью заплатили налоги, и отпечатать фамилии предпринимателей, полностью не рассчитавшихся с государством.

Задачи для самостоятельной работы 88. Составить программу вычисления числа воскресений в 2002 году (первое Задачи для самостоятельной работы 88. Составить программу вычисления числа воскресений в 2002 году (первое воскресенье 2002 года — 6 января). 89. Составить программу вычисления значения функции: (2 п - 1)!! = 1*3*5. . . *(2 n -1) (значение 2 n- 1 задается с клавиатуры). 90. Составить программу вычисления значения функции: (2 п)!! = 2*4. . . *2 n (значение 2 n задается с клавиатуры). 91. Вычислить приближенное значение функции: Значения х, n вводятся с клавиатуры.

Задачи для самостоятельной работы 92. Вычислить приближенное значение функции Значения х, n вводятся с Задачи для самостоятельной работы 92. Вычислить приближенное значение функции Значения х, n вводятся с клавиатуры. 93. Вычислить приближенное значение функции Значения х, n вводятся с клавиатуры. 94. Вычислить приближенное значение функции (0 < х = 2). Значения х, n вводятся с клавиатуры. 95. Вычислить приближенное значение функции (— 1 = x< 1). Значения х, n вводятся с клавиатуры.