Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


Inmatr ( matr, rows, cols);




// ќбчисленн€ середнього значенн€ стовпц≥в матриц≥

Srcols (matr, rows, cols);

Return 0;

}

5.2.3 ¬икористанн€ функц≥њ €к параметра значень

≤нод≥ приходитьс€ €к формальн≥ аргументи (параметр≥в) функц≥њ використовувати ≥нш≥ функц≥њ. “ака ситуац≥€ виникаЇ, €кщо в де€к≥й функц≥њ при звертанн≥ до нењ, треба викликати ≥ншу функц≥ю.

ѕараметр - функц≥€ записуЇтьс€ у вигл€д≥ прототипу, тобто вказуЇтьс€ тип функц≥њ, њњ ≥м'€ й у дужках перел≥к тип≥в формальних аргумент≥в, або тип≥в ≥ ≥мен формальних аргумент≥в.

 

ѕриклад 5.4 —класти програму c використанн€м функц≥њобчисленн€ ≥нтеграл≥в методом трапец≥й (точн≥сть обчисленн€ е =10-3 ).

 

// P5_4.CPP Ц обчисленн€ ≥нтеграла методом трапец≥њ

// використанн€ функц≥њ €к параметра значенн€

#include <math.h>

#include < iostream >

Using namespace std;

const float e =1 e-3;

float fn1 (float x) // п≥д≥нтегральна функц≥€ 1-го ≥нтеграла

{

return sgrt (1 +log (x));

}

float fn2 (float x) // п≥д≥нтегральна функц≥€ 2-го ≥нтеграла

{

return log (1 +pow (x,2)) / (1+pow (x,2));

}

float ft (int n, float a,float b, float fun(float)) // функц≥€ методу трапец≥й

{

Int i;

float s1,h, s=0;

Do

{ s1 =s;

h = (b -a) /n;

s = (fun (a) +fun (b)) / 2;

for (i = 1; i <= n-1; i++)

s += fun (a + i *h);

s *= h; n *= 2;

} while (fabs (s-s1) > e);

return s; }

Int main ()

{

Float y;

y = ft (20, 2, 2, 3.0, fn1) +ft (20, 0, 1.0, fn2);

cout << "y=" << y << endl;

Return 0;

}

–езультат виконанн€ програми:

y = 1.29012

5.2.4 «вертанн€ до функц≥њ ≥ передача результату

ƒл€ звертанн€ до функц≥њ досить написати њњ ≥м'€ й у дужках записати значенн€ або перел≥к фактичних аргумент≥в. ‘актичн≥ аргументи повинн≥ бути записан≥ в т≥й же посл≥довност≥, що ≥ формальн≥ ≥ мати в≥дпов≥дний тип (кр≥м аргумент≥в за замовчуванн€м ≥ перевантаженими функц≥€ми). якщо формальними аргументами функц≥њ Ї параметри значенн€ й у н≥й не використовуютьс€ глобальн≥ зм≥нн≥, то функц≥€ може передати в програмуб €ка ≤њ викликаЇ, лише одне значенн€, що записуЇтьс€ в оператор≥ return. ÷е значенн€ передаЇтьс€ в м≥сце виклику функц≥њ. ‘рагмент програми, що п≥дтверджуЇ вищевикладене може мати вигл€д:

Double sgr (double);

Main()

{

cout << " вадрат числа=" << sgr (10) << endl;

}

Double sqr (double p)

// ѕоверненн€ за значенн€м

{

return p*p;

}

” результат≥ буде виведено:

 вадрат числа = 100.

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

≤м'€ функц≥њ ¾ це константа - покажчик на функц≥ю, що вказуЇ на адресу м≥сц€ входу (адреса першоњ машинноњ команди) функц≥њ. —л≥д зазначити, що можливо також опис ≥ покажчик≥в перем≥нних на функц≥њ. ƒл€ цього використовуЇтьс€ операц≥€ раз≥менувани€ "*", функц≥њ описан≥ в такий спос≥б повинн≥ повертати покажчик на тип, тобто його адреса.

ѕриклад 5.5 ќбчислити функц≥ю загального вигл€ду дл€ заданого значенн€ аргументу x з використанн€м функц≥њ, у €ку коеф≥ц≥Їнти a, bc можуть бути введен≥ за замовчуванн€м.

// P5_5.CPP ¾ обчисленн€ квадратноњ функц≥њ

// коеф≥ц≥Їнти квадратноњ залежност≥ можуть

// вводитис€ у функц≥ю"за замовчуванн€м"

#include < iostream >

Using namespace std;

float ur (float x, float а=0., floatb b =0.,float c=0.);

Int main ()

{

float а =1., b = 2., c = 3., x = 0.5, y;

cout << " ”веден≥ вс≥ аргументи " << endl;

y = ur (x, a, b, c);

cout << " y = "<< y << endl;

cout << " ¬веден≥ аргументи x, a, b " << endl;

y =ur (x, a, b);

cout << " y = "<< y << endl;

cout << " ¬ведений аргумент x " << endl;

y =ur (x);

cout << " y = "<< y << endl;

}

// ‘ункц≥€ обчисленн€ квадратноњ функц≥њ





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2015-11-05; ћы поможем в написании ваших работ!; просмотров: 321 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

≈сли президенты не могут делать этого со своими женами, они делают это со своими странами © »осиф Ѕродский
==> читать все изречени€...

2263 - | 2165 -


© 2015-2024 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 0.013 с.