Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Блок-схемы линейных алгоритмов
В примере 1 алгоритм задаётся словесно, графически он даётся в виде схемы на рис.1.1 в примере 6, где не требуется описания алгоритма, так как он представляется наглядно. Пример 6. Рис. 1.1. Блок-схема линейного алгоритма примера 6 Блок 2 соответствует вводу данных. Блок 3 представляет арифметическое действие z=x+y2. Блок 4 выводит результат. Блок 1 в схеме служит в качестве логического начала, а блок 5 –для завершения схемы. Блок-схемы разветвляющихся алгоритмов Ранее отмечалось, что разветвляющиеся алгоритмы предполагают проверку условий для выбора решения. В примере 7 рассматривается разветвляющийся алгоритм, где в зависимости от условия выбирается один из возможных вариантов решений. Алгоритм представляется в виде блок-схемы. Пример 7. При выполнении условия x>0 вычисляется функция: z=ln x+y, иначе, а именно, когда х=0 или x<0, вычисляется функция: z=x+y2. На рис.1.2 представлен разветвляющийся алгоритм, где в зависимости от условия выполнится одна из веток.
Рис. 1.2. Блок-схема разветвляющегося алгоритма примера 7 3. Примеры выполнения задания к практическому занятию № 1 Линейный алгоритм Пример 8. Вычислить и вывести на экран значение функции: Y = sin (x+30°)/(a + x)+b×a. Рис. 1.3. Блок-схема линейного алгоритма примера 8 Разветвляющийся алгоритм Пример 9. Если х>0, тогда вычислить: y = lg(x) + (a-d)/(d+b); иначе вычислить: y=sin (x)/(a + b)-b/d Рис. 1.4. Блок-схема разветвляющегося алгоритма примера 9 В блок-схеме видно, что в зависимости от условия x>0 выполняется одна из ветвей алгоритма. После вычисления выводится результат. Задания к практическому занятию № 1 1) По примеру 8 построить блок-схему для линейного алгоритма. Функцию каждому придумать свою. Образец для выполнения блок-схемы представлен на рис. 1.3. 2) По примеру 9 построить блок-схему для разветвляющегося алгоритма. Задачу каждому придумать свою. Образец для выполнения блок-схемы представлен на рис. 1.4. Задание ИДЗ №3 по теме «Алгоритмы. Блок-схемы. Ветвления» в Приложении №1. Вопросы для самоконтроля к практическому занятию № 1. Тема «Алгоритмы. Ветвления» 1. Универсальность (массовость) – это 1) алгоритм достигает результата за конечное число шагов. 2) каждое из действий и весь алгоритм в целом обязательно завершаются.
3) по завершении выполнения алгоритма обязательно получается конечный результат. 4) применимость алгоритма к различным наборам исходных данных. 2. Дискретность – это 1) применимость алгоритма к различным наборам исходных данных. 2) каждое из действий и весь алгоритм в целом обязательно завершаются. 3) процесс решения задачи по алгоритму разбит на отдельные действия. 4) алгоритм достигает результата за конечное число шагов. 3. Однозначность (детерминированность) – это 1) применимость алгоритма к различным наборам исходных данных. 2) правила и порядок выполнения действий алгоритма имеют единственное толкование. 3) каждое из действий и весь алгоритм в целом обязательно завершаются. 4) по завершении выполнения алгоритма обязательно получается конечный результат. 4. В результате работы линейного алгоритма: y:=x+3; x:=2*y; y:=x+y; вывод y. Переменная У приняла значение 18. Указать значение Х до начала работы алгоритма. 1) 7; 2) 3; 3) 5; 4) 10. 5. В результате работы алгоритма: a:= 5; b:= 7; если b < a, то a:= b-4, иначе b:=a+3; на экран будет выведено: 1) a= 5; b=7; 2) a= 3; b=7; 3) a= 5; b= 8; 4) a= 3; b= 8. 6. В результате работы алгоритма: x:= 10; y:= 7; если x > y, то x:= x-3, иначе y:= y+3; на экран будет выведено: 1) x = 10; y = 7; 2) x = 7; y = 7; 3) x = 10; y = 10; 4) x = 7; y = 10. Практическое занятие №2. Алгоритмы. Блок-схемы. Циклы Цель занятия Цель занятия – знать отличительные особенности представления циклических алгоритмов. Уметь записать алгоритм цикла графически, в виде блок-схемы. Теоретический материал для практического занятия №2 Словесные алгоритмы. Циклы Циклический алгоритм может быть задан в виде словесного описания. Пример 1. Найти сумму значений переменной Р, полагая, что начальное значение этой переменной равно нулю, т.е. Р=0. В каждом цикле переменная изменяется на 2, т.е. Р=Р+2. Количество циклов равно 5. В результате данного алгоритма значение переменной будет равна Р=10. В следующем примере алгоритм задачи приближен к блок-схеме. Вместо графических блоков даётся словесное описание каждого действия. Пример 2. Пусть заданы начальные значения переменных:
x:=1; y:=5. Начало цикла; пока y>x y: = y – x; конец цикла. Определить количество циклов и значения переменных x, y после выхода из цикла. Решение. Цикл выполняется до тех пор, пока выполняется условие y>x. Так как y:=5, x:=1, то условие выполняется, и значение y вычисляется по формуле y: = y – x. В результате выполнения первого цикла получим y:=4. Во втором цикле условие y>x выполняется, и после выполнения второго цикла получим значение y=3. В третьем цикле условие y>x выполняется, и после выполнения цикла получим значение y=2. В четвёртом цикле условие y>x выполняется, и после выполнения цикла получим значение y=1. При значениях y:=1, x:=1 условие y>x не выполняется, цикл не будет выполняться. Следовательно, в примере 2 цикл закончится, выполнится четыре цикла. На выходе из цикла значения переменных будут равны y:=1, x:=1. Блок-схемы. Циклы Пример 3. Составить в виде блок-схемы циклический алгоритм примера 2. Решение. Условие проверяется на входе в цикл. В теле цикла выполняется два блока: 1) у=у-х; 2) вывод значений переменных x, y. Рис. 2.1. Блок-схема циклического алгоритма с предусловием (пример 2) Цикл выполняется до тех пор, пока выполняется условие y>x. При условии равенства этих переменных у=х или y<x цикл заканчивается. 3. Примеры выполнения задания к практическому занятию №2
Пример 4. В цикле вычислить значение функции z=x*y при условии, что одна из переменных «x» меняется в каждом цикле на единицу, а другая переменная «у» не меняется и может быть любым целым числом. В результате выполнения цикла при начальном значении переменной х=1 можно получить таблицу умножения. Алгоритм этой задачи приводится на рис. 2.2. Во втором блоке вводятся количество циклов n и любые целые числа х, y. В третьем блоке указывается диапазон изменения счётчика цикла (от i =1 до i=n). В четвёртом блоке изменяются значения переменных: z, x. В пятом блоке выводится результат. Четвёртый и пятый блоки повторяются в каждом цикле. Циклические алгоритмы примеров 2 и 4 отличаются тем, что в блок-схеме примера 2 количество циклов не задано и определяется условием. Пока условие выполняется, цикл выполняется. В примере 4 дано количество циклов. Пока не выполнится заданное количество циклов, повторение тела цикла продолжается. Соответственно, из циклических алгоритмов выделяют два типа:
Алгоритм задачи в примере 4, представленный на рис. 2.2, относится к первому типу циклических алгоритмов, так как задано количество циклов переменной «n». Число циклов вводится с клавиатуры, что отображается во втором блоке на рис. 2.2. В третьем блоке переменная «i» считает количество циклов, после каждого цикла увеличиваясь на единицу, пока счётчик не будет равен i=n. При i=n будет выполнен последний цикл. Этот тип циклических алгоритмов предпочтителен, если дано количеством циклов. Если количество циклов неизвестно, то блок-схемы циклических алгоритмов может быть представленаы в виде рисунков 2.1 и 2.3.
Рис. 2.2. Блок-схема циклического алгоритма со счётчиком циклов (пример 4) Алгоритм, представленный на рис. 2.1, называется циклический алгоритм с предусловием, так как условие проверяется в начале цикла или на входе в цикл. При этом условии цикл выполняется.
Если условие в этой блок-схеме перенести в конец цикла, после вывода на печать, то условие изменится. В этом случае проверяется условие на выход из цикла: y<=x. При этом условии цикл не выполняется. Алгоритм примера 3, если условие перенести в конец цикла, называется алгоритмом цикла с постусловием, изображен на рис. 2.3.
Рис. 2.3. Алгоритм цикла с постусловием Задания к практическому занятию № 2
Задание ИДЗ №3 по теме «Алгоритмы. Блок-схемы. Циклы» в Приложении №1 (Задание 2). Вопросы для самоконтроля к практическому занятию № 2. Тема «Алгоритмы. Блок-схемы. Циклы» 1. Задан фрагмент алгоритма. x:=1; y:=5; Начало цикла пока y>x y: = y – x; конец цикла. Тело цикла выполнится: 1) 1 раз; 2) 4 раза; 3) 2 раза; 4) 3 раза. 2. Фрагмент блок-схемы цикла выполнит тело цикла: 1) 3 раза; 2) 2 раза; 3) 4 раза; 4) бесконечное число. 3. Значения целочисленных переменных x>0, y>0 после выполнения следующего фрагмента блок-схемы равны: 1) x=30; y=30; 2) x=30; y=5; 3) x=30; y=35; 4) x=5; y=5. 4. После выполнения фрагмента алгоритма: k:=0; Начало цикла для i от 1 до3 k:=k+2 конец цикла; Вывод k. Значение переменной k будет равно: 1) 0; 2) 2; 3) 4; 4) 6.
|
|||||||
Последнее изменение этой страницы: 2016-08-16; просмотров: 9008; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.110.58 (0.025 с.) |