- •Система качества Методические указания и задания на выполнение типового расчета «Алгоритмы и блок-схемы» «1 семестр
- •1. Понятие алгоритма
- •1.1.Свойства алгоритма
- •1.2.Способы описания алгоритма
- •1.2.1Словесный способ записи алгоритмов
- •Алгоритм:
- •1.2.2Графический способ записи алгоритмов
- •1.2.3Псевдокоды
- •1.2.4Программный способ записи
- •1.3.Виды алгоритма
- •1.3.1 Линейный алгоритм
- •1.3.2Разветвляющийся алгоритм
- •1.3.2.1 Неполная форма записи условного разветвляющегося алгоритма
- •1.3.2.2 Полная форма записи условного разветвляющегося алгоритма
- •1.3.2.3 Вложенная форма записи условного разветвляющегося алгоритма
- •1.3.3 Циклический алгоритм
- •1.3.3.1 Циклический алгоритм типа "Для"
- •1.3.3.2 Циклические алгоритмы типа "Пока"
- •1.4.Контрольные вопросы
- •2. Задания
- •3. Вариант
- •3. Дано: а, b, х, у.
- •4. Дано: c, p, y.
- •4. Вариант
- •3. Дано:X, y, c
- •5. Вариант
- •3. Дано a, b, c.
- •4. Дано: b, a, m.
- •6. Вариант
- •3. Дано: а, b с.
- •4. Дано : a , b .
- •7. Вариант
- •3. Дано: y, X, a, b.
- •4. Дано: a, b.
- •8. Вариант
- •3. Дано: a, b,y
- •9. Вариант
- •3. Вычислить значение функции.
- •2. Дано: b, c.
- •10. Вариант
- •3. Дано: a, b, X
- •4. Дано: y, c, a.
- •11. Вариант
- •3. Дано: z, X
- •4. Дано: а, b.
- •12. Вариант
- •3. Дано:a, b.
- •4. Дано:b,а
- •13. Вариант
- •3. Дано: X ,y.
- •4. Дано: а, b.
- •14. Вариант
- •3. Дано:a,b,c
- •4. Дано: a, b.
- •15. Вариант
- •4. Дано: X, b, c.
- •16. Вариант
- •3. Дано: X , y , c .
- •4. Дано: a, p
- •17. Вариант
- •3. Дано:a,b,X
- •4. Дано: b,а
- •18. Вариант
- •3. Дано:y,c
- •4. Дано: с
- •19. Вариант
- •3. Вычислить значение функции.
- •4. Дано: а,b.
- •20. Вариант
- •3. Дано: X, y
- •4. Дано: a, b, c
- •21. Вариант
- •3.Дано: a, b,y
- •4. Дано: y, c, a.
- •22. Вариант
- •3.Дано:X,y.
- •4. Дано: b,c.
- •23. Вариант
- •3. Дано: y, X, a, b.
- •4. Дано: b, c.
- •24. Вариант
- •3. Дано: X, b.
- •25. Вариант
- •3.Дано: а, в, с.
- •4. Дано:a,b.
- •26. Вариант
- •3. Дано: f, X, y, a.
- •27. Вариант
- •3. Дано a,b,c.
- •4. Дано: p, a, q, c.
- •27.1.Пример выполнения типового расчета
- •28. Литература
1.3.3 Циклический алгоритм
Циклический алгоритм - это такой алгоритм, действия которого повторяются. Существуют следующие типы циклических алгоритмов:
Цикл типа "Пока" |
||
С предусловием |
С постусловием |
|
|
|
|
Рис.1 Алгоритм работы продавца при обслуживании покупателей |
Рис.2 Алгоритм игры «угадай число» |
|
Цикл типа "Для" |
|
Рис. 3 Алгоритм учителя при проверке тетрадей учеников |
Цикл организуют по определенным правилам. Циклический алгоритм состоит из:
подготовки цикла – действия, задающие начальные и конечные значения параметра цикла, шаг цикла;
тело цикла – многократно повторяющиеся действия;
условие продолжения цикла – определяется необходимость дальнейшего выполнения тела цикла. Если условие продолжения цикла перестало быть истинным, то выполнение цикла должно быть прекращено.
1.3.3.1 Циклический алгоритм типа "Для"
Циклический алгоритм типа "Для" - это такой циклический алгоритм, в котором число повторений известно.
Для организации циклов с известным числом повторений в языках Бейсик и Си используют оператор for .
ПРИМЕР 6:
Задание
Рассмотрим применение оператора цикла for на следующем примере, где начальное значение счетчика цикла = 1, конечное значение параметра цикла = 10, шаг равен 1:
Решение
Псевдокод K=6 нц от А=1 до 10 шаг 1 К=К+1 печать К кц |
Блок-схема
|
1.3.3.2 Циклические алгоритмы типа "Пока"
Циклический алгоритм типа "Пока" - это такой циклический алгоритм, действия которого будут выполнятся до тех пор пока выполняется заданное условие. В таких алгоримах, как правило, количество повторений тела цикла неизвестно.
Для организации циклов с неизвестным числом повторений в языке Си используют операторы while и do-while.
ПРИМЕР 7:
Задание
Начав тренировки, спортсмен в первый день пробежал 10 км. Каждый следующий день он увеличивал дневную норму на 50% от нормы предыдущего дня. Через сколько дней спортсмен пробежит суммарный путь не менее 60 км?
Решение
а)ИСПОЛЬЗУЯ ЦИКЛ С ПОСТУСЛОВИЕМ: |
|
Псевдокод S=10 N=1 нц с постусловием S = S + 0.5*S N = N +1 кц с постусловием если S<60 печать N |
|
б)ИСПОЛЬЗУЯ ЦИКЛ С ПРЕДУСЛОВИЕМ:
|
|
Псевдокод S=10 N=1 нц с предусловием если S<60 S = S + 0.5*S N = N +1 кц печать N |
ПРИМЕР 8:
Задание
Дано: a,b.
Если
вычисления закончить. Если
напечатать «
»
Если
вычислить
.
где
изменяется от –1 до 3 с шагом 0,3.
Вывести на печать только отрицательные значения функции и подсчитать количество положительных значений функции.
Решение
Блок-схема |
Псевдокод |
|
Ввод а Ввод b Если вычисления закончить Если печать « » Если k=0 Нц от x=-1 до 3 шаг 0.3 Если a=2 y=pow(tan(x+5),2) Если a<2 y=pow(x,2)-8*x Если a>2 y=1/sin(2*x)
Если y<0 печать y Если y>0 k=k+1 кц печать k
|
