Мы хотим вычислить сумму квадратов некоторых целых чисел, исключая отрицательные значения. В первой строке входных данных будет целое число N (1 <= N <= 100). Каждый из следующих N тестовых примеров состоит из одной строки, содержащейцелое число X (0 <X <= 100), за которым следуют целые числа X (Yn, -100 <= Yn <= 100), разделенные пробелом в следующей строке. Для каждого теста выведите сумму квадратов целых чисел, исключая отрицательные числа,и распечатать рассчитанную сумму на выходе.Нет пустой строки между контрольными примерами (взять ввод из стандартного ввода и вывод в стандартный вывод). Не использовать оператор for. Использовать только стандартные библиотеки. Напишите его на языке программирования Go </p>
Пример ввода
2
4
3 -1 1 14
5
9 6 -53 32 16
Пример вывода
206
1397
Итак, я новичок в Голанге, и мне удалось решить эту проблему с помощью операторов.Как я могу соблюдать данное и не использовать для?используя только стандартные библиотеки?Будем очень благодарны за любые указатели
package main
import "fmt"
func main() {
var N int
fmt.Scan(&N)
for a := 0; a < N; a++ {
var X int
var res int = 0
fmt.Scan(&X)
for b := 0; b < X; b++ {
var Y int
fmt.Scan(&Y)
if Y > 0 {
res = res + Y*Y
}
}
fmt.Println(res)
}
}
// Я использовал fmt для чтения данных с консоли.Сумма квадратов выясняется только при положительном числе.Затем вычисленная сумма отображается на экране
Я получил тот же ожидаемый результат, но не используя требуемый метод
Вот как я это сделал в Java
import java.util.Scanner;
public class SumSquares {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt(), m, num;
int i = 0;
while (i < n) {
int j = 0, sum = 0;
m = in.nextInt();
while (j < m) {
num = in.nextInt();
if (num > 0) {
sum += num*num;
}
j++;
}
System.out.println(sum);
i++;
}
}
}