如果我们有M
如下:
M = 1+2+3+5+6+7+9+10+11+13+...+n
查找QBasic
的{{1}}程序是什么。
到目前为止,我已完成以下操作,但未向我返回预期值
M
我应该怎么做?
感谢。
答案 0 :(得分:2)
您混合了相等运算符。试试这个:
INPUT "ENTER A VALUE FOR N"
SUM = 0
FOR I = 1 TO N
IF I MOD 4 <> 0
SUM = SUM + I
NEXT I
答案 1 :(得分:2)
无需编写程序,或至少不需要使用循环。
前n个自然数的和:
sum_1 = n * (n + 1) / 2
4的倍数之和< N:
sum_2 = 4 * (n / 4) * (n / 4 + 1) / 2 = 2 * (n / 4) * (n / 4 + 1)
结果为sum_1 - sum_2
:
sum = sum_1 - sum_2 = n * (n + 1) / 2 - 2 * (n / 4) * (n / 4 + 1)
注意:/
=整数除法
答案 2 :(得分:0)
此剪辑计算整数的总和,以跳过可被4整除的值。
PRINT "Enter upper value";
INPUT n
' calculate sum of all values
FOR l = 1 TO n
x = x + l
NEXT
' remove values divisible by 4
FOR l = 0 TO n STEP 4
x = x - l
NEXT
PRINT "Solution is:"; x