double prompt(string input ) {
double input;
cin>>input;
return input;
}
Строка называется input, а double называется input .... здесь что-то не так.
Конечно, это должно быть что-то вроде:
double prompt(string promptStr)
{
double input;
cout << promptStr;
cin >> input;
return input;
}