Re: one more try on C programming help

  • From: "John Miller" <n1umj@xxxxxxxxxxx>
  • To: <programmingblind@xxxxxxxxxxxxx>
  • Date: Tue, 30 Oct 2007 21:37:21 -0400

I"m still not getting it but that could be over tired, I'll put it away for the night. Hopefully I figure it out tomorrow so I can make the additions Thursday to get this week's work done and in on time but I'm pretty concerned that isn't going to happen again. I'm sure 3 of them late in a row won't be good even if the first 2 were due to his schedule. We'll see what happens, I'm too tired and sick of looking at it tonight to even care right now. ----- Original Message ----- From: "Jackie McBride" <abletec@xxxxxxxxx>

To: <programmingblind@xxxxxxxxxxxxx>
Sent: Tuesday, October 30, 2007 8:13 PM
Subject: Re: one more try on C programming help


John:

U remember when I told u Saturday that a struct was declared as:
struct employee {
int clock;
float hours_worked;
float overtime;
float gross_pay;
}
struct employee emp;

1 thing u did here was 2 try 2 declare struct emp b4 u ever defined it.

Now, let's look at some of these errors:
void initData(emp, SIZE);

U do not define what emp or size is, e.g., u should declare the
employee struct b4 u do that, u also need to define to the function
what size is--remember, your computer failed telepathy 101.
So, declare your struct first, then say something like:
void initData(struct emp, int SIZE);

Remember, you've gotta tell your compiler *everything*--data types, etc.

Now, u say:
initData(clockNumber,wage,hoursWorked);

but when u declared the function, u said:
initdata(emp, size)

So you're contradicting yourself, & the compiler is telling u this.

Also, u never declared a function called GetHoursWorked.

On 10/30/07, John Miller <n1umj@xxxxxxxxxxx> wrote:
OK, here's the code and the list of errors. I did what I thought might fix
some of it but it made no difference, maybe someone else can see what's
goign on, based on the errors and what I've seen so far this semester, it's probably 1 thing I missing, maybe more than once but very likely it's only 1
or 2 things over all I'm missing to get this decent. code as is right now
follows with errors following.

#include <stdio.h>

/* function prototypes */

void initData(emp, SIZE);

float calculateOverTime(int entry, float *wagePtr,float *hoursWorkedPtr);

float calculateGrossPay(int entry, float *wagePtr,float *hoursWorkedPtr);

void displayEntry(int entry, int *clockNumberPtr,float *wagePtr,float
*hoursWorkedPtr);


struct emp;

int main (char *argv, int argc)

{ /*get clock info*/

int clockNumber; /*employee number*/

float wage; /* declare wage */

float hoursWorked; /*enter hours worked*/

int i=0;//index for for loop

initData(clockNumber,wage,hoursWorked);

for (i=0;i<5;i++)

getHoursWorked(i,clockNumber,hoursWorked);

printf("Clock #\tWAge\thours\tOver time\tGross Pay\n");

for (i=0;i<5;i++)

displayEntry(i,clockNumber,wage,hoursWorked);

struct emp myempArray[5];

return(0);

} /*end get clock info*/

struct emp;

void initData(int *clockNumberPtr,float *wagePtr,float *hoursWorkedPtr)

{ /* declaring clock numbers and wage*/

int i; // index for for loop

emp[0].clockNumber=98401; /*first employee*/

emp[1].clockNumber=526488; /* second employee*/

emp[2].clockNumber=765349; /*third employee */

emp[3].clockNumber=34645; /*forth employee*/

emp[4].clockNumber=127615; /*fifth employee */

emp[0].wage=10.60; /* first employee wage

emp[1].wage=9.75; /*second employee wage

emp[2].wage=10.50; /* third employee wage */

emp[3].wage=12.25; /*employee 4 wage */

emp[4].wage=8.35; /* fifth employee wage 8/

// init hours worked to 0

for (i=0;i<5;i++)

hoursWorkedPtr[i]=0;

} /*end declaring clock and wage numbers*/

void getHoursWorked(struct employee emp[])

{ /*prompt for hours*/

printf ("Enter hours worked by %d: ",clockNumberPtr[entry]);

scanf_s("%f", &(hoursWorkedPtr[entry]));

} /*end prompt for hours*/

float calculateOverTime(int entry, float *wagePtr,float *hoursWorkedPtr)

{ /* figure out overtime */

float overTimeHours=hoursWorkedPtr[entry]-40;

float overTimePay=0;

if (overTimeHours>0)

overTimePay=overTimeHours*(wagePtr[entry]*1.5);

return (overTimePay);

} /* end figuring out overtime */



float calculateGrossPay(int entry, float *wagePtr,float *hoursWorkedPtr)

{ /* determine gross pay*/

float grossPay=0;

if (hoursWorkedPtr[entry]>40)

grossPay=(40*wagePtr[entry])+calculateOverTime(entry,wagePtr,hoursWorkedPtr);

else

grossPay=wagePtr[entry]*hoursWorkedPtr[entry];

return (grossPay);

} /*end determine gross pay */

void displayEntry(int entry, int *clockNumberPtr,float *wagePtr,float
*hoursWorkedPtr)

{ /*desplay results */

printf ("%d\t%0.2f\t%0.2f\t%0.2f\t%0.2f\n",

emp.clockNumber,

emp.wage,

emp.hoursWorked,

calculateOverTime(entry,wagePtr,hoursWorkedPtr),

calculateGrossPay(entry,wagePtr,hoursWorkedPtr));

} /* end desplay output*/



errorw,



Warning 1 warning C4013: 'getHoursWorked' undefined; assuming extern
returning int c:\documents and settings\john miller\my documents\visual
studio 2005\projects\homework6\homework6.c 36
Warning 2 warning C4047: 'function' : 'int *' differs in levels of
indirection from 'int' c:\documents and settings\john miller\my
documents\visual studio 2005\projects\homework6\homework6.c 40
Warning 3 warning C4024: 'displayEntry' : different types for formal and
actual parameter 2 c:\documents and settings\john miller\my documents\visual
studio 2005\projects\homework6\homework6.c 40
Error 4 error C2440: 'function' : cannot convert from 'float' to 'float *'
c:\documents and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 40
Warning 5 warning C4024: 'displayEntry' : different types for formal and
actual parameter 3 c:\documents and settings\john miller\my documents\visual
studio 2005\projects\homework6\homework6.c 40
Error 6 error C2440: 'function' : cannot convert from 'float' to 'float *'
c:\documents and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 40
Warning 7 warning C4024: 'displayEntry' : different types for formal and
actual parameter 4 c:\documents and settings\john miller\my documents\visual
studio 2005\projects\homework6\homework6.c 40
Error 8 error C2143: syntax error : missing ';' before 'type' c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 41
Error 9 error C2065: 'emp' : undeclared identifier c:\documents and
settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 51
Error 10 error C2109: subscript requires array or pointer type c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 51
Error 11 error C2109: subscript requires array or pointer type c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 52
Error 12 error C2109: subscript requires array or pointer type c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 53
Error 13 error C2109: subscript requires array or pointer type c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 54
Error 14 error C2109: subscript requires array or pointer type c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 55
Error 15 error C2109: subscript requires array or pointer type c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 57
Error 16 error C2109: subscript requires array or pointer type c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 60
Error 17 error C2109: subscript requires array or pointer type c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 61
Error 18 error C2143: syntax error : missing ';' before 'type' c:\documents
and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 68
Error 19 error C2065: 'entry' : undeclared identifier c:\documents and
settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 71
Warning 20 warning C4244: '=' : conversion from 'double' to 'float',
possible loss of data c:\documents and settings\john miller\my
documents\visual studio 2005\projects\homework6\homework6.c 80
Error 21 error C2224: left of '.clockNumber' must have struct/union type
c:\documents and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 101
Error 22 error C2224: left of '.wage' must have struct/union type
c:\documents and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 102
Error 23 error C2224: left of '.hoursWorked' must have struct/union type
c:\documents and settings\john miller\my documents\visual studio
2005\projects\homework6\homework6.c 103


----- Original Message -----
From: "Marlon Brandão de Sousa" <splyt.lists@xxxxxxxxx>
To: <programmingblind@xxxxxxxxxxxxx>
Sent: Tuesday, October 30, 2007 5:59 PM
Subject: Re: one more try on C programming help


also post the "better fixed" code, it is the one you used to got ride
of these errors.
Marlon

2007/10/30, Marlon Brandão de Sousa <splyt.lists@xxxxxxxxx>:
> You're getting it ... when you start to fix errors the compiler tells
> you and learns to fix errors that the compiler didn't tell or tould
> something uninteligable then it shows that you are being able to see
> and fix for yourself what you did wrong before.
> Marlon
>
> 2007/10/30, John Miller <n1umj@xxxxxxxxxxx>:
> > OK, I got rid of 8 more errors, something stupid I was missing but the
> > errors didn't say anything that led me right I just stumbled in to it.
> > The
> > rest though I'm completely lost on.
> > ----- Original Message -----
> > From: "John Miller" <n1umj@xxxxxxxxxxx>
> > To: <programmingblind@xxxxxxxxxxxxx>
> > Sent: Tuesday, October 30, 2007 5:22 PM
> > Subject: one more try on C programming help
> >
> >
> > > OK, I've worked on this, changed it some and get nowhere. Yes, I did
> > > try
> > > to compile it and out of 29 errors, I was able to make sense out of > > > 1,
> > > which fixed 4 of them but the rest are absolutely no good to me what
> > > so
> > > ever. I'm sick of looking at it, and for this week's assignment this
> > > has
> > > to be 100%. I know if I stick with it alone, that will never happen > > > so
> if
> > > Anyone can offer anything on this constructive I would really
> > > appreciate
> > > it. I'm getting nowhere. If I see 1 more error telling me I'm > > > missing > > > something that's actually there, there will be no more computer to > > > do
> this
> > > on after I'm done with the hammer.
> > >
> > > (start code)
> > > #include <stdio.h>
> > >
> > > /* function prototypes */
> > >
> > > void initData(emp, SIZE);
> > >
> > > float calculateOverTime(int entry, float *wagePtr,float
> *hoursWorkedPtr);
> > >
> > > float calculateGrossPay(int entry, float *wagePtr,float
> *hoursWorkedPtr);
> > >
> > > void displayEntry(int entry, int *clockNumberPtr,float > > > *wagePtr,float
> > > *hoursWorkedPtr);
> > >
> > >
> > > struct emp;
> > >
> > > int main (char *argv, int argc)
> > >
> > > { /*get clock info*/
> > >
> > > int clockNumber; /*employee number*/
> > >
> > > float wage; /* declare wage */
> > >
> > > float hoursWorked; /*enter hours worked*/
> > >
> > > int i=0;//index for for loop
> > >
> > > initData(clockNumber,wage,hoursWorked);
> > >
> > > for (i=0;i<5;i++)
> > >
> > > getHoursWorked(i,clockNumber,hoursWorked);
> > >
> > > printf("Clock #\tWAge\thours\tOver time\tGross Pay\n");
> > >
> > > for (i=0;i<5;i++)
> > >
> > > displayEntry(i,clockNumber,wage,hoursWorked);
> > >
> > > struct emp myempArray[5];
> > >
> > > return(0);
> > >
> > > } /*end get clock info*/
> > >
> > > struct emp;
> > >
> > > void initData(int *clockNumberPtr,float *wagePtr,float
> > > *hoursWorkedPtr)
> > >
> > > { /* declaring clock numbers and wage*/
> > >
> > > int i; // index for for loop
> > >
> > > emp[0].clockNumber=98401; /*first employee*/
> > >
> > > emp[1].clockNumber=526488; /* second employee*/
> > >
> > > emp[2]clockNumber=765349; /*third employee */
> > >
> > > emp[3]clockNumber=34645; /*forth employee*/
> > >
> > > emp[4]clockNumber=127615; /*fifth employee */
> > >
> > > emp[0]wage=10.60; /* first employee wage
> > >
> > > emp[1]wage=9.75; /*second employee wage
> > >
> > > emp[2]wage=10.50; /* third employee wage */
> > >
> > > emp[3]wage=12.25; /*employee 4 wage */
> > >
> > > emp[4]wage=8.35; /* fifth employee wage 8/
> > >
> > > // init hours worked to 0
> > >
> > > for (i=0;i<5;i++)
> > >
> > > hoursWorkedPtr[i]=0;
> > >
> > > } /*end declaring clock and wage numbers*/
> > >
> > > void getHoursWorked(struct employee emp[])
> > >
> > > { /*prompt for hours*/
> > >
> > > printf ("Enter hours worked by %d: ",clockNumberPtr[entry]);
> > >
> > > scanf_s("%f", &(hoursWorkedPtr[entry]));
> > >
> > > } /*end prompt for hours*/
> > >
> > > float calculateOverTime(int entry, float *wagePtr,float
> > > *hoursWorkedPtr)
> > >
> > > { /* figure out overtime */
> > >
> > > float overTimeHours=hoursWorkedPtr[entry]-40;
> > >
> > > float overTimePay=0;
> > >
> > > if (overTimeHours>0)
> > >
> > > overTimePay=overTimeHours*(wagePtr[entry]*1.5);
> > >
> > > return (overTimePay);
> > >
> > > } /* end figuring out overtime */
> > >
> > >
> > >
> > > float calculateGrossPay(int entry, float *wagePtr,float
> > > *hoursWorkedPtr)
> > >
> > > { /* determine gross pay*/
> > >
> > > float grossPay=0;
> > >
> > > if (hoursWorkedPtr[entry]>40)
> > >
> > >
> >
>
grossPay=(40*wagePtr[entry])+calculateOverTime(entry,wagePtr,hoursWorkedPtr);
> > >
> > > else
> > >
> > > grossPay=wagePtr[entry]*hoursWorkedPtr[entry];
> > >
> > > return (grossPay);
> > >
> > > } /*end determine gross pay */
> > >
> > > void displayEntry(int entry, int *clockNumberPtr,float > > > *wagePtr,float
> > > *hoursWorkedPtr)
> > >
> > > { /*desplay results */
> > >
> > > printf ("%d\t%0.2f\t%0.2f\t%0.2f\t%0.2f\n",
> > >
> > > emp.clockNumber,
> > >
> > > emp.wage,
> > >
> > > emp.hoursWorked,
> > >
> > > calculateOverTime(entry,wagePtr,hoursWorkedPtr),
> > >
> > > calculateGrossPay(entry,wagePtr,hoursWorkedPtr));
> > >
> > > } /* end desplay output*/
> > >
> > >
> > >
> > > (end code)
> > >
> > > __________
> > > View the list's information and change your settings at
> > > //www.freelists.org/list/programmingblind
> > >
> >
> > __________
> > View the list's information and change your settings at
> > //www.freelists.org/list/programmingblind
> >
> >
>
>
> --
> When you say "I wrote a program that crashed Windows," people just
> stare at you blankly and say "Hey, I got those with the system, for
> free."
> Linus Torvalds
>


--
When you say "I wrote a program that crashed Windows," people just
stare at you blankly and say "Hey, I got those with the system, for
free."
Linus Torvalds
__________
View the list's information and change your settings at
//www.freelists.org/list/programmingblind

__________
View the list's information and change your settings at
//www.freelists.org/list/programmingblind




--
Jackie McBride
Please join my fight against breast cancer
<http://teamacs.acsevents.org/site/TR?px=1790196&pg=personal&fr_id=3489>
& Check out my homepage at:
www.abletec.serverheaven.net
__________
View the list's information and change your settings at
//www.freelists.org/list/programmingblind

__________
View the list's information and change your settings at //www.freelists.org/list/programmingblind

Other related posts: