用vb语言编写1^2+2^2+3^2+4^2+5^2+...+n^2>2000,n至少为多少时,不等式成立,并输出n等于多少? 用简单的v

2024-12-30 09:23:29
推荐回答(4个)
回答1:

1^2+2^2+3^2+4^2+……+n^2>1000
这句不可以直接出现的,不符合VB语法,但在上面的代码里,这行代码前面加有单引号“'”,表示后面的为注释(在VB6.0里,注释的文字颜色默认为绿色,注释是不被执行的)。

Do While sum < 1000#
这是小于没错的,sum是变量,这个变量在前面已经声明了(“Dim sum, i”这句是声明 sum 和 i 这两个变量的代码),可以直接使用。

“Do While sum < 1000#”我觉得这句写成“Do While sum <= 1000”更好。后面不需要写“#”,“<”应该改为 小于等于号“<=”(小于或者等于),但在这里不可能等于 1000的,所以也可以不用“=”号。

帮你改下代码:
Private Sub Command1_Click()
'要求:1^2+2^2+3^2+4^2+5^2+...+n^2>2000
Dim sum, i As Long
sum = 0: i = 0
Do While sum <= 2000
i = i + 1
Debug.Print i
sum = sum + i * i
Loop
MsgBox "最小项数:" & i
End Sub

好了,我就回答到这了,我是Laser,如果答案满意,就采纳我吧!

回答2:

Private Sub Command1_Click()
'1^2+2^2+3^2+4^2+……+n^2>2000 '这行是注释,以单引号开头就是注释。
Dim sum, i
sum = 0: i = 0
Do While sum < 2000 '是小于,意思是小于2000的时候,循环继续,直到sum大于2000的时候跳出循环。
i = i + 1
sum = sum + i * i
Loop
MsgBox "最小项数:" & i
End Sub

输出结果:18

回答3:

Dim i, sum As Integer
i = 0 : sum = 0
Do Until sum > 2000
sum = sum + i ^ 2
i = i + 1
Loop
MsgBox "最小项数" & i

回答4:

Private Sub Command1_Click()
'1^2+2^2+3^2+4^2+……+n^2>1000 //这句是VB中的注释行~
Dim sum, i
sum = 0: i = 0
Do While sum < 1000# //看题设值……貌似是sum<=2000;上面第3行已经声明Sum变量。
i = i + 1
sum = sum + i * i
Loop
MsgBox "最小项数:" & i
End Sub

另外VB不支持上面那样“//”的注释格式。LZ如果是从其它语言转过来的可能要深感VB的不便……