//*******************************************************
//
// Assignment 3 - Conditionals
//
// Name: John Semenuk
//
// Class: C Programming, Spring 2026
//
// Date: February 14, 2026
//
// 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
#define OT_RATE 1.5 // Overtime pay rate
int main( )
{
int clockNumber;
float grossPay;
float hours;
float normalPay;
float overtimeHrs;
float overtimePay;
float wageRate;
printf ( "\n *** Pay Calculator ***" ) ;
// Process each employee
for ( int i = 0 ; i < NUM_EMPLOYEES; i++ ) {
printf ( "\n \n Enter clock number: " ) ; scanf ( "%d" , & clockNumber
) ;
printf ( "\n Enter wage rate: " ) ;
printf ( "\n Enter number of hours worked: " ) ;
grossPay = 0 ;
overtimeHrs = 0 ;
overtimePay = 0 ;
normalPay = 0 ;
// Calculate the overtime hours, normal pay, and overtime pay
if ( hours > STD_HOURS)
{
overtimeHrs = hours - STD_HOURS;
normalPay = STD_HOURS * wageRate;
overtimePay = overtimeHrs * wageRate * OT_RATE;
}
else
{
normalPay = hours * wageRate;
overtimePay = 0 ;
overtimeHrs = 0 ;
}
// Calculate gross pay
grossPay = normalPay + overtimePay;
// Print out information on the current employee
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 ;
}
Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi8vCi8vIEFzc2lnbm1lbnQgMyAtIENvbmRpdGlvbmFscwovLwovLyBOYW1lOiBKb2huIFNlbWVudWsKLy8KLy8gQ2xhc3M6IEMgUHJvZ3JhbW1pbmcsIFNwcmluZyAyMDI2Ci8vCi8vIERhdGU6IEZlYnJ1YXJ5IDE0LCAyMDI2Ci8vCi8vIERlc2NyaXB0aW9uOiBQcm9ncmFtIHdoaWNoIGRldGVybWluZXMgb3ZlcnRpbWUgYW5kIAovLyBncm9zcyBwYXkgZm9yIGEgc2V0IG9mIGVtcGxveWVlcyB3aXRoIG91dHB1dHMgc2VudCAKLy8gdG8gc3RhbmRhcmQgb3V0cHV0ICh0aGUgc2NyZWVuKS4KLy8KLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKI2luY2x1ZGUgPHN0ZGlvLmg+CgovLyBEZWNsYXJlIGNvbnN0YW50cyAKI2RlZmluZSBTVERfSE9VUlMgNDAuMAojZGVmaW5lIE5VTV9FTVBMT1lFRVMgNQojZGVmaW5lIE9UX1JBVEUgMS41ICAgICAvLyBPdmVydGltZSBwYXkgcmF0ZQoKaW50IG1haW4oKSAKeyAgCiAgICBpbnQgY2xvY2tOdW1iZXI7ICAgICAKICAgIGZsb2F0IGdyb3NzUGF5OyAgICAgIAogICAgZmxvYXQgaG91cnM7ICAgICAgICAgCiAgICBmbG9hdCBub3JtYWxQYXk7ICAgICAKICAgIGZsb2F0IG92ZXJ0aW1lSHJzOyAgIAogICAgZmxvYXQgb3ZlcnRpbWVQYXk7ICAgCiAgICBmbG9hdCB3YWdlUmF0ZTsgICAgICAKCiAgICBwcmludGYgKCJcbioqKiBQYXkgQ2FsY3VsYXRvciAqKioiKTsKICAgIAogICAgLy8gUHJvY2VzcyBlYWNoIGVtcGxveWVlCiAgICBmb3IgKGludCBpID0gMDsgaSA8IE5VTV9FTVBMT1lFRVM7IGkrKykgewogICAgICAgIAogICAgICAgIHByaW50ZigiXG5cbkVudGVyIGNsb2NrIG51bWJlcjogIik7CiAgICAgICAgc2NhbmYoIiVkIiwgJmNsb2NrTnVtYmVyKTsKCiAgICAgICAgcHJpbnRmKCJcbkVudGVyIHdhZ2UgcmF0ZTogIik7CiAgICAgICAgc2NhbmYoIiVmIiwgJndhZ2VSYXRlKTsKCiAgICAgICAgcHJpbnRmKCJcbkVudGVyIG51bWJlciBvZiBob3VycyB3b3JrZWQ6ICIpOwogICAgICAgIHNjYW5mKCIlZiIsICZob3Vycyk7CiAgICAgICAgCiAgICAgICAgZ3Jvc3NQYXkgPSAwOwogICAgICAgIG92ZXJ0aW1lSHJzID0gMDsKICAgICAgICBvdmVydGltZVBheSA9IDA7CiAgICAgICAgbm9ybWFsUGF5ID0gMDsKCiAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBvdmVydGltZSBob3Vycywgbm9ybWFsIHBheSwgYW5kIG92ZXJ0aW1lIHBheQogICAgICAgIGlmIChob3VycyA+IFNURF9IT1VSUykgCiAgICAgICAgewogICAgICAgICAgICBvdmVydGltZUhycyA9IGhvdXJzIC0gU1REX0hPVVJTOwogICAgICAgICAgICBub3JtYWxQYXkgPSBTVERfSE9VUlMgKiB3YWdlUmF0ZTsKICAgICAgICAgICAgb3ZlcnRpbWVQYXkgPSBvdmVydGltZUhycyAqIHdhZ2VSYXRlICogT1RfUkFURTsKICAgICAgICB9IAogICAgICAgIGVsc2UgCiAgICAgICAgewogICAgICAgICAgICBub3JtYWxQYXkgPSBob3VycyAqIHdhZ2VSYXRlOwogICAgICAgICAgICBvdmVydGltZVBheSA9IDA7CiAgICAgICAgICAgIG92ZXJ0aW1lSHJzID0gMDsKICAgICAgICB9CgogICAgICAgIC8vIENhbGN1bGF0ZSBncm9zcyBwYXkKICAgICAgICBncm9zc1BheSA9IG5vcm1hbFBheSArIG92ZXJ0aW1lUGF5OwoKICAgICAgICAvLyBQcmludCBvdXQgaW5mb3JtYXRpb24gb24gdGhlIGN1cnJlbnQgZW1wbG95ZWUKICAgICAgICBwcmludGYoIlxuXG5DbG9jayMgV2FnZSAgSG91cnMgIE9UICAgICAgR3Jvc3NcbiIpOwogICAgICAgIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKICAgICAgICBwcmludGYoIiUwNmQgJTUuMmYgJTUuMWYgJTUuMWYgJTguMmZcbiIsIAogICAgICAgICAgICAgICAgY2xvY2tOdW1iZXIsIHdhZ2VSYXRlLCBob3Vycywgb3ZlcnRpbWVIcnMsIGdyb3NzUGF5KTsKICAgIH0KICAgIAogICAgcmV0dXJuIDA7Cn0KCg==
stdin
ICA5ODQwMSAgMTAuNjAgICA1MS4wICAgCiAgICA1MjY0ODggICA5Ljc1ICAgNDIuNSAgIAogICAgNzY1MzQ5ICAxMC41MCAgIDM3LjAgICAKICAgICAzNDY0NSAgMTIuMjUgICA0NS4wICAgCiAgICAxMjc2MTUgICA4LjM1ICAgIDAuMCAg
98401 10.60 51.0
526488 9.75 42.5
765349 10.50 37.0
34645 12.25 45.0
127615 8.35 0.0