从主方法调用函数

时间:2011-11-04 00:30:19

标签: c++ function methods

我正在为我正在上课的课程编写课程。我在获得正确的输出方面遇到了问题。我以前编程了很多次,通常我会把我的方法声明全局化。然而,我们的教授告诉我们,不允许我们拥有全球职能。我们所有的函数都必须在Main循环中声明。下面是调用两个主要函数的循环。第一个运行计算。另一个显示输出到屏幕。问题是程序没有多次进行计算,而是多次输出相同的数字。任何帮助是极大的赞赏。

循环:

 for ( YearNumber = 1; YearNumber <= Years; YearNumber++)   
       {

        /*--------------------------------------------------*/
        /*                                                  */
        /* Call ComputeFutureValue Function                 */
        /*                                                  */  
        /*--------------------------------------------------*/

        ComputeFutureValue (Principle, OnePlusInterestRate, YearNumber);

        /*--------------------------------------------------*/
        /*                                                  */
        /* Call DisplayYearInfo Function                    */
        /*                                                  */
        /*--------------------------------------------------*/

        DisplayYearInfo (YearNumber, FutureValue);  

       }

计算功能:

float ComputeFutureValue (float Principle, float OnePlusInterestRate, int YearNumber)
{
 float FutureValue = Principle * pow (OnePlusInterestRate, YearNumber);

}

显示方法:

 void DisplayYearInfo (int YearNumber, float FutureValue)

{

cout << setw (2)
     << YearNumber
     << setw (22)
     << FutureValue
     << "\n";

}

1 个答案:

答案 0 :(得分:1)

你的ComputeFutureValue没有返回任何内容 - 它只声明一个在函数外部不可见的局部变量。

for ( YearNumber = 1; YearNumber <= Years; YearNumber++)   
{

  float FutureValue = ComputeFutureValue (Principle, OnePlusInterestRate, YearNumber);


  DisplayYearInfo (YearNumber, FutureValue);  

}


float ComputeFutureValue (float Principle, float OnePlusInterestRate, int YearNumber)
{
  return Principle * pow (OnePlusInterestRate, YearNumber);
}