Solved

constants

Posted on 2000-04-09
9
307 Views
Last Modified: 2010-04-02
can someone help me understand constants please. Here is my program i'm writing, but it's not working the deductions right.  
      char lastName[10];  
      char firstName[10];  
      float hoursWorked;
      double grossPay =0;
      double rate;
      const double sTax    = .075;
      const double fTax    = .15;
      const double miscDed = .20;
      double netIncome;
      double deduction;

//Calculate pay and deductions
      grossPay = hoursWorked * rate;
      deduction = (sTax + fTax + miscDed);
      netIncome = grossPay * deduction;

thanks,
nationnon

0
Comment
Question by:nationnon
  • 4
  • 2
  • 2
  • +1
9 Comments
 
LVL 2

Expert Comment

by:homer99
ID: 2698942
what kind of output are you getting
0
 
LVL 1

Author Comment

by:nationnon
ID: 2698987
Enter your last name: r
Enter your first name: r
Enter hours worked: 40
Enter pay rate: 10
r r's gross pay was 400 but after deductions pay is now 170

Press any key to continue

0
 
LVL 1

Author Comment

by:nationnon
ID: 2698991
that's not the right deduction
are the constants right?
0
NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

 
LVL 2

Expert Comment

by:homer99
ID: 2699075
nationnon:
your constants are fine.  your code is also fine except the last line. I believe it should read:
netIncome=netIncome - netIncome * deduction.
Give this a try.
0
 
LVL 2

Expert Comment

by:homer99
ID: 2699078
correction: netIncome = grossPay - grossPay * deduction;
sorry about that.
0
 

Expert Comment

by:kishore_joshi
ID: 2699470
Hi,
I think u need to use the following formula,


deduction = (sTax + fTax + miscDed)*rate * hoursWorked ;
netIncome = grossPay - deduction;


Thats it....

0
 
LVL 22

Expert Comment

by:nietod
ID: 2700241
True, but the other problem is that sTax and fTax are holding the tax _percents_ not the tax themselves.

Use an exampel to help you.  If you are in the 10% bracket (I wish) and you earn $100 (okay I don't wish) your tax should be $10 and you net shoudl be $90.

So

Tax = TaxPercent*Gross;
Net = Gross-Tax;
0
 
LVL 22

Accepted Solution

by:
nietod earned 40 total points
ID: 2700275
double grossPay =0;
double rate;
const double sTaxPct    = .075;
const double fTaxPct    = .15;
const double miscDedPct = .20;
double sTaxAmt ;
double fTaxAmt;
double miscDedAmt;

double netIncome;
double deduction;

//Calculate pay and deductions
grossPay = hoursWorked * rate;
sTaxAmt = sTaxPct*grossPay;
fTaxAmt = fTaxPct*grossPay;
miscDedAmt = miscDedPct*grossPay;

deduction = (sTaxAmt + fTaxAmt + miscDedAmt);
netIncome = grossPay - deduction;

(Technically your original

netIncome = grossPay * deduction;

was close, but it was calculatign the total deduction amount, not the net amount.  It should have been

netIncome = grossPay * (1-deduction);

but the method I give above is better when you have to start considering rounding to cents.)
0
 
LVL 2

Expert Comment

by:homer99
ID: 2701126
kishore joshi:
you just stated my answer in a different form.
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Written by John Humphreys C++ Threading and the POSIX Library This article will cover the basic information that you need to know in order to make use of the POSIX threading library available for C and C++ on UNIX and most Linux systems.   [s…
Many modern programming languages support the concept of a property -- a class member that combines characteristics of both a data member and a method.  These are sometimes called "smart fields" because you can add logic that is applied automaticall…
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question