Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
VВладимир
1 / 1 / 0
Регистрация: 08.10.2012
Сообщений: 50
#1

Применение переменных одной функции в другой функции - C++

08.12.2013, 17:13. Просмотров 274. Ответов 0
Метки нет (Все метки)

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

float functionWeight( float x111, float x112,
{//Начало 1 функции
//Формулы и вычисления
//Вычисление параметров, передаваемых в другую функцию
S31=x311*w311+x321*w321+x331*w331+x341*w341;
S32=x312*w312+x322*w322+x332*w332+x342*w342;
S33=x313*w313+x323*w323+x333*w333+x343*w343;
S34=x314*w314+x324*w324+x334*w334+x344*w344;

float mas1 [4];//Объединение переменных в массив
{mas1 [0]=S31;
mas1 [1]=S32;
mas1 [2]=S33;
mas1 [3]=S34;
}

return (mas1 [0], mas1 [1], mas1 [2], mas1 [3]);//Попытка возврата массива
}//Конец 1 функции


float functionPrognoz(float y31, float y32,.....)

{//Начало 2 функции
S31 = mas1 [0];
S32 = mas1 [1];
S33 = mas1 [2];
S34 = mas1 [3];

y31=6388*(-0.5+1 / (1 + exp(-1 *alpha *S31)));
y32=300*(-0.5+1 / (1 + exp(-1 *alpha *S32)));
y33=1387*(-0.5+1 / (1 + exp(-1 *alpha *S33)));
y34=800*(-0.5+1 / (1 + exp(-1 *alpha *S34)));


Y2 = y31+ y32+ y33 + y34;

return Y2;
}//Конец 2 функции


int main()
{float Y2;
float mas1;

float valueY2 = functionPrognoz(y31, y32, y33, y34, alpha, Y2);//Вызов функции в теле главной функции

cout <<valueY2<< endl;

system("pause");
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2013, 17:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Применение переменных одной функции в другой функции (C++):

Применение переменных одной функции в другой функции - C++
Здравствуйте. Помогите, пожалуйста, решить такую проблему. Мне необходимо, чтобы 4 переменных, которые рассчитываются в одной функции, были...

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

можно ли в с++ вызвать переменную из одной функции в другую т.е. мы переменну задали в одной функции а использовали в другой... и как это реализовать? - C++
можно ли в с++ вызвать переменную из одной функции в другую т.е. мы переменну задали в одной функции а использовали в другой... и как это...

Функции. Как после одного возвратного значения функции отталкиваться от возврата другой функции - C++
Написал код, в котором 2 функции одна возвращает стринговое значение, вторая должна бы вернуть значение, отталкиваясь от первой. Возможно...

Как создать вызов одной функции из другой? - C++
Задание. Создать произвольный класс, объявить несколько функций с применением оператора разрешения области видимости &quot;::&quot;....

Вызов функции внутри другой функции с передачей локальной переменной по ссылке - C++
Столкнулся с очень с интересной проблемой. Можно ли так делать? #include &lt;iostream&gt; using std::cout; void f(const int &amp;ref){...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2013, 17:13
Привет! Вот еще темы с ответами:

Вычислить значение функции аргумент которой вычисляется из другой кусочно заданной функции - C++
Решите программу то я не знаю как:hysteric: Вычислить значение y в зависимости от выбранной функции \varphi (x), аргумент которой...

Получить указатель из функции и использовать его в другой функции - C++
Подскажите пожалуйста как из функции использовать в функции main указатель? пример void foo1() {u=sizeof(str1); int *l=&amp;u; } ...

Как сделать так чтобы переменная в описании одной функции была доступна в описании другой? - C++
Как сделать так чтобы переменная в описании одной функции была доступна в описании другой? Заранее спасибо.

Использование функции как параметра другой функции - C++
В задании указано, что функция P прибавляет значение функции ff к элементу массива, если он входит в промежуток от C до D, которые вводятся...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru