При решении тренировочного задания столкнулся с ошибкой Presentation error.
Тестирующая система не может проверить выходные данные, так как их формат не соответствует описанному в условиях задачи
Хотя, на локальной машине никаких проблем с выводом не возникает.
Само задание:
Даны два числа A и B. Вам нужно вычислить их сумму A+B. В этой задаче для работы с входными и выходными данными вы можете использовать и файлы и потоки на ваше усмотрение.
Ввод: стандартный ввод или input.txt
Вывод: стандартный вывод или output.txt
package main
import (
"fmt"
"io"
"os"
"strconv"
"strings"
)
func main() {
input, err := os.Open("input.txt")
if err != nil {
fmt.Println(err)
return
}
defer input.Close()
file, err := os.Create("output.txt")
if err != nil {
fmt.Println(err)
return
}
defer file.Close()
output, err := os.OpenFile("output.txt", os.O_APPEND|os.O_WRONLY, 0777)
if err != nil {
fmt.Println(err)
return
}
defer output.Close()
data := make([]byte, 64)
for {
n, err := input.Read(data)
if err == io.EOF {
break
}
arr := strings.Split(string(data[:n]), " ")
a, err := strconv.Atoi(arr[0])
if err != nil {
fmt.Println(err)
return
}
b, err := strconv.Atoi(arr[1])
if err != nil {
fmt.Println(err)
return
}
if _, err = output.WriteString(strconv.Itoa(a + b)); err != nil {
fmt.Println(err)
return
}
_, err = os.Open("output.txt")
if err != nil {
fmt.Println(err)
return
}
}
}