-1

Having trouble with a few variables for a tip calculator program. Some of the variables get their value using cin rather than being declared in the code itself. If I try to put in default values the program won't even look at the input values. So like if I set each to 0, the total amount calculated at the end would be 0.

int main()


int numberofDollars;
int numberofQuarters;
int numberofDimes;
int numberofNickles;
int numberofPennies;

string name;
const float dollar = 1.00;
const float quarter = 0.25;
const float dime = 0.10;
const float nickle = 0.05;
const float penny = 0.01;

float valueofDollars = numberofDollars * dollar;
float valueofQuarters = numberofQuarters * quarter;
float valueofDimes = numberofDimes * dime;
float valueofNickles = numberofNickles * nickle;
float valueofPennies = numberofPennies * penny;

double totalDeposit = valueofDollars + valueofQuarters + valueofDimes + valueofNickles + valueofPennies;

cout << "Enter account owner's name: ";
getline(cin, name);
cout << "Enter number of Dollars: ";
cin >> numberofDollars;
cout << "Enter number of Quarters: ";
cin >> numberofQuarters;
cout << "Enter number of Dimes: ";
cin >> numberofDimes;
cout << "Enter number of Nickles: ";
cin >> numberofNickles;
cout << "Enter number of Pennies: ";
cin >> numberofPennies;

cout << "Account Name: " << name << endl;
cout << "Total Deposit = $" << totalDeposit << endl;






system("pause");
return 0;
JazKW
  • 7
  • 1
  • Please search before posting a question. There are good chances that you can get an answer much faster just by a quick search. Have a look at this [question](http://stackoverflow.com/q/26351690/5060335) and you'll get your answer. – UditS Feb 07 '16 at 14:54
  • I posted because I could not find my answer in any other questions already asked. – JazKW Feb 22 '16 at 23:31

3 Answers3

4

You are using the variables before they are read. You can't declare a variable to be some calculation like you have done. You have to calculate the values after you have put values into the variables.

When you say

float valueofDollars = numberofDollars * dollar;

it means "calculate the multiplication of the variable values at this moment and store it." It doesn't mean "calculate this every time the variables change." So move all these after the variables have been read.

Sami Kuhmonen
  • 30,146
  • 9
  • 61
  • 74
0

You calculate values first suing uninitialized values, then read amount of coins and not use them after you read them.

Revolver_Ocelot
  • 8,609
  • 3
  • 30
  • 48
0

I guess this is, what you wanted to do:

#include <iostream>

using namespace std;

int main() {

    double  numberofDollars, numberofQuarters,
            numberofDimes, numberofNickles,
            numberofPennies;

    string name;

    const double quarter = 0.25, dime = 0.10,
                nickle = 0.05, penny = 0.01;

    double  valueofDollars, valueofQuarters, valueofDimes,
            valueofNickles, valueofPennies, totalDeposit;

    cout << "Enter account owner's name: ";
    getline(cin, name);
    cout << "Enter number of Dollars: ";
    cin >> numberofDollars;
    cout << "Enter number of Quarters: ";
    cin >> numberofQuarters;
    cout << "Enter number of Dimes: ";
    cin >> numberofDimes;
    cout << "Enter number of Nickles: ";
    cin >> numberofNickles;
    cout << "Enter number of Pennies: ";
    cin >> numberofPennies;

    valueofDollars = numberofDollars;
    valueofQuarters = numberofQuarters * quarter;
    valueofDimes = numberofDimes * dime;
    valueofNickles = numberofNickles * nickle;
    valueofPennies = numberofPennies * penny;

    totalDeposit = valueofDollars + valueofQuarters + valueofDimes + valueofNickles + valueofPennies;

    cout << "Account Name: " << name << endl;
    cout << "Total Deposit = $" << totalDeposit << endl;

    return 0;
}