Тест по основам алгоритмизации 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Тест по основам алгоритмизации



 

Отметьте основные способы описания алгоритмов.

Блок-схемный

Словесно-формульный

С помощью сетей Петри

С помощью нормальных форм

С помощью граф-схем

 

Пронумеруйте в правильной последовательности этапы решения на ЭВМ научно-инженерных задач

Отладка программы

Решение задачи на ЭВМ и анализ результатов

Математическое описание задачи

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

Выбор и обоснование метода решения

Составление программы

Алгоритмизация вычислительного процесса

 

На каком из этапов устраняются синтаксические и логические ошибки в программе?

Алгоритмизация вычислительного процесса

Отладка программы

Составление программы

Решение задачи на ЭВМ и анализ результатов

 

Отметьте простейшие алгоритмические структуры.

Последовательность двух или более операций

Выбор направления действия

Вложенные повторения операций

Повторение действий

 

Какое из ниже перечисленных свойств не относится к основным свойствам алгоритма?

Результативность

Массовость

Корректность

Определенность

 


7. Практические задания

Примеры линейного и разветвленного алгоритмов

Пример 1 Составить блок-схему вычисления переменной

y = a3 / (a2 + x2)

при а и x, введенных с клавиатуры.

Решение

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

1. ввод значений а и х

2. вычисление значения y по заданной формуле

3. вывод полученного значения y

Изобразим данные шаги в виде блок-схемы:

Пример 2 Вычислить значение переменной y, в зависимости от значения переменных a и x, введенных с клавиатуры по правилу:

Решение

Данный алгоритм относится к типу разветвленных, так как значение переменной y вычисляется по разным формулам в зависимости от значений а и х. Алгоритм предполагает следующие шаги:

4. ввод значений а и х

5. определение соотношения переменных а и х

6. если a < x, то вычисление значения y по первой формуле и переход к шагу 8

7. если а ≥ х, то вычисление значения y по второй формуле

8. вывод полученного значения y

Изобразим данные шаги в виде блок-схемы:

 

 

 

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

Базовая структура цикл обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла.

Структура цикл существует в трех основных вариантах:

Цикл с параметром.

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

Обозначение цикла с параметром в блок-схемах алгоритмов.

 

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

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

Обозначение цикла с предусловием в блок-схемах алгоритмов.

 

Цикл с постусловием.

Предписывает выполнять тело цикла до тех пор, пока не выполнится проверочное условие (условие – ложно). Условие проверяется после выполнения тела цикла. Тело цикла выполнится как минимум один раз, даже если условие окончания цикла изначально верно.

Обозначение цикла с постусловием в блок-схемах алгоритмов.

 

Пример 1.

Составить блок-схему алгоритма вычисления функции в точках изменения аргумента:

Решение

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

 

Пример 2.

Составить блок-схему вычисления функции

с параметром  и при x, изменяющимся от 0 до 3 с шагом Dx = 0,1.

Решение

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

Задание 1(общее): переделать данный алгоритм так, чтобы использовать цикл с параметром.

 

Пример 3.

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

с заданной точностью ε (для данного знакочередующегося степенного ряда требуемая точность будет достигнута, когда очередное слагаемое станет по абсолютной величине меньше ε).

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

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

Решая эту задачу "в лоб" путем вычисления на каждом i-ом шаге частичной суммы

мы получим очень неэффективный алгоритм, требующий выполнения большого числа операций. Гораздо лучше организовать вычисления следующим образом: если обозначить числитель какого-либо слагаемого буквой р, то у следующего слагаемого числитель будет равен -р*х (знак минус обеспечивает чередование знаков слагаемых), а само слагаемое m будет равно p/i, где i - номер слагаемого.

 

Задание 2 (общее): переделать алгоритм так, чтобы использовался цикл с постусловием.

 

Задание 3 (индивидуальное):

Практическое задание по вариантам взять из методички «Информатика», тема 7: Программирование разветвляющихся и циклических алгоритмов, задание 2: нахождение суммы бесконечного ряда.

Задание 4 (индивидуальное). Составьте блок-схему алгоритма, позволяющего вычислить значение функции при значениях переменной х в интервале от -p до p с шагом 0,2. значение р вводится с клавиатуры.

Вариант Функция
1
2
3
4
5
6
7
8
9

Блок-схему нарисуйте в Word, используя Автофигуры => раздел Блок-схемы и раздел Соединительные линии.

Полученную блок-схему алгоритма сгруппируйте.

 



Поделиться:


Последнее изменение этой страницы: 2020-12-09; просмотров: 266; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.120.204 (0.009 с.)