1
0
mirror of https://github.com/MADTeacher/go_basics.git synced 2025-11-23 21:34:47 +02:00
Files
go_basics/part_1/1.14/7.go
2025-05-28 14:52:05 +03:00

47 lines
1.2 KiB
Go

package main
import (
"bufio"
"fmt"
"os"
"strconv"
"strings"
)
func main() {
scanner := bufio.NewScanner(os.Stdin)
fmt.Println("Введите целые числа, разделенные пробелами:")
// Считываем одну строку ввода
scanner.Scan()
input := scanner.Text()
// Разбиваем строку на срез строк,
// используя в качестве разделителя символ пробела
fields := strings.Fields(input)
var mySlice []int
// Преобразуем каждое элемент среза fields в целое число
for _, field := range fields {
n, err := strconv.Atoi(field)
if err != nil {
fmt.Println("Ошибка преобразования:", field)
return
}
mySlice = append(mySlice, n)
}
// Удаляем дубликаты
var result []int
seen := make(map[int]bool)
for _, num := range mySlice { // Перебираем элементы среза
if !seen[num] { // Если элемент еще не встречался
seen[num] = true
// Добавляем элемент в результирующий срез
result = append(result, num)
}
}
fmt.Println("Срез без дубликатов:", result)
}