Конспект лекций по программированию для начинающих. Гладков В.П. - 203 стр.

UptoLike

Составители: 

205
также те, вложенные процедуры и/или функции, в которых переменные с такими
же именами не объявлены заново.
Вызов процедуры осуществляется оператором:
имя[(список аргументов)]. В
момент вызова между списком параметров и списком аргументов устанавливается
соответствие по количеству, типу и порядку следования.
Описание функции:
function имяф(список_параметров) : тип_возвращаемого_значения;
Описание данных;
begin
Операторы функции;
имяф := выражение; {обязательный оператор, формирующий
возвращаемое функцией значение}
end;
Вызов функции осуществляется с помощью указателя функции, который
записывается в
каком-либо выражении: имяф(список_аргументов).
Пример 13.1. Вычислить s = 1 + x/1! + x
2
/2! + x
3
/3! + ... + x
n
/n! .
Решение. Вычисление степени, факториала и суммы оформим в виде функций:
program task1;
var x : real; {аргумент}
n : integer; {количество слагаемых в сумме}
y : real; {сумма}
{функция вычисления числителя}
function a(x : real; i : integer) :real;
var j : integer; {счетчик умножений}
begin a := 1;
for j := 1 to i do a := a * x
end;
{функция вычисления знаменателя}
function b(i : integer) :real;
var j : integer; {счетчик умножений}
begin b := 1;
for j := 1 to i do b := b * j
end;
{функция вычисления суммы}
function y(x : real; n : integer) : real;
var i : integer; {номер очередного слагаемого}
begin y := 0;
for i := 1 to n do y := y + a(x,i)/b(i)
end;
{основная программа}
begin
write('введите аргумент - x, и количество слагаемых - n ');
                                               205

также те, вложенные процедуры и/или функции, в которых переменные с такими
же именами не объявлены заново.
   Вызов процедуры осуществляется оператором: имя[(список аргументов)]. В
момент вызова между списком параметров и списком аргументов устанавливается
соответствие по количеству, типу и порядку следования.
   Описание функции:
      function имяф(список_параметров) : тип_возвращаемого_значения;
      Описание данных;
      begin
             Операторы функции;
             имяф := выражение; {обязательный оператор, формирующий
                            возвращаемое функцией значение}
      end;
   Вызов функции осуществляется с помощью указателя функции, который
записывается в каком-либо выражении: имяф(список_аргументов).
   Пример 13.1. Вычислить s = 1 + x/1! + x2/2! + x3/3! + ... + xn/n! .
   Решение. Вычисление степени, факториала и суммы оформим в виде функций:
   program task1;
   var       x : real; {аргумент}
             n : integer; {количество слагаемых в сумме}
             y : real; {сумма}

   {функция вычисления числителя}
   function a(x : real; i : integer) :real;
   var j : integer; {счетчик умножений}
   begin       a := 1;
               for j := 1 to i do a := a * x
   end;

   {функция вычисления знаменателя}
   function b(i : integer) :real;
   var j : integer; {счетчик умножений}
   begin       b := 1;
               for j := 1 to i do b := b * j
   end;

   {функция вычисления суммы}
   function y(x : real; n : integer) : real;
   var i : integer; {номер очередного слагаемого}
   begin       y := 0;
               for i := 1 to n do y := y + a(x,i)/b(i)
   end;

   {основная программа}
   begin
      write('введите аргумент - x, и количество слагаемых - n ');