QB中算法举例

来自:虎仔编程网 作者:
例1:鸡兔同笼,已知鸡兔总头数为h,总脚数为f,求鸡兔各有多少只?
CLS
h=16
f=18
x=(4*h-f)/2
y=(f-2*h)/2
PRINT "共有鸡:";x;"只"
PRINT "共有兔:";y;"只"
END

例2:铁路托运行李,从A地到B地,按规定每张客票托运行李不超过50公斤时,
每公斤0.25元。如超过50公斤,超过部分按每公斤0.45元计算。编写一个程序,
把行李重量输入计算机,计算机算出运费,并打印出付费清单。
CLS
INPUT "请输入行李重量:",w
IF w<=50 THEN x=0.25*w
ELSE x=50*0.25+(w-50)*0.45
END IF
PRINT "应付运费为:";x;"元"
END

例3:任给一个自然数,试求其反序数,即原数从高位致到低位,把各数字改为
反序的从低位到高位各数字构成的数。例如:19578的反序数为87591。
CLS
INPUT "输入一个自然数:",x
s=0
xh=1
WHILE xh=1
m=x MOD 10
x=INT(x/10)
s=s*10+m
IF x=0 THEN xh=0
WEND
PRINT "其反序数为:";s
END

例4:有一阶梯,若每步跨2阶,最后剩下1阶;若每步跨3阶,则最后剩下2阶;
若每步跨5阶,则最后剩下4阶;若每步跨6阶,最后剩下5阶;只有每步跨7阶
时,最后才正好走完,1阶不剩。请问这条阶梯有多少阶?
CLS
x=7
WHILE x MOD 2<>1 OR x MOD 3<>2 OR x MOD 6<>5
x=x+7
WEND
PRINT "x=";x
END

例5:键盘输入三个不同的数,将它们从大到小排序。
INPUT "a=";a
INPUT "b=";b
INPUT "c=";c
IF a>b AND a>c THEN
IF c>b THEN SWAP b,c
END IF
IF b>a AND b>c THEN
IF a>c THEN
SWAP a,b
ELSE
SWAP b,c
END IF
END IF
IF c>a AND c>b THEN
IF b>a THEN
SWAP a,c
ELSE
SWAP a,b
SWAP a,c
END IF
END IF
PRINT a,b,c
END