计算给定整数的平方和,不包括任何负数。输入的第一行将是整数N(1 <= N <= 100),表示要遵循的测试用例数。每个测试用例将由具有整数X(0 注意:在收到所有输入之前,应该没有输出。注意2:请勿在测试用例解决方案之间插入空白行。注3:从标准输入中获取输入,然后输出到标准输出。 规则使用Go编程语言编写解决方案您的源代码必须是一个文件(包主文件)不要使用任何for语句您只能使用标准库软件包 “我面临的问题”根据输入的测试用例,下面的“平方”功能未按要求的次数执行。为了满足特定要求,我不允许使用“ for”语句。请帮帮我。语言就是去。 package main
import "fmt"
var s []int
func square(l int) {
i := 0
sum := 0
Square:
if l > 0 {
s[i] = s[i] * s[i]
sum = sum + s[i]
i++
l--
goto Square
}
fmt.Println(sum)
}
func myfunc(a int) {
Here:
if a > 0 {
var b int
fmt.Scanln(&b)
if b > 0 {
s = append(s, b)
}
a--
goto Here
}
}
func main() {
var a int
fmt.Scanln(&a)
TestCases:
if a > 0 {
var T int
fmt.Scanln(&T)
myfunc(T)
a--
goto TestCases
}
square(len(s))
}
package main
import "fmt"
func testCase(N int) {
if N <= 0 {
return
}
var X int
fmt.Scanf("%d", &X)
fmt.Println(sumOfSquare(X))
testCase(N-1)
}
func sumOfSquare(X int) int {
if X == 0 {
return 0
}
var Y int
fmt.Scanf("%d", &Y)
if Y > 0 {
return Y*Y + sumOfSquare(X-1)
}
return sumOfSquare(X-1)
}
func main() {
var N int
fmt.Scanf("%d", &N)
testCase(N)
}
这是示例输出:
$ go run main.go
2 4 3 -1 1 14 5 9 6 -53 32 16
206
1397