计算加类费我的公式正确吗?

标签 c algorithm

员工每周工作最多 40 小时,工资为每小时 9.73 美元。超过该时间的任何小时均按该时间的 1 又 1/2 倍的加类费率支付。

我对这句话的算法是“任何超过该时间的工作时间均按 1.5 倍的加类费率支付。”是让我困惑的一个。

这是代码:

double hours, overtimepay, overtimehours, wage;
printf("Enter number of hours: ")
scanf("%f",&hours);

wage=9.73*hours;
overtimehours=hours-40;
overtimepay=(9.73*overtimehours)*1.5);

if(hours>40){
printf("Your wage is: %f",wage);
printf("Your overtime pay is: %f",overtimepay);
}

else{
printf("Your wage is: %f",wage);
}

我对如何计算加类费或加类费率感到困惑。 1 和 1/2 等于 1.5(如果我没记错的话)。这是我的公式:

overtimepay=(9.73*overtimehours)*1.5);

因为我的加类时间是从 40 小时中减去小时数,例如,如果我输入 43 小时,则 43-40=3,所以加类时间为 3 小时。这三个小时将乘以 9.73 和 1.5。将9.73、加类时间和1.5相乘正确吗?或者只是加类和1.5?

最佳答案

你的计算没问题(毕竟没那么复杂!),我只是建议更改你的条件语句以减少你的代码:

double hours, overtimepay, wage;
printf("Enter number of hours: ")
scanf("%f",&hours);

wage=9.73*hours;
wage = 9.73 * hours;

printf("Your wage is: %f\n",wage);

if(hours > 40)
{
   overtimepay = (9.73*(hours-40))*1.5;
   printf("Your overtime pay is: %f\n", overtimepay);
}

关于计算加类费我的公式正确吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24405199/

相关文章:

performance - 时间复杂度 - 计算算法的最坏情况

c - 复合文字是否会删除任何先前的字段?

我可以在文件中使用 SCANF 然后使流返回一个位置吗?

C 在不使用 #include 的情况下告诉头文件有关 c 文件中的结构的信息

c - 虚拟内存系统

java - 将 1 到 N 中所有设置位数为 2 的数字相加

c - 确保函数参数的静态存储

algorithm - 在 F# 中编写重复文件查找器的技巧

algorithm - 多米诺树中的节点

algorithm - PDF 阅读器 - 查找单词的算法