设计一个有过程的程序,主程序的功能是:允许输入一个单位每个人的收入,然后到过程中去按照纳税规则计算应纳的税;在主程序中把税款累加起来:输入数值0,程序结束,且输出该单位应代缴纳的个人税款。纳税规则是分段计税,即工资少于或等于800元免税,高于800少于2000部分按照5%计税;高于2000少于等于3500部分按10%计税;高于3500少于等于5000按15%计税;高于5000部分按20%计税。
我设计的是
CLEAR
sds=0
tsds=0
do while .t.
input"输入每人工资:" to gz
do proc1 with gz
IF gz=0
EXIT
ENDIF
tsds=sds+tsds
ENDDO
RETURN
?"单位应交纳个人所得税=",tsds
PROCEDURE proc1
PARAMETERS gz,sds
do case
CASE gz<=800
sds=0
CASE gz<=2000
sds=(g-800)*0.05
CASE gz<=3500
sds=(gz-2000)*0.1+1200*0.05
CASE gz<=5000
sds=(gz-3500)*0.15+1500*0.1+1200*0.05
OTHERWISE
sd=(gz-5000)*0.2+1500*0.15+1500*0.1+1200*0.05
ENDCASE
ENDPROC
运行不了,最后不出来所得税的和。。郁闷了
不用模块设计没有问题
一用模块就不对 哪里问题呢?
请指教 谢谢
模块化程序设计问题