gpt4 book ai didi

for-loop - 如何在 gwbasic 中编写将 1 到 100 的自然数相加的程序?

转载 作者:行者123 更新时间:2023-12-04 12:42:19 24 4
gpt4 key购买 nike

我正在尝试编写一个将自然数从 1 加到 n (1 + 2 + 3 + ... + n) 的程序。但是,当我使用 if 语句时,总和显示为 1。当我使用 for-next 语句时,会出现我不理解的语法错误。

如果:

30 let s = 0
40 let i = 1
50 s = s + i
60 i = i + 1
70 if i<=n, then goto 50
80 print s

for-next:

30 let i, s
40 s = 0
50 for i = 1 to n
60 s = s + i
70 next i
80 print n
  1. 当我取 n = 10 时,if 语句代码给出的结果是 1,但应该是 55。
  2. 当我尝试使用 for-next 语句时,它没有给出任何结果,说明 30 中存在语法错误。

为什么会这样?

最佳答案

以下代码在此online Basic interpreter 中有效.

10 let n = 100
30 let s = 0
40 let i = 1
50 s = s + i
60 i = i + 1
70 if i <= n then goto 50 endif
80 print s

我在标记为 10 的行上初始化了 n,在标记为 70 的行上删除了逗号,并在同一行添加了一个 endif

这是 for-next 版本:

30 let n = 100
40 let s = 0
50 for i = 1 to n
60 s = s + i
70 next i
80 print s

(顺便说一句,前n个自然数之和为n(n+1)/2:

10 let n = 100
20 let s = n * (n + 1) / 2
30 print s

)

关于for-loop - 如何在 gwbasic 中编写将 1 到 100 的自然数相加的程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57176936/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com