Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Begin {начало основной программы} . . .

Читайте также:
  1. A B ­ С D E F I J L M ­N O P R S T U Back to the BEGINNING
  2. Back to the BEGINNING
  3. Back to the BEGINNING
  4. Back to the BEGINNING
  5. Back to the BEGINNING
  6. Back to the BEGINNING
  7. Back to the BEGINNING

 
 


Обращение к процедуре с фактическими параметрами a,b,c, получение

результатов х1,х2. root(a,b,c,x1,x2);

 
 


Обращение к процедуре с фактическими параметрами s,t,p, получение

результатов z1,z2. root(s,t,p,z1,z2);

 
 


Обращение к процедуре с фактическими параметрами k,n,m, получение

результатов y1,y2. root(k,n,m,y1,y2);

 

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

Функции применяют тогда, когда результат работы подпрограммы один. Обращение к функции может записываться в выражениях. Например: (a+b)/cos(x)

Здесь cos(x) есть обращение к подпрограмме типа функция, правда стандартной, а не написанной пользователем. Встретив имя cos машина с входной величиной (аргументом) х обращается к подпрограмме, вычисляет с помощью ряда функцию cos(x) и результат работы этой подпрограммы в виде значения функции возвращается в арифметическое выражение.

Функция может иметь несколько входных параметров, но всегда один результат.

Обращение к функции помещается в выражение путём указания имени функции с фактическими (теми, которые нужны в данном обращении) параметрами.

Процедура может иметь несколько входных параметров, и несколько результатов.

Несколько — это 0, или 1, или 2, или 3 и т.д. результатов. Обращение к процедуре состоит из отдельного оператора, следовательно оно не может помещаться в выражение.

Подпрограммы как функции, так и процедуры могут быть стандартными, например sin(x), cos(x), sqrt(x), succ(y), ord(y) и т.п., библиотечными, которые становятся доступными при подключении модулей и библиотек, например Math, и определенные пользователем, т.е. написанные программистом для решения сво­ей задачи.

 

Лабораторная работа 6.

Подпрограммы-функции, определенные пользователем.

Функции пользователя описываются в разделе описания функций и процедур основной программы. Описание функции строится как законченная программа, т.е. может состоять из заголовка и шести разделов: описания, меток, констант, типов, переменных, функций и процедур и раздела операторов. Заканчивается описание функции символом точка с запятой.

 

Написать программу, вычисляющую с помощью подпрограммы-функции, выражения:

fl(x)=x+256.4; f2(y)=y+256.4; f3(z)=z+256.4;

 

program project_6_1; {$APPTYPE CONSOLE}

uses Math, SysUtils;

var

x,y,z, f1 f2, f3:real;

function f(x:real):real; {заголовок функции;}

{f - имя функции, это же и имя результата, х формальный параметр}

begin f:=x+256.4; end; {тело функции}
BEGIN {начало основной программы}

writeln('input x,y,z’); readln(x,y,z);

f1:=f(х); {обращение к подпрограмме f с фактическим параметром х}

f2:=f(y); {обращение к подпрограмме f с фактическим параметром у}

f3:= f(z); {обращение к подпрограмме f с фактическим параметром z}

writeln(‘f1= ‘,fl:5:3,’f2= ‘, f2:5:3,’f3= ‘f3:5:3); {вывод результатов f1,f2,f3}

readln; END.

 

Как видно из программы, описание подпрограммы-функции начинается зарезервированным словом function, за которым следует имя функции f, после чего в скобках указываются формальные параметры, необходимые для вычисления результата, с указанием типа параметров. (в нашем случае это x типа real), затем указывается тип результата - real. Имя результата будет f.

При описании дан­ной функции нам не понадобились разделы описаний.

 

 

Написать программу, вычисляющую

 
 


если 1<=x<3

G= если 3<=x<5

если 5<=x<=9

0 в остальных случаях

 

Оформим вычисление (ln(a)+sin(b))2/(cos(a)*eb) в виде подпрограммы-фун­кции.

 

program project_6_2; {$APPTYPE CONSOLE}

uses Math, SysUtils;

var h,x,y,z:real; function f(a,b:real):real; {входные формальные параметры a,b}

begin

f=sqr(ln(a) +sin(b))/(cos(a) *exp(b)); end; {тело функции }

BEGIN writeln('введите положительные h,x,y,z readln(h,x,y,z););

tf(x>=1) and (x<3) then witeln('G=’,h+f(x,y)) else

if (x>=3) and (x<5) then writeln('G=',sqrt(h)+f(z,y)) else

if (x>=5) and (x<=9) then writeln('G=',sqr(h)+f(y,z)) else writeln('G=0'); readln; END.

 

В этой программе описание функции начинается словом function имя функ­ции f, результат вычисления функции типа real. Тело функции заключено в опе­раторные скобки begin, end; a, b называются формальными параметрами. При описании дан­ной функции нам не понадобились разделы описаний которые могут присутствовать, при необходимости, в виде описания меток, типов данных, констант, переменных, а также описания функций и процедур, используемых в описываемой подпрограмме.

При выполнении основной программы, которая начинается BEGIN, встре­чается выражение f(x, у). Встретив такое выражение, машина по имени f(согласно описания имени f) опреде­ляет, что это обращение к функции. Затем машина проверяет совпадение коли­чества и типа фактических параметров (х, у) с формальными (а, b). При совпаде­нии, в тело функции вместо формальных параметров подставляются фактические и тело выполняется, полученный результат используется при вычислении выра­жения, стоящего в операторе writeln.

 

 

ВАРИАНТЫ ЗАДАНИЙ

Вариант 1.

 

1. Вычислить D = 2f{a,b,k) + 6f(k,a,b) - f2{a,b,k2)

 

При а=0.6, b=3.2, k=1.8, если f{x,y,z) = z2 - 2xy /z.

 

Вариант 2.

Вычислить О = tg(f(xt k,b)) + -f2(b + 0.1, к -1, хг)

Прих=6.5, b=8.9, к=4.5, если f(x,y,z) = z + х22.

 

Вариант 3.

Вычислить В = f(m,x,y) + 0.6 f2(y,m,x)+f(x,y+m,y-m)

 

При m=0.5, x=3.3, y=0.45 если f(x,y,z) = x + 2y + 3z2

Вариант 4.

Вычислить B = Ln(f(b,a,k) + f2{a, 0,8 + b,k)

При а=5,5, b=-2,5, к=1,9, если f(x,y,z) = х + y2z - ху2'

Вариант 5.

Вычислить С = 2f(b,a,I) + 2f(I,a,b + 0,3)

При a=0,8, b=240, l=-1,5,

Если f(x,y,z) = x/y + zx -1.

 

Вариант 6

Вычислить В = -F2(D,A,I)+Ln(F(D,A,2*I))

При a=3,5, 0,61, i=5,3, Если F(x,y,z) =| x2 - y2 - z |

Вариант 7.

Вычислить A= tg{f{x,k,y) + cos(f(2k,x3,y))

При x=-3,5, y=50, k=2,8,

Если f (x, y, z) = x + 8y + 3,1z

Вариант 8.

Вычислить С = ef(a,b,i) +

При а=4,5, b=3,9, d=10, i=0,51, Если f(x,y, z)=х2-у+z

Вариант 9.

Вычислить P=f(b,j,a)+f2(a,d,j)+(a*b+j)/f(a*b,b*j,J*a)

При a=0.73, b=2.4, j=3.17 Если f(x,y,z)=sin(x)+sin(x2)+z

Вариант 10.

Вычислить А = f(m,x,y) + 0,5f2(m,y,x) + f(x,y + m*х,у – m*х)

При т=0,5, х=3,1, у=0,45, Если f(x,y,z)=х+2у+3z2.Вариант 11.

Вычислить В = 0,5f(х, к, b) + bf(b, х, 1,2) –sin(f(ax, кх,5,5))

При а=0,8, Ь=-1,3, х=130, к=1,7, Если f((х,у,г) = х2 + у - 0,5z

Вариант 12.

Вычислить С = 3f{a,x,b,) + f2(b, a + 0.3, j) -

при а=0,8, b=1,55, x=130,j-15,1, если f(x,y,z) = xy2 + yz

 

Вариант 13.

Вычислить у = tg(f(x, bt m)) + cos(f2(m, m, x)) - 0,5f(2b, 2b, m)

при b=-5,1, x=4,3, m=0,52, если f{x,y,z) = X2 + у + z

Вариант 14.

Вычислить P = 1/ f{a,x,k) + sin(n(f{x,a,4k2)) + f2{k,xta)

при а=-0,9, x=150, k=3,14,


если f(x,y,z) = x + у4 - z

Вариант 15.

Вычислить H = Lg(f(a,b,c)) + tg(f{b,C,j)) - f2(0,5j, b, а)

при а=2,5, b=1,8, с=3,14, j=30, если f(x,y,z) = х2 - е(1 - z).

Вариант 16.

Вычислить В = f(a,x,i) + sin(f(x, i, 0,8)) - f2(i,x2,a)

при а=8,1, х=1,з, i=650,

если f (x, y, z) = 0,8x + 3,5y + z.

 

Вариант 17.

Вычислить B =f((х,k,у) + 0,8f:2(у,k,х)+ f(х,у,у-к)

при к=0,6, х=3,8, у=0,042,

если f(x,y,z) = 2у + х + 4z2

Вариант 18.

Вычислить В = 2f2(b,a,m) + 2f(m, а + b, b + 0,2) - 0,7f(m,a,b)

при а=0,б, b=21, т=-3,8, если f{x, y,z) = у /1,8 + 6х - у2.

Вариант 19.

Вычислить D = - f2(d,a,i)

при а=3,5, d=0,64, 1=5,3,

если f(х, у, z) =| х — у — z |

 

Вариант 20.

Вычислить Р = tg(f{x,b,k)) + -f2(b + 0,1,k, х2)

при х=6,5, Ь=8,9, к=4,5, если f(x,y,z) = х2 - у2 + z

Вариант 21.

Вычислить B = f(a,X,i) + COS(f(x, i, 0,8)) – f2(i, X2, а)

при а=3,2, x=2,5, i=15, если

f(x, y, z) = x2 - 3,5y + 0,8z

В ариант 22.

Вычислить С = 3f(a,b,к) + 5f(k,a,b) - f2(2a,b,k2)

при a=0,5, b=1,8, k=4,6,

если f(x,y,z) = z2 + у2 - 2xy I z

Вариант 23.

Вычислить A = f(d,n,b) + f(d, n3, b3) + 0,5Ln(f(bd, d, n))

при b=4,12, d=1,6, n=0,08, если f(x,y,z) = x(y + z- )

Вариант 24.

Вычислить S = ln(f(a,1,i)) + sin(f(i,b,a) - f 2 (2b,i,c)

при a=1,8, b=2,5, c=90,1=4,5,

если f(x,y,z) = x3 + 3,14y2 - 0,1z

Вариант 25.

Вычислить С = f(a,b,l) + f2(b, l, a + 0,5) – f(l - 1,7, а, Ь)

при a=0,5, b=4,1, l=5,4, если f(x,ytz) = x - (у + (x2 - y)z)

Вариант 26.

Вычислить О = f(x,y) + 3(f(a,b) + f(0.1, x) +

при x=100, y=-0,021, a=0,357, b=-0,12 если f(x,y) = X2 + 2 I xy I

Вариант 27.

Вычислить Е = f(j,a,b) + f2(atb,j) +(aj+b)/f(ab,ia,bi)

при а=0,71, Ь=2,1, j=2,51, если
f(x,y,z) = sin х + sin2 у + z

Вариант 28.

Вычислить С +sin(f(x,b,0.5)-f(n,b,x)/3.37

при х=126, Ь=0,37, п=360, если f(x, у, z) = х + 0,5у - z2

Вариант 29.

Вычислить С = 3f(a,b,k) + 5f(k,a,b) - f2(2a, k, b2)

При а=1,8, b=4,6, k=1,33,

Если f(x,y,z) = 2z-x2 + y2

Вариант 30.

Вычислить р = Ln(f{а,к,Ь)) + f 3(k + 1.2, b, к2)

при а=0,3, Ь=1,33, к=6,8, если f(х,у,z) = ху3 -хz


Дата добавления: 2015-07-26; просмотров: 259 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
КЛАССИФИКАЦИЯ ХОЛОДИЛЬНИКОВ| КЛАСИФІКАЦІЯ

mybiblioteka.su - 2015-2024 год. (0.019 сек.)