Дефиниране на функции
Дефиницията на една функция има следния синтаксис:
В следния фрагмент е дефинирана функция, която изчислява площта на окръжност, ако е даден радиусът на окръжността.
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
const double PI=3.141592653589793;
double area(double r) {
return PI*r*r;
}
int main(int argc,char* argv[]) {
cout << setprecision(128) << M_PI << endl;
}
Радиусът на окръжността се предава като параметър на функцията. В тялото на функцията се извършват изчисленията и площта на окръжността се връща като резултат от функцията.
Да разгледаме още един пример. Нека са дадени две точки в равнината – [latex]p_1[/latex] и [latex]p_2[/latex].
Нека в дадена декартова координатна система координатите на точката [latex]p_1[/latex] са [latex](x_1,y_1)[/latex], а координатите на точката [latex]p_2[/latex] са [latex](x_2,y_2)[/latex]. Тогава, разстоянието между двете точки може да се изчисли като се използва теоремата на Питагор (вж. фигурата):
[latex]d=\sqrt{(x_2-x_1)^2+(y_2-y_1)^2}.[/latex]
В следващия фрагмент е дефинирана функция, която изчислява разстоянието между две точки в равнината.
#include <cmath>
using namespace std;
double distance(double x1, double y1,
double x2, double y2) {
double dx=x2-x1;
double dy=y2-y1;
return sqrt(dx*dx+dy*dy);
}
Като параметри на функцията се предават координатите на точките в равнината. Като резултат от функцията се връща разстоянието между точките. За намиране на разстоянието в ред 8 се използва функцията sqrt, която изчислява корен квадратен. Тази функция е декларирана в заглавния файл <cmath>, който е част от стандартната библиотека
[note]Всички типове и функции, дефинирани в стандартната библиотека се намират в пространството от имена std. За да се включи това пространство от имена се използва конструкцията using namespace std; (вж. ред 2). Повече за пространството от имена виж в раздел \ref{section-namespace}}.
[/note]



Pingback: CPP-101: Кратък обзор на езика за програмиране C++ | Записки по програмиране