Array help please
Apr 25, 2013 at 12:36am UTC
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
#include <iostream>
#include <iomanip>
using namespace std;
void get_emp_rec(int &id, double &prate, double &hours)
{
cout << "Employee ID is:\t" ;
cin >> id;
cout << "Payrate is:\t" ;
cin >> prate;
cout << "Hours worked are:\t" ;
cin >> hours;
}
double compute_gpay(double hours, double prate)
{
double gpay; // to hold the gross pay
gpay= hours * prate;
return (gpay);
}
double compute_taxes(double gpay)
{
double td; // to hold the tax deduction
if (gpay <= 1000)
td = gpay * 0.05;
else
td= gpay * 0.06;
return (td);
}
double compute_npay(double gpay)
{
double npay, td;
td=compute_taxes(gpay);
npay = gpay - td;
return (npay);
}
void printtables(int ids[], double gpays[], double npays[], int size)
{
for (int j=0; j< size;j++)
{
cout << setw( 7 )<< j << setw( 10 ) << ids[ j ] << endl;
}
cout << "Employee ID" << setw(10)<< "Gross Pay" <<setw(13) << "Net Pay" << endl;
}
int main()
{
int id=0; // to hold the employee ID number
double gross; // to hold the gross pay
double payr; // to hold the payrate
double hoursW; // to hold the number of hours
double tax; // to hold the tax deduction
double netp=0; // to hold the net pay
double tgross=0; // to hold the total gross pay
double tnet=0; // to hold the total net pay
int size; // to show how many employees
int empid[10];
double empgrosspay[10];
double empnetpay[10];
cout.setf(ios::fixed);
cout.setf(ios::showpoint);
cout << setprecision(2); // 2 digits after the decimal point
for (int j=0; j< 10; j++)
{
get_emp_rec(id, payr, hoursW);
empid [j] = id;
/**********************Compute the gross pay*******************************/
gross= compute_gpay(hoursW, payr);
empgrosspay[j]= gross;
/*********************Compute net pay**************************************/
netp= compute_npay (gross);
empnetpay[j]= netp;
/********************Compute the total gross and net pay*******************/
tgross = tgross + gross;
tnet = tnet + netp;
cout << endl;
cout << endl;
}
/************************Print the total gross and net pay*********************/
cout << endl << "\nTotal Gross Pay:\t" << tgross;
cout << endl << "\n Total Net Pay:\t" << tnet;
cout << printtables << endl;
cout << endl;
system ("PAUSE" );
return 0;
}
Apr 25, 2013 at 12:38am UTC
how do i get the outputs to look like a table:
Employee ID........Gross Pay..........Net Pay
101.................540.58...............480.40
158.................796.32................630.20
Apr 25, 2013 at 12:49am UTC
Anyone?!?!?!?!
Apr 25, 2013 at 1:13am UTC
Last edited on Apr 25, 2013 at 1:13am UTC
Apr 25, 2013 at 1:18am UTC
looked at that already and it has not helped, been doing this for 4 hours (way too long)
Apr 25, 2013 at 1:45am UTC
What do you mean it doesn't help?
cout << setw(20) << std::left << std::setfill('.' ) << 1.4 << endl;
Last edited on Apr 25, 2013 at 1:46am UTC
Apr 25, 2013 at 1:51am UTC
i have no idea what your even talking about... why do you have 1.4 in there?
Apr 25, 2013 at 1:57am UTC
The 1.4 is an example value. If you run that code the output is:
From:
1 2 3 4 5 6 7 8 9 10
#include <iostream>
#include <iomanip>
using std::cout;
using std::endl;
int main() {
cout << std::setw(20) << std::left << std::setfill('.' ) << 1.4 << endl;
return 0;
}
Topic archived. No new replies allowed.