Для текущей работающей программы, использующей функцию void: измените программу так, чтобы функция void не выводила значение переменной, а отправляла основной функции.
void trackVar(double& x, double y);
int main()
{
double one, two;
cout << fixed << showpoint << setprecision(2);
cout << "Enter two numbers: ";
cin >> one >> two;
cout << endl;
trackVar(one, two);
cout << "one = " << one << ", two = " << two << endl;
trackVar(two, one);
cout << "one = " << one << ", two = " << two << endl;
return 0;
}
void trackVar(double& x, double y)
{
double z;
z = floor(x) + ceil(y);
x = x + z;
y = y - z;
cout << "z = " << z << ", ";
}
Я могу получить выводперечисляет значения для одного и двух правильно, но не знает, как получить вывод для 'z' как часть основной функции.
Конечный результат (для заинтересованных):
double trackVar(double& x, double y); ///function prototype (switched to double instead of void)
int main()
{
double one, two, z;
cout << fixed << showpoint << setprecision(2);
cout << "Enter two numbers: ";
cin >> one >> two;
cout << endl;
z = trackVar(one,two);
cout <<"z= "<<z<<" "<<"one= "<<
one<<"two= "<<two<< endl;
z = trackVar(two,one);
cout <<"z= "<<z<<" "<<"one= "<<
one<<"two= "<<two<< endl;
return 0;
}
double trackVar(double& x, double y)
{
double z;
z = floor(x) + ceil(y);
x = x + z;
y = y - z;
return z;
}