Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Define _USE_MATH_DEFINES




Define _USE_MATH_DEFINES

Прототип (описание) функции. Понятие глобального объекта.

 

Локальные объекты определяются (создаются) в теле объекта-функции.

Локальный объект «живет» в этой функции, то есть может быть доступен и записанная в нем информация не будет разрушена, пока функция активна, то есть выполняются ее инструкции. Локальный объект, определенный в функции «жив», но может быть не виден в ней.

Локальный объект «виден» в блоке функции, то есть информация, записанная в нем, доступна для обработки, только в области памяти этой функции от точки определения объекта в инструкции его определения до конца блока, в котором он определен. Блок задается фигурными скобками { }.

 

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

Глобальный объект «жив» так долго, пока выполняется программа, в которой он определен. Область видимости глобального объекта определяется от точки его определения или описания до точки конца файла, в котором он определен или описан.

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

 

 

// В файле example1.cpp записаны функция countX, а затем main

#include <math.h>

#include <iostream>

#include <conio.h>

using namespace std;

float countX (float a, float b, float c)

{

float x;

x= (a * cos(b + c) - b * sin(a + c)) / (pow(a,3) + b * b);

return x;

}

// --

void main (void)

{

сout << endl << "vvedite a, x1, x2 ";

float x1, a, x2;

cin>>a>>x1>>x2;

float vir1;

vir1 = countX (x1*x1, x2, M_PI_2); //здесь функция countX видна

float vir2;

vir2 = countX (x2, x1 + 1.2, 0); // здесь функция countX видна

float x = 1./11 + a * vir1 + 1 / vir2;

cout << endl << "X = " << x;

getch();

}

// --

 

Определение функции countX состоит из заголовка функции и ее тела (показано желтым цветом).

Область видимости этой функции показана голубым цветом. В точке, где вызывается функция countX, она видна и может быть использована.

Изменим последовательность расположения текстов в программе, записаном в одном файле example2.cpp. Функция countX вызывается в точке, где она не видна.

 

// файл example2.cpp

// Изменили порядок записи функций в файле, функция main записана первой

#include <math.h>

#include <iostream>

#include <conio.h>

using namespace std;

void main (void)

{

сout << endl << "vvedite a, x1, x2 ";

float x1, a, x2;

cin>>a>>x1>>x2;

float vir1;

vir1 = countX (x1*x1, x2, M_PI_2); // здесь функция countX не видна!

float vir2;

vir2 = countX (x2, x1 + 1.2, 0); // здесь функция countX не видна!

float x = 1./11 + a * vir1 + 1 / vir2;

cout << endl << "X = " << x;

getch();

}

float countX (float a, float b, float c)

{

float x;

x= (a * cos(b + c) - b * sin(a + c)) / (pow(a,3) + b * b);

return x;

}




Поделиться с друзьями:


Дата добавления: 2015-06-29; Просмотров: 594; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.