//*******************************************************
//
// 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++ ) {
printf ( "\n \n *** Pay Calculator ***" ) ;
// Prompt the user for the clock number
printf ( "\n Enter clock number: " ) ;
// Prompt the user for the wage rate
printf ( "\n Enter wage rate: " ) ;
// Prompt the user for the number of hours worked
printf ( "\n 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 ( "\n \n 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 ;
}
Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi8vCi8vIEFzc2lnbm1lbnQgMyAtIENvbmRpdGlvbmFscwovLwovLyBOYW1lOiBKLiBTdHVkZW50Ci8vCi8vIENsYXNzOiBDIFByb2dyYW1taW5nLCBTcHJpbmcgMjAyMwovLwovLyBEYXRlOiAyLzEwLzIzCi8vCi8vIERlc2NyaXB0aW9uOiBQcm9ncmFtIHdoaWNoIGRldGVybWluZXMgb3ZlcnRpbWUgYW5kIGdyb3NzIHBheSBmb3IKLy8gYSBzZXQgb2YgZW1wbG95ZWVzIGFuZCBvdXRwdXRzIGFyZSBzZW50IHRvIHN0YW5kYXJkIG91dHB1dCAodGhlIHNjcmVlbikuCi8vCi8vCi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCiNpbmNsdWRlIDxzdGRpby5oPgoKLy8gRGVjbGFyZSBjb25zdGFudHMgCiNkZWZpbmUgU1REX0hPVVJTIDQwLjAKI2RlZmluZSBOVU1fRU1QTE9ZRUVTIDUKLy8gVE9ETzogIERlY2xhcmUgYW5kIHVzZSBvbmUgbW9yZSBjb25zdGFudAoKaW50IG1haW4oKSB7CgkKICAgIGludCBjbG9jazsgICAgICAgICAgIC8vIEVtcGxveWVlIGNsb2NrIG51bWJlcgogICAgZmxvYXQgd2FnZTsgICAgICAgICAgLy8gSG91cmx5IHdhZ2UgZm9yIGFuIGVtcGxveWVlCiAgICBmbG9hdCBob3VyczsgICAgICAgICAvLyBUb3RhbCBob3VycyB3b3JrZWQgaW4gYSB3ZWVrCiAgICBmbG9hdCBub3JtYWxQYXk7ICAgICAvLyBTdGFuZGFyZCB3ZWVrbHkgbm9ybWFsIHBheSB3aXRob3V0IG92ZXJ0aW1lIAogICAgZmxvYXQgb3ZlcnRpbWVIb3VyczsgLy8gT3ZlcnRpbWUgaG91cnMgY291bnRlZCBvdmVyIDQwIGEgd2VlawogICAgZmxvYXQgb3ZlcnRpbWVQYXk7ICAgLy8gQWRkaXRpb25hbCBvdmVydGltZSBwYXkgZm9yIGFueSBvdmVydGltZSBob3VycyB3b3JrZWQKICAgIGZsb2F0IGdyb3NzUGF5OyAgICAgIC8vIFRoZSB3ZWVrbHkgZ3Jvc3MgcGF5IHdoaWNoIGlzIHRoZSBub3JtYWxQYXkgKyBhbnkgb3ZlcnRpbWVQYXkKICAgIAogICAgLy8gTG9vcCB0aHJvdWdoIGZvciB0aGUgbnVtYmVyIG9mIGVtcGxveWVlcwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBOVU1fRU1QTE9ZRUVTOyBpKyspIHsKICAgIAkKICAgIAlwcmludGYgKCJcblxuKioqIFBheSBDYWxjdWxhdG9yICoqKiIpOwogICAgCQogICAgICAgIC8vIFByb21wdCB0aGUgdXNlciBmb3IgdGhlIGNsb2NrIG51bWJlcgogICAgICAgIHByaW50ZigiXG5FbnRlciBjbG9jayBudW1iZXI6ICIpOwogICAgICAgIHNjYW5mKCIlZCIsICZjbG9jayk7CgogICAgICAgIC8vIFByb21wdCB0aGUgdXNlciBmb3IgdGhlIHdhZ2UgcmF0ZQogICAgICAgIHByaW50ZigiXG5FbnRlciB3YWdlIHJhdGU6ICIpOwogICAgICAgIHNjYW5mKCIlZiIsICZ3YWdlKTsKCiAgICAgICAgLy8gUHJvbXB0IHRoZSB1c2VyIGZvciB0aGUgbnVtYmVyIG9mIGhvdXJzIHdvcmtlZAogICAgICAgIHByaW50ZigiXG5FbnRlciBudW1iZXIgb2YgaG91cnMgd29ya2VkOiAiKTsKICAgICAgICBzY2FuZigiJWYiLCAmaG91cnMpOwogICAgICAgIAogICAgICAgIC8vIFRPRE86IEZvciB0ZW1wbGF0ZSAuLi4gcmVtb3ZlIGF0IHNvbWVwb2ludCBhcyByZWFsbHkgbm90IG5lZWRlZAogICAgICAgIGdyb3NzUGF5ID0gMDsKICAgICAgICBvdmVydGltZUhvdXJzID0gMDsKCiAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBvdmVydGltZSBob3Vycywgbm9ybWFsIHBheSwgYW5kIG92ZXJ0aW1lIHBheQogICAgICAgIGlmIChob3VycyA+IFNURF9IT1VSUykgewogICAgICAgICAgICAvKiBUT0RPOiBjYWxjdWxhdGUgdGhlIHRocmVlIHZhbHVlcyB3aXRoIG92ZXJ0aW1lICovCiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgLyogVE9ETzogY2FsY3VsYXRlIHRoZSB0aHJlZSB2YWx1ZXMgd2l0aG91dCBvdmVydGltZSAqLwogICAgICAgIH0KCiAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBncm9zcyBwYXksIGluY2x1ZGluZyB0aW1lIGFuZCBhIGhhbGYgZm9yIG92ZXJ0aW1lIGhvdXJzCiAgICAgICAgZ3Jvc3NQYXkgPSBub3JtYWxQYXkgKyBvdmVydGltZVBheTsKCiAgICAgICAgLy8gRGlzcGxheSB0aGUgY2xvY2sgbnVtYmVyLCBudW1iZXIgb2YgaG91cnMsIG92ZXJ0aW1lIGhvdXJzLCBhbmQgZ3Jvc3MgcGF5LCB3aXRoIHRoZSBjbG9jayBudW1iZXIgcGFkZGVkIHdpdGggbGVhZGluZyB6ZXJvcyBpZiBuZWNlc3NhcnkKICAgICAgICBwcmludGYoIlxuXG5DbG9jayMgV2FnZSAgSG91cnMgIE9UICAgICAgR3Jvc3NcbiIpOwogICAgICAgIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKICAgICAgICBwcmludGYoIiUwNmQgJTUuMmYgJTUuMWYgJTUuMWYgJTguMmZcbiIsIAogICAgICAgICAgICAgICAgY2xvY2ssIHdhZ2UsIGhvdXJzLCBvdmVydGltZUhvdXJzLCBncm9zc1BheSk7CiAgICB9CiAgICAKICAgIHJldHVybiAwOwp9Cg==