1、成比例的三位數(shù)
【問題描述】
將1,2...9共9個數(shù)分成三組,分別組成三個三位數(shù),且使這三個三位數(shù)構(gòu)成1:2:3的比例,試求出所有滿足條件的三個三位數(shù).
例如:三個三位數(shù)192,384,576滿足以上條件.
FOR x = 123 TO 321 ’窮舉所有可能的解
y = 2 * x
z = 3 * x
GOSUB 1000 ’分解數(shù)字
GOSUB 2000 ’判斷數(shù)字是否為1-9的互不重復(fù)的數(shù)
IF flag = 0 THEN PRINT x, y, z
NEXT x
END
1000 :
a(1) = x \ 100: a(2) = (x - a(1) * 100) \ 10: a(3) = x MOD 10
a(4) = y \ 100: a(5) = (y - a(4) * 100) \ 10: a(6) = y MOD 10
a(7) = z \ 100: a(8) = (z - a(7) * 100) \ 10: a(9) = z MOD 10
RETURN
2000 :
flag = 0
FOR i = 1 TO 9: b(i) = 0: NEXT i
FOR i = 1 TO 9
b(a(i)) = b(a(i)) + 1
NEXT i
FOR i = 1 TO 9
IF b(i) <> 1 THEN flag = 1
NEXT i
RETURN
2、 一元三次方程求解
【問題描述】
有形如:ax3+bx2+cx+d=0 這樣的一個一元三次方程。給出該方程中各項的系數(shù)(a,b,c,d 均為實(shí)數(shù)),并約定該方程存在三個不同實(shí)根(根的范圍在-100至100之間),且根與根之差的絕對值>=1。
要求由小到大依次在同一行輸出這三個實(shí)根(根與根之間留有空格),并精確到小數(shù)點(diǎn)后2位。
提示:記方程f(x)=0,若存在2個數(shù)x1和x2,且x1 樣例
輸入:1 -5 -4 20
輸出:-2.00 2.00 5.00
INPUT a, b, c, d
FOR i = -10000 TO 10000
x = i / 100
x1 = x - .005
x2 = x + .005
f1 = ((a * x1 + b) * x1 + c) * x1 + d
f2 = ((a * x2 + b) * x2 + c) * x2 + d
IF f1 = 0 OR f1 * f2 < 0 THEN PRINT x
NEXT i
END
3、分魚問題
【問題描述】
A 、 B 、 C 、 D 、 E 五人夜間合伙捕魚,凌晨時都疲倦不堪,各自在河邊的樹叢中找地方睡著了。日上三竿, A 第一個醒來,他將魚分作五份,把多余的一條扔回河中,拿自己的一份回家去了; B 第二個醒來,也將魚分作五份,扔掉多余的一條,拿走自己的一份;接著 C 、 D 、 E 依次醒來,也都按同樣的辦法分魚,問五人至少合伙捕了多少條魚?試編程序算出。
yu = 6
yu1 = yu
s = 0
DO
IF (yu1 - 1) MOD 5 = 0 THEN
s = s + 1
yu1 = (yu1 - 1) / 5 * 4
ELSE
yu = yu + 5
yu1 = yu
s = 0
END IF
LOOP UNTIL s = 5
PRINT yu
End
【問題描述】
將1,2...9共9個數(shù)分成三組,分別組成三個三位數(shù),且使這三個三位數(shù)構(gòu)成1:2:3的比例,試求出所有滿足條件的三個三位數(shù).
例如:三個三位數(shù)192,384,576滿足以上條件.
FOR x = 123 TO 321 ’窮舉所有可能的解
y = 2 * x
z = 3 * x
GOSUB 1000 ’分解數(shù)字
GOSUB 2000 ’判斷數(shù)字是否為1-9的互不重復(fù)的數(shù)
IF flag = 0 THEN PRINT x, y, z
NEXT x
END
1000 :
a(1) = x \ 100: a(2) = (x - a(1) * 100) \ 10: a(3) = x MOD 10
a(4) = y \ 100: a(5) = (y - a(4) * 100) \ 10: a(6) = y MOD 10
a(7) = z \ 100: a(8) = (z - a(7) * 100) \ 10: a(9) = z MOD 10
RETURN
2000 :
flag = 0
FOR i = 1 TO 9: b(i) = 0: NEXT i
FOR i = 1 TO 9
b(a(i)) = b(a(i)) + 1
NEXT i
FOR i = 1 TO 9
IF b(i) <> 1 THEN flag = 1
NEXT i
RETURN
2、 一元三次方程求解
【問題描述】
有形如:ax3+bx2+cx+d=0 這樣的一個一元三次方程。給出該方程中各項的系數(shù)(a,b,c,d 均為實(shí)數(shù)),并約定該方程存在三個不同實(shí)根(根的范圍在-100至100之間),且根與根之差的絕對值>=1。
要求由小到大依次在同一行輸出這三個實(shí)根(根與根之間留有空格),并精確到小數(shù)點(diǎn)后2位。
提示:記方程f(x)=0,若存在2個數(shù)x1和x2,且x1
輸入:1 -5 -4 20
輸出:-2.00 2.00 5.00
INPUT a, b, c, d
FOR i = -10000 TO 10000
x = i / 100
x1 = x - .005
x2 = x + .005
f1 = ((a * x1 + b) * x1 + c) * x1 + d
f2 = ((a * x2 + b) * x2 + c) * x2 + d
IF f1 = 0 OR f1 * f2 < 0 THEN PRINT x
NEXT i
END
3、分魚問題
【問題描述】
A 、 B 、 C 、 D 、 E 五人夜間合伙捕魚,凌晨時都疲倦不堪,各自在河邊的樹叢中找地方睡著了。日上三竿, A 第一個醒來,他將魚分作五份,把多余的一條扔回河中,拿自己的一份回家去了; B 第二個醒來,也將魚分作五份,扔掉多余的一條,拿走自己的一份;接著 C 、 D 、 E 依次醒來,也都按同樣的辦法分魚,問五人至少合伙捕了多少條魚?試編程序算出。
yu = 6
yu1 = yu
s = 0
DO
IF (yu1 - 1) MOD 5 = 0 THEN
s = s + 1
yu1 = (yu1 - 1) / 5 * 4
ELSE
yu = yu + 5
yu1 = yu
s = 0
END IF
LOOP UNTIL s = 5
PRINT yu
End