Double line(double x1, double y1, double x2, double y2)

{

//функция возвращает длину отрезка, заданного координатами

// x1,y1 и x2,y2

return sqrt(pow(x1-x2,2)+pow(y1-y2,2));

}

Double square(double a, double b, double c)

{

//функция возвращает площадь треугольника,

//заданного длинами сторон а,b,c

double s, p=(a+b+c)/2;

return s=sqrt(p*(p-a)*(p-b)*(p-c));

}

Int triangle(double a, double b, double c)

{

//возвращает 1, если треугольник существует, иначе 0

return (a+b>c&&a+c>b&&c+b>a);

}

Void main()

{

double x1, y1, x2, y2, x3, y3;

double point1_2, point1_3, point2_3;

do

{

cout<<"\nEnter koordinats of triangle:";

cin>>x1>>y1>>x2>>y2>>x3>>y3;

point1_2=line(x1, y1, x2, y2);

point1_3=line(x1, y1, x3, y3);

point2_3=line(x2, y2, x3, y3);

If (triangle(point1_2, point1_3, point2_3))

cout<<"S="<<square(point1_2, point2_3, point1_3)<<"\n";

else cout<<"\nTriagle doesn’t exist";

}

while(!(x1==0&&y1==0&&x2==0&&y2==0&&x3==0&&y3==0)); }

Прототип функции

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

double line(double x1,double y1,double x2,double y2);

double square(double a, double b, double c);

bool triangle(double a, double b, double c);

double line(double,double,double,double);

double square(double, double, double);

bool triangle(double, double, double);

Это прототипы функций, описанных выше.

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

#include <имя файла>

Имя_файла определяет заголовочный файл, содержащий прототипы группы стандартных для данного компилятора функций. Например, почти во всех программах мы использовали команду #include <iostream.h> для описания объектов потокового ввода-вывода и соответствующие им операции.

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

#include ”имя_файла”


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: