//*******************************************************
//
// Assignment 3 - Conditionals
//
// Name: J. Student
//
// Class: C Programming, Spring 2023
//
// Date: 2/10/23
//
// Description: Program which determines overtime and gross pay for
// a set of employees and outputs are sent to standard output (the screen).
//
//
//********************************************************
#include <stdio.h>
// Declare constants
#define STD_HOURS 40.0
#define NUM_EMPLOYEES 5
// TODO: Declare and use one more constant
int main( ) {
int clock ; // Employee clock number float wage; // Hourly wage for an employee
float hours; // Total hours worked in a week
float normalPay; // Standard weekly normal pay without overtime
float overtimeHours; // Overtime hours counted over 40 a week
float overtimePay; // Additional overtime pay for any overtime hours worked
float grossPay; // The weekly gross pay which is the normalPay + any overtimePay
// Loop through for the number of employees
for ( int i = 0 ; i < NUM_EMPLOYEES; i++ ) {
// Prompt the user for the clock number
printf ( "Enter clock number: " ) ;
// Prompt the user for the wage rate
// Prompt the user for the number of hours worked
printf ( "Enter number of hours worked: " ) ;
// TODO: For template ... remove at somepoint as really not needed
grossPay = 0 ;
overtimeHours = 0 ;
// Calculate the overtime hours, normal pay, and overtime pay
if ( hours > STD_HOURS) {
/* TODO: calculate the three values with overtime */
} else {
/* TODO: calculate the three values without overtime */
}
// Calculate the gross pay, including time and a half for overtime hours
grossPay = normalPay + overtimePay;
// Display the clock number, number of hours, overtime hours, and gross pay, with the clock number padded with leading zeros if necessary
printf ( "Clock# Wage Hours OT Gross\n " ) ; printf ( "------------------------------------------------\n " ) ; printf ( "%06d %5.2f %5.1f %5.1f %8.2f\n " , clock , wage
, hours
, overtimeHours
, grossPay
) ; }
return 0 ;
}
Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi8vCi8vIEFzc2lnbm1lbnQgMyAtIENvbmRpdGlvbmFscwovLwovLyBOYW1lOiBKLiBTdHVkZW50Ci8vCi8vIENsYXNzOiBDIFByb2dyYW1taW5nLCBTcHJpbmcgMjAyMwovLwovLyBEYXRlOiAyLzEwLzIzCi8vCi8vIERlc2NyaXB0aW9uOiBQcm9ncmFtIHdoaWNoIGRldGVybWluZXMgb3ZlcnRpbWUgYW5kIGdyb3NzIHBheSBmb3IKLy8gYSBzZXQgb2YgZW1wbG95ZWVzIGFuZCBvdXRwdXRzIGFyZSBzZW50IHRvIHN0YW5kYXJkIG91dHB1dCAodGhlIHNjcmVlbikuCi8vCi8vCi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCiNpbmNsdWRlIDxzdGRpby5oPgoKLy8gRGVjbGFyZSBjb25zdGFudHMgCiNkZWZpbmUgU1REX0hPVVJTIDQwLjAKI2RlZmluZSBOVU1fRU1QTE9ZRUVTIDUKLy8gVE9ETzogIERlY2xhcmUgYW5kIHVzZSBvbmUgbW9yZSBjb25zdGFudAoKaW50IG1haW4oKSB7CgkKICAgIGludCBjbG9jazsgICAgICAgICAgIC8vIEVtcGxveWVlIGNsb2NrIG51bWJlcgogICAgZmxvYXQgd2FnZTsgICAgICAgICAgLy8gSG91cmx5IHdhZ2UgZm9yIGFuIGVtcGxveWVlCiAgICBmbG9hdCBob3VyczsgICAgICAgICAvLyBUb3RhbCBob3VycyB3b3JrZWQgaW4gYSB3ZWVrCiAgICBmbG9hdCBub3JtYWxQYXk7ICAgICAvLyBTdGFuZGFyZCB3ZWVrbHkgbm9ybWFsIHBheSB3aXRob3V0IG92ZXJ0aW1lIAogICAgZmxvYXQgb3ZlcnRpbWVIb3VyczsgLy8gT3ZlcnRpbWUgaG91cnMgY291bnRlZCBvdmVyIDQwIGEgd2VlawogICAgZmxvYXQgb3ZlcnRpbWVQYXk7ICAgLy8gQWRkaXRpb25hbCBvdmVydGltZSBwYXkgZm9yIGFueSBvdmVydGltZSBob3VycyB3b3JrZWQKICAgIGZsb2F0IGdyb3NzUGF5OyAgICAgIC8vIFRoZSB3ZWVrbHkgZ3Jvc3MgcGF5IHdoaWNoIGlzIHRoZSBub3JtYWxQYXkgKyBhbnkgb3ZlcnRpbWVQYXkKICAgIAogICAgLy8gTG9vcCB0aHJvdWdoIGZvciB0aGUgbnVtYmVyIG9mIGVtcGxveWVlcwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBOVU1fRU1QTE9ZRUVTOyBpKyspIHsKICAgIAkKICAgICAgICAvLyBQcm9tcHQgdGhlIHVzZXIgZm9yIHRoZSBjbG9jayBudW1iZXIKICAgICAgICBwcmludGYoIkVudGVyIGNsb2NrIG51bWJlcjogIik7CiAgICAgICAgc2NhbmYoIiVkIiwgJmNsb2NrKTsKCiAgICAgICAgLy8gUHJvbXB0IHRoZSB1c2VyIGZvciB0aGUgd2FnZSByYXRlCiAgICAgICAgcHJpbnRmKCJFbnRlciB3YWdlIHJhdGU6ICIpOwogICAgICAgIHNjYW5mKCIlZiIsICZ3YWdlKTsKCiAgICAgICAgLy8gUHJvbXB0IHRoZSB1c2VyIGZvciB0aGUgbnVtYmVyIG9mIGhvdXJzIHdvcmtlZAogICAgICAgIHByaW50ZigiRW50ZXIgbnVtYmVyIG9mIGhvdXJzIHdvcmtlZDogIik7CiAgICAgICAgc2NhbmYoIiVmIiwgJmhvdXJzKTsKICAgICAgICAKICAgICAgICAvLyBUT0RPOiBGb3IgdGVtcGxhdGUgLi4uIHJlbW92ZSBhdCBzb21lcG9pbnQgYXMgcmVhbGx5IG5vdCBuZWVkZWQKICAgICAgICBncm9zc1BheSA9IDA7CiAgICAgICAgb3ZlcnRpbWVIb3VycyA9IDA7CgogICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgb3ZlcnRpbWUgaG91cnMsIG5vcm1hbCBwYXksIGFuZCBvdmVydGltZSBwYXkKICAgICAgICBpZiAoaG91cnMgPiBTVERfSE9VUlMpIHsKICAgICAgICAgICAgLyogVE9ETzogY2FsY3VsYXRlIHRoZSB0aHJlZSB2YWx1ZXMgd2l0aCBvdmVydGltZSAqLwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC8qIFRPRE86IGNhbGN1bGF0ZSB0aGUgdGhyZWUgdmFsdWVzIHdpdGhvdXQgb3ZlcnRpbWUgKi8KICAgICAgICB9CgogICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgZ3Jvc3MgcGF5LCBpbmNsdWRpbmcgdGltZSBhbmQgYSBoYWxmIGZvciBvdmVydGltZSBob3VycwogICAgICAgIGdyb3NzUGF5ID0gbm9ybWFsUGF5ICsgb3ZlcnRpbWVQYXk7CgogICAgICAgIC8vIERpc3BsYXkgdGhlIGNsb2NrIG51bWJlciwgbnVtYmVyIG9mIGhvdXJzLCBvdmVydGltZSBob3VycywgYW5kIGdyb3NzIHBheSwgd2l0aCB0aGUgY2xvY2sgbnVtYmVyIHBhZGRlZCB3aXRoIGxlYWRpbmcgemVyb3MgaWYgbmVjZXNzYXJ5CiAgICAgICAgcHJpbnRmKCJDbG9jayMgV2FnZSAgSG91cnMgIE9UICAgICAgR3Jvc3NcbiIpOwogICAgICAgIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKICAgICAgICBwcmludGYoIiUwNmQgJTUuMmYgJTUuMWYgJTUuMWYgJTguMmZcbiIsIAogICAgICAgICAgICAgICAgY2xvY2ssIHdhZ2UsIGhvdXJzLCBvdmVydGltZUhvdXJzLCBncm9zc1BheSk7CiAgICB9CiAgICAKICAgIHJldHVybiAwOwp9Cg==