我正在为我的编程类编写一个简短的代码,我无法弄清楚如何修复这两个错误:“void值不应该被忽略,因为它应该是”和“return语句带有值,在函数中返回'void'[ - f-permissive]“
#include <iostream>
#include <math.h>
#include <stdlib.h>
void FutureValue(double, double);
using namespace std;
int main(int argc, char** argv) {
//Declare variables
int amount;
int newAmount;
int interestRate;
cout << "Please enter the dollar amount. " << endl;
cin >> amount;
cout << "Please enter the interest rate(e.g., nine percet should be entered as 9.0)." << endl;
cin >> interestRate;
newAmount = FutureValue(amount,interestRate);
cout << "The new dollar amount is" << newAmount << endl;
return 0;
}
void FutureValue(double initialAmount, double interestRate)
{
//Declare variables
double finalAmount;
finalAmount = ( 1 + interestRate/100) * initialAmount;
return(finalAmount);
}
第一个错误被指示在第42行,其中newAmount是。第二个是在第57行,其中return(FinalAmount)是。
非常欢迎任何有关此问题的帮助!
答案 0 :(得分:1)
FutureValue
中的以下行不正确,因为函数的返回类型为void
。
return(finalAmount);
此外,该行
newAmount = FutureValue(amount,interestRate);
由于同样的原因,main
中的不正确 - 函数的返回类型为void
。
将函数的返回类型更改为double
。
double FutureValue(double initialAmount, double interestRate)
{
//Declare variables
double finalAmount;
finalAmount = ( 1 + interestRate/100) * initialAmount;
return(finalAmount);
}
可以简化为:
double FutureValue(double initialAmount, double interestRate)
{
return ( 1 + interestRate/100) * initialAmount;
}