package main import ( "bufio" "fmt" "os" ) //Ищет наименьшее число из файла /var/data/data.txt и сохраняет его третью степень в /var/result/result.txt. const INPUT = "/var/data/data.txt" const OUTPUT = "/var/result/result.txt" func ReadlinesFromFile(filename string) ([]string, error) { file, err := os.Open(filename) if err != nil { return nil, err } var output []string scanner := bufio.NewScanner(file) for scanner.Scan() { output = append(output, scanner.Text()) } err = file.Close() if err != nil { return nil, err } return output, nil } func WriteIntToFile(filename string, i int) error { file, err := os.Create(filename) if err != nil { return err } defer func(file *os.File) { err := file.Close() if err != nil { } }(file) _, err = file.WriteString(fmt.Sprintf("%d\n", i)) if err != nil { return err } return nil } func main() { lines, err := ReadlinesFromFile(INPUT) if err != nil { fmt.Println(err) } minValue := 0 for _, line := range lines { if intValue, err := fmt.Sscanf(line, "%d", &minValue); err != nil { fmt.Println(err) } else { if minValue >= intValue { minValue = intValue } } } if err = WriteIntToFile(OUTPUT, minValue); err != nil { return } else { fmt.Printf("Write %d to %s\n", minValue, OUTPUT) } fmt.Println("Second Service is end.") }