//*******************************************************
//
// Assignment 3 - Conditionals
//
// Name: Rose Samedi
//
// Class: C Programming, Fall 2025
//
// Date: 10/19/2025
//
// Description: Program which determines overtime and
// gross pay for a set of employees with outputs sent
// to standard output (the screen).
//
//********************************************************
#include <stdio.h>
// Declare constants
#define STD_HOURS 40.0
#define NUM_EMPLOYEES 5
// Declare constants
#define OT_RATE 1.5
int main( )
{
int clockNumber; // Employee clock number
float grossPay; // The weekly gross pay which is the normalPay + any overtimePay
float hours; // Total hours worked in a week
float normalPay; // Standard weekly normal pay without overtime
float overtimeHrs; // Any hours worked past the normal scheduled work week
float overtimePay; // Additional overtime pay for any overtime hours worked
float wageRate; // Hourly wage for an employee
printf ( "\n *** Pay Calculator ***" ) ;
// Process each employee
for ( int i = 1 ; i < NUM_EMPLOYEES; i++ ) {
// Prompt the user for the clock number
printf ( "\n \n Enter clock number: " ) ; scanf ( "%d" , & clockNumber
) ;
// 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: " ) ;
// Optional TODO: Remove these two statements if desired
// ... were added just for the template to print some values out of the box
grossPay = 0 ;
overtimeHrs = 0 ;
// Calculate the overtime hours, normal pay, and overtime pay
if ( hours > STD_HOURS) {
overtimeHrs = hours - STD_HOURS;
printf ( "You worked %f hours of overtime.\n " ) ; }
else // no OT
{
overtimeHrs = 0 ;
}
// Calculate the gross pay with normal pay and any additional overtime pay
grossPay = normalPay + overtimePay;
// Print out information on the current employee
// Optional TODO: Feel free to also print out normalPay and overtimePay
printf ( "\n \n Clock# Wage Hours OT Gross\n " ) ; printf ( "------------------------------------------------\n " ) ; printf ( "%06d %5.2f %5.1f %5.1f %8.2f\n " , clockNumber, wageRate, hours, overtimeHrs, grossPay) ;
}
return 0 ;
}
Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi8vCi8vIEFzc2lnbm1lbnQgMyAtIENvbmRpdGlvbmFscwovLwovLyBOYW1lOiBSb3NlIFNhbWVkaQovLwovLyBDbGFzczogQyBQcm9ncmFtbWluZywgRmFsbCAyMDI1Ci8vCi8vIERhdGU6IDEwLzE5LzIwMjUKLy8KLy8gRGVzY3JpcHRpb246IFByb2dyYW0gd2hpY2ggZGV0ZXJtaW5lcyBvdmVydGltZSBhbmQgCi8vIGdyb3NzIHBheSBmb3IgYSBzZXQgb2YgZW1wbG95ZWVzIHdpdGggb3V0cHV0cyBzZW50IAovLyB0byBzdGFuZGFyZCBvdXRwdXQgKHRoZSBzY3JlZW4pLgovLwovLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgojaW5jbHVkZSA8c3RkaW8uaD4KCi8vIERlY2xhcmUgY29uc3RhbnRzIAojZGVmaW5lIFNURF9IT1VSUyA0MC4wCiNkZWZpbmUgTlVNX0VNUExPWUVFUyA1Ci8vIERlY2xhcmUgY29uc3RhbnRzCiNkZWZpbmUgT1RfUkFURSAxLjUKCmludCBtYWluKCkgCnsKICAgIAogICAgaW50IGNsb2NrTnVtYmVyOyAgICAgICAvLyBFbXBsb3llZSBjbG9jayBudW1iZXIKICAgIGZsb2F0IGdyb3NzUGF5OyAgICAgICAgLy8gVGhlIHdlZWtseSBncm9zcyBwYXkgd2hpY2ggaXMgdGhlIG5vcm1hbFBheSArIGFueSBvdmVydGltZVBheQogICAgZmxvYXQgaG91cnM7ICAgICAgICAgICAvLyBUb3RhbCBob3VycyB3b3JrZWQgaW4gYSB3ZWVrCiAgICBmbG9hdCBub3JtYWxQYXk7ICAgICAgIC8vIFN0YW5kYXJkIHdlZWtseSBub3JtYWwgcGF5IHdpdGhvdXQgb3ZlcnRpbWUgCiAgICBmbG9hdCBvdmVydGltZUhyczsgICAgIC8vIEFueSBob3VycyB3b3JrZWQgcGFzdCB0aGUgbm9ybWFsIHNjaGVkdWxlZCB3b3JrIHdlZWsKICAgIGZsb2F0IG92ZXJ0aW1lUGF5OyAgICAgLy8gQWRkaXRpb25hbCBvdmVydGltZSBwYXkgZm9yIGFueSBvdmVydGltZSBob3VycyB3b3JrZWQKICAgIGZsb2F0IHdhZ2VSYXRlOyAgICAgICAgLy8gSG91cmx5IHdhZ2UgZm9yIGFuIGVtcGxveWVlCgogICAgcHJpbnRmICgiXG4qKiogUGF5IENhbGN1bGF0b3IgKioqIik7CiAgICAKICAgIC8vIFByb2Nlc3MgZWFjaCBlbXBsb3llZQogICAgZm9yIChpbnQgaSA9IDE7IGkgPCBOVU1fRU1QTE9ZRUVTOyBpKyspIHsKICAgICAgICAKICAgICAgICAvLyBQcm9tcHQgdGhlIHVzZXIgZm9yIHRoZSBjbG9jayBudW1iZXIKICAgICAgICBwcmludGYoIlxuXG5FbnRlciBjbG9jayBudW1iZXI6ICIpOwogICAgICAgIHNjYW5mKCIlZCIsICZjbG9ja051bWJlcik7CgogICAgICAgIC8vIFByb21wdCB0aGUgdXNlciBmb3IgdGhlIHdhZ2UgcmF0ZQogICAgICAgIHByaW50ZigiXG5FbnRlciB3YWdlIHJhdGU6ICIpOwogICAgICAgIHNjYW5mKCIlZiIsICZ3YWdlUmF0ZSk7CgogICAgICAgIC8vIFByb21wdCB0aGUgdXNlciBmb3IgdGhlIG51bWJlciBvZiBob3VycyB3b3JrZWQKICAgICAgICBwcmludGYoIlxuRW50ZXIgbnVtYmVyIG9mIGhvdXJzIHdvcmtlZDogIik7CiAgICAgICAgc2NhbmYoIiVmIiwgJmhvdXJzKTsKICAgICAgICAKICAgICAgICAvLyBPcHRpb25hbCBUT0RPOiAgUmVtb3ZlIHRoZXNlIHR3byBzdGF0ZW1lbnRzIGlmIGRlc2lyZWQKICAgICAgICAvLyAuLi4gd2VyZSBhZGRlZCBqdXN0IGZvciB0aGUgdGVtcGxhdGUgdG8gcHJpbnQgc29tZSB2YWx1ZXMgb3V0IG9mIHRoZSBib3gKICAgICAgICBncm9zc1BheSA9IDA7CiAgICAgICAgb3ZlcnRpbWVIcnMgPSAwOwoKICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG92ZXJ0aW1lIGhvdXJzLCBub3JtYWwgcGF5LCBhbmQgb3ZlcnRpbWUgcGF5CiAgICAgICAgaWYgKGhvdXJzID4gU1REX0hPVVJTKSB7CiAgICAgICAgICAgIG92ZXJ0aW1lSHJzID0gaG91cnMgLSBTVERfSE9VUlM7CgkJCXByaW50ZigiWW91IHdvcmtlZCAlZiBob3VycyBvZiBvdmVydGltZS5cbiIpOwogICAgICAgIH0KICAgICAgICBlbHNlIC8vIG5vIE9UCiAgICAgICAgewoJCQlvdmVydGltZUhycyA9IDA7CiAgICAgICAgICAgIAogICAgICAgIH0KCiAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBncm9zcyBwYXkgd2l0aCBub3JtYWwgcGF5IGFuZCBhbnkgYWRkaXRpb25hbCBvdmVydGltZSBwYXkKICAgICAgICBncm9zc1BheSA9IG5vcm1hbFBheSArIG92ZXJ0aW1lUGF5OwoKICAgICAgICAvLyBQcmludCBvdXQgaW5mb3JtYXRpb24gb24gdGhlIGN1cnJlbnQgZW1wbG95ZWUKICAgICAgICAvLyBPcHRpb25hbCBUT0RPOiAgRmVlbCBmcmVlIHRvIGFsc28gcHJpbnQgb3V0IG5vcm1hbFBheSBhbmQgb3ZlcnRpbWVQYXkKICAgICAgICBwcmludGYoIlxuXG5DbG9jayMgV2FnZSAgSG91cnMgIE9UICAgICAgR3Jvc3NcbiIpOwogICAgICAgIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKICAgICAgICBwcmludGYoIiUwNmQgJTUuMmYgJTUuMWYgJTUuMWYgJTguMmZcbiIsIAogICAgICAgICAgICAgICAgY2xvY2tOdW1iZXIsIHdhZ2VSYXRlLCBob3Vycywgb3ZlcnRpbWVIcnMsIGdyb3NzUGF5KTsKICAgIH0KICAgIAogICAgcmV0dXJuIDA7Cn0K