Программирование алгоритмов циклической структуры.

Цель работы:изучить операторы цикла и приобрести практическиенавыки в программировании алгоритмов циклической структуры.

Задание

1. Изучить операторы цикла языка Бейсик и особенности их при-

менения.

2. Для заданного варианта составить схему алгоритма циклической структуры и реализующие его программы с использованием условного опе-ратора и операторов цикла.

3. Произвести на ЭВМ расчеты по разработанным программам для исходных данных, приведенных в табл. 4.1, и сравнить результаты расчетов.

4. Получить распечатки программ и результатов расчета.

5. Оформить отчет по лабораторной работе.

Указания по выполнению работы

Алгоритм циклической структуры включает в себя одну из основных структур - цикл, который бывает двух типов: цикл До и цикл Пока (рис.4.1). В цикле До тело цикла выполняется до проверки некоторого условия “да” - ус-ловие истинно, “нет ” - условие ложно. Телом цикла называется последова-тельность действий, выполняемых в цикле многократно. В цикле Пока про-верка условия производится до выполнения тела цикла.

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

Организация циклов в программах может осуществляться с помощью условного оператора (рис.4.1), рассмотренного в лабораторной работе № 3. или специальных операторов цикла.

Оператор цикла F0R-NEXT.

Оператор F0R-NEXT позволяет организовать выполнение блока опе-раторов определенное количество раз. Оператор F0R-NEXT имеет сле-дующую форму:

FOR счетчик = начало TO конец [STEP шаг] [операторы цикла]

[EXIT FOR] [операторы цикла] NEXT счетчик,



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

Программирование алгоритмов циклической структуры. - student2.ru

Тело цикла

Да Условие

Нет

а)

Программирование алгоритмов циклической структуры. - student2.ru

Да

Условие

Нет

Тело цикла

1. Операторы тела цикла

2. Если <Условие> выполняется перейти к п.1

3. ….

1. Если <Условие> выполняется перейти к п.4

2. Операторы тела цикла

3. Переход к п.1

4. …

б)

Рис.4.1. Виды циклов и их программирование с использованием ус-ловного оператора IF:

а - структура цикла До; б - структура цикла Пока.

Цикл F0R-NEXT выполняется до тех пор, пока текущее значение счет-чика не превышает его конечного его конечного значения. При завершении текущего цикла к значению счетчика прибавляется значение шага. Если конец



меньше начала, то шаг должен быть отрицательным. Если начало и конец имеют одно и тоже значение то цикл выполняется один раз вне зависимости от значения шага.

В качестве примера на рис.4.2 приведены алгоритм и программа вы-числения факториала Р = n! с оператором FOR-NEXT.

Программирование алгоритмов циклической структуры. - student2.ru

Начало

Ввод n

P=1

i=1

P=P*i

i=i+1

Да i<=n

Нет

Вывод

Y

Конец

а)

REM Программа вычисления n! REM с применением оператора цикла PRINT “Введите значение n=”; INPUT N

P=1

FOR I=1 TO N P=P*I

NEXT I

PRINT “Значение ”; N;”!=”;P END

б)

Рис.4.2. Пример программирования циклического алгоритма:

а - схема алгоритма; б - его программная реализация с

применением операторов цикла

F0R-NEXT.

Решение приведенной задачи сводится к организации цикла, при каж-дом прохождении которого значение произведения Р умножается на очеред-ной сомножитель i. До входа в цикл необходимо задать Р=1. Для организации цикла в программах используется переменная I. При превышении этой пере-менной значения N происходит выход из цикла и вывод результатов расчета на дисплей.



Таблица 4.1

Варианты заданий к лабораторной работе № 4

Составить программу табулирования функции y на Исходные данные
п.п.     отрезке [a,b] с шагом h     a b h
1. y = x /( x2+1)         4,0 6,0 0,2
2. y = x /( x3+1)         3,0 5,0 0,25
3. y = x / x3         1,0 10,0 1,0
4. y = x ln x2         2,5 3,5 0,1
5. y =ln( x +1) /( x2+1)         2,0 6,0 0,5
6. y = e x /( x2+2)         1,2 2,1 0,1
7. y =2sin2 x /(1+ x3)         3,14 0,31
8. y =cos x /(1+ x3)         1,57 3,14 0,16
9. y =5sin x /(1+ x2)         4,3 5,5 0,2
y =(1−cos2 x ) /(0,5 x +1)         1,5 2,5 0,1
  Составить программу вычисления k членов последовательности  
  Формула общего члена k Формула общего члена k
п.п         п.п          
11. ak = k 2 /( k 3 +2) 12. ak = ( k 2 +10) / 2k  
13. a k = k /( k +1) 14. a k = k /( k 2 +2)  
15. ak = (2 k +1) / k 2 16. ak = k k 1 /( k +5)  
  Составить программу вычисления суммы k членов последовательности
  Формула общего члена k Формула общего члена k
п.п         п.п          
17. a k = k /( k +3) 18. ak = ( k +1) / k 2  
19. ak = k 2 /( k 2 +5) 20. ak = k 2 /( k 3 +1)  
21. ak = k 2 / 2k 22. ak = (5k +3) / ek  

Программирование алгоритмов циклической структуры. - student2.ru Программирование алгоритмов циклической структуры. - student2.ru Программирование алгоритмов циклической структуры. - student2.ru Программирование алгоритмов циклической структуры. - student2.ru Составить программу вычисления произведения k членов последовательности

  Формула общего члена k Формула общего члена k
п.п       п.п      
23. ak = k 3 /( k +1) 24. ak =(2 k +1) / 5k 2
25. ak = (2 k +1) / k 3 26. ak =(2 k +1) / k 3
27. ak = k /(2 k +1) 28. ak =5k /( ek +1)
29. a k = k /( k 3 −1) 30. ak = e k /(3k 2+1)

Программирование алгоритмов циклической структуры. - student2.ru



Лабораторная работа №5

Наши рекомендации