Лабораторный практикум по программированию на языке Паскаль. Найханова Л.В - 46 стр.

UptoLike

46
начало
ввод a,b,c,h
K=(a-b)/h+1
N=1, x=a
конец
y= c
2
/(c+x)
вывод
результата
I = N, K
Примечание. Oператор цикла FOR задает закон изменения только одного целочисленного
параметра. Для задания закона изменения других параметров нужно использовать операторы
присваивания, одни из которых перед циклом задают их значения, а другие внутри цикла
вычисляют их текущие значения. Если в цикле изменяется один параметр, который не
является целочисленным, то он не может быть параметром цикла. В этом случае необходимо
вводить целочисленный параметр, который будет счетчиком количества повторений.
Рассмотрим
пример.
Словесная постановка задачи.
Вычислить значения функции Y = с
2
/(с + X) при X, изменяющемся от a до b с шагом h.
Исходные данные: a, b, h, c.
Результат: последовательность значений Y, вычисленных на каждом шаге.
Промежуточные данные: Х.
Математическая постановка задачи. Количество повторений цикла будет равно
K
ba
h
i=
+
(1)
Таким образом, параметр цикла i изменяется от N до K, причем N = 1, а K вычисляется по
формуле (1).
Значение переменной X внутри тела цикла можно вычислять по формуле:
X = X + h.
Графическая схема алгоритма.
Она представлена на рисунке 5.
Рис. 5. Принципиальная схема циклического алгоритма с фиксированным числом повторений.
Запись алгоритма на языке Паскаль (операторная запись алгоритма).
Program ExampCircle3(Input, Output);
Var
a, b, c, h, X, Y : real;
i, N, K : integer;
Begin
{ Ввод данных }
WriteLn('Введите значения переменных a, b, c, h:');
ReadLn(a, b, c, h);
{ инициализация переменных }
K := trunc((a - b)/h + 1);
Примечание. Oператор цикла FOR задает закон изменения только одного целочисленного
параметра. Для задания закона изменения других параметров нужно использовать операторы
присваивания, одни из которых перед циклом задают их значения, а другие внутри цикла
вычисляют их текущие значения. Если в цикле изменяется один параметр, который не
является целочисленным, то он не может быть параметром цикла. В этом случае необходимо
вводить целочисленный параметр, который будет счетчиком количества повторений.
Рассмотрим пример.
Словесная постановка задачи.
Вычислить значения функции Y = с2/(с + X) при X, изменяющемся от a до b с шагом h.
Исходные данные: a, b, h, c.
Результат: последовательность значений Y, вычисленных на каждом шаге.
Промежуточные данные: Х.
Математическая постановка задачи. Количество повторений цикла будет равно
                        b − a
                   K=        +i   (1)
                         h 
Таким образом, параметр цикла i изменяется от N до K, причем N = 1, а K вычисляется по
формуле (1).
Значение переменной X внутри тела цикла можно вычислять по формуле:
                   X = X + h.
Графическая схема алгоритма.                   начало
Она представлена на рисунке 5.
                                              ввод a,b,c,h


                                                 K=(a-b)/h+1


                                                  N=1, x=a


                                                    I = N, K


                                                 y= c2/(c+x)                       конец

                                                    вывод
                                                 результата


      Рис. 5. Принципиальная схема циклического алгоритма с фиксированным числом повторений.

Запись алгоритма на языке Паскаль (операторная запись алгоритма).
Program ExampCircle3(Input, Output);
Var
  a, b, c, h, X, Y : real;
  i, N, K        : integer;
Begin
  { Ввод данных }
  WriteLn('Введите значения переменных a, b, c, h:');
  ReadLn(a, b, c, h);
  { инициализация переменных }
  K := trunc((a - b)/h + 1);
                                                                                               46