新手问题一个编程练习 我弄了很久都没有搞掂
老师搞了两个个编程的练习给我们,规定用switch来写,可是老师根本没有教过啊,我写了很多次都没有搞掂啊 求各位大牛 动动手 帮忙写一下 因为我实在搞不掂了 很简单的 你们用脚趾头想一下就会了。。。5555555
下面是题目:题目一 某工厂对工人的超产奖励政策为:该厂生产两种产品A和B。凡工人每月的实际生产量超过计划指标者均有奖励。奖励政策为:
对于产品A的生产者,超产数N小于或等于100件时,都按超产100件算每件奖励2元;N大于100件小于等于150件时,大于100件的部分每件奖励2.5元,其余的每件奖励金额不变;N大于150件时,超过150件的部分每件奖励3元,其余按超产150件以内的方案处理。
对于产品B的生产者,超产数N小于或等于50件时,都按超产50件算,每件奖励3元;N大于50件小于等于100件时,大于50件的部分每件奖励4元,其余的每件奖励金额不变;N大于100件时,超过100件的部分每件奖励5元,其余按超产100件以内的方案处理。 上述处理功能用判定树描述,如下图所示:
老师说用switch写 不能单纯用if
题目二:1、某景点根据旅游淡季、旺季及是否团体订票来确 定门票的折扣率,具体规定如下:
人数在20人以上的属团体,20人以下的属散客; 每年的4-5月、7-8月10月为旅游旺季,其余为旅 游淡季; 旅游旺季,团体票优惠5%,散客不优惠;
旅游淡季,团体票优惠30%,散客优惠20%。 请用判定树描述该景点的优惠政策。
2、下面是货运收费策略:铁路运费时,若收货地点在本省以内,快件每公斤1.5元,慢件每公斤1元。若收货地点在外省,重量小于或等于20公斤,快件每公斤2元,慢件每公斤1元,若重量大于20公斤,超重部分每公斤0.2元。请用判定树描述该策略。
老师没具体说判定树怎么写 请大家写下判定树还有代码 谢谢谢谢
[解决办法]
switch((n-1)/50)
[解决办法]
double fun(int A,int N)
{
if(A=='A')
switch((N-1)/50)
{
case 1:
case 2: return 2*100;
case 3: return 200+2.5*(N-100);
default:return 400+3*(N-150);
}
else if(A=='B')
switch((N-1)/50)
{
case 1:return 3*50;
case 2:return 150+4*(N-50);
default:return 350+5*(N-100);
}
}
每天回帖即可获得10分可用分!