//*******************************************************
//
// Assignment 3 - Conditionals
//
// Name: <Tasos Paloukos>
//
// Class: C Programming, <Fall 2024>
//
// Date: <September 26,2024>
//
// 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 OVERTIME_RATE 1.5
// TODO: Declare and use at least one more constant
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; // Overtime hours worked beyond a normal week (40 hours)
float overtimePay; // Any hours worked past the normal scheduled work week
float wageRate; // Hourly wage for an employee
printf ("\n*** Pay Calculator ***");
// Process each employee
for (int i = 0; i < NUM_EMPLOYEES; i++) {
// Prompt the user for the clock number
printf("\n\nEnter clock number: "); scanf("%d", &clockNumber
);
// Prompt the user for the wage rate
printf("\nEnter wage rate: ");
// Prompt the user for the number of hours worked
printf("\nEnter number of hours worked: ");
// Optional TODO: Remove these initialization statements if desired
// initialize so initial template prints these both as zero
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 = wageRate * STD_HOURS;
overtimePay = (OVERTIME_RATE * wageRate) * overtimeHrs;
// TODO: calculate the three values with overtime
} else {
normalPay = wageRate * hours;
// TODO: calculate the three values without overtime
}
// 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\nClock# 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;
}