Архив рубрики: Go

Язык Go. Сумма последовательных чисел

Задача состоит в том, чтобы найти в массиве целых чисел последовательность последовательных чисел, сумма которых равна n. Наша программа будет считывать список целых чисел (например, 5 2 3 4 6 1 4 10 1), за которым следует одно целое число … Читать далее

Рубрика: Go | Оставить комментарий

Язык Go. Упражнение на карты

На основе списка походов в данж найти топ игрока в гильдии 🙂 Пример ввода:

Рубрика: Go | Оставить комментарий

Язык Go. Упражнения на срезы

Разберем несколько примеров программ на Го по срезам (slice). Начнем.. Пользователь вводит два ряда чисел. Наша задача собрать их в одном срезе, удалив дубликаты. В качестве упражнения, будем использовать не карты, а обычные срезы. Код:

Рубрика: Go | Оставить комментарий

Язык Go. Сортировка выбором

Сортировка выбором (Selection sort) — простой алгоритм сортировки, который многократно выбирает минимальный элемент из неотсортированной части списка и меняет его местами с первым неотсортированным элементом. Пример кода на Го:

Рубрика: Go | Оставить комментарий

Язык Go. Сортировка пузырьком

О… как много в этом «чпоке»!.. Сортировать «пузырьком» нас учили еще в школе. Почему бы не замутить код этой сортировки на Го? 😀 И пусть она редко оказывается полезной — это весьма годное упражнение для начинающих. Наша программа будет принимать … Читать далее

Рубрика: Go | Оставить комментарий

Язык Go. Алгоритм Фишера-Йетса

Пользователь вводит через пробел несколько любых чисел, букв, слов или чего угодно. Ну допустим даже он вводит номиналы карт (раздача в покере), типа A 3 J Q 10. Наша задача эти карты перемешать. Для этого оч клёво (и просто) использовать … Читать далее

Рубрика: Go | Оставить комментарий

Язык Go. Консольный калькулятор

Напишем простенький консольный калькулятор, производящий базовые арифметические операции. Сначала мы задаем ему числа, с которыми мы хотим проводить операции при помощи команды add <число> (можно задать несколько чисел). Затем мы можем использовать команды inc, acc, sub, mul, div, mod; чтобы … Читать далее

Рубрика: Go | Оставить комментарий

Язык Go. Интерфейсы

Самая зубодробительная для новичков в golang — это интерфейсы. Приведу тут примеры кода, который я разбирал, чтобы их выкурить, надеюсь и вам поможет. Идея такая — смотрим код; потом закрываем его и по памяти пытаемся написать с нуля по данному … Читать далее

Рубрика: Go | 5 комментариев

Язык Go. Замыкания и Числа Фибоначчи

Задание номер 26 в Туре Го. Реализуйте функцию Фибоначчи, которая возвращает функцию (замыкание), возвращающую последовательные числа Фибоначчи (0, 1, 1, 2, 3, 5, …). Решение:

Рубрика: Go | 2 комментария

Язык Go. Карты (тип maps)

Итак, вот и упражнение 23 из Тура Го. Реализуйте функцию WordCount. Она должна возвращать карту (тип данных map) подсчетов каждого «слова» в строке s. Функция wc.Test запускает набор тестов против предоставленной функции и выводит успех или неудачу. Для выполнения задания … Читать далее

Рубрика: Go | Оставить комментарий

Язык Go. Двумерные срезы (2D)

Из главы номер 18 тура в Го.. Вообще, задания в этом туре весьма зудодробительные B) Итак… Реализуйте функцию Pic. Она должна вернуть фрагмент длины dy, каждый элемент которого представляет собой фрагмент dx 8-битных беззнаковых целых чисел. Когда вы запустите программу, … Читать далее

Рубрика: Go | Оставить комментарий

Язык Го. Принадлежит ли точка кругу

Прошлый пример по теореме Пифагора весьма простой. Возьмем задачку из этой же темы, но посложнее. Допустим у нас есть окружность в центре оси x и y (т.е. центр по координатам 0,0). Напишем проверку нахождения произвольной точки внутри окружности. Тут нам … Читать далее

Рубрика: Go | Оставить комментарий

Язык Go. Теорема Пифагора

Продолжаем упражняться в Го и попутно вспоминать школьную программу 🙂 «Пифагоровы штаны на все стороны равны!» Ну или перефразируя в более скучном варианте: квадрат длины гипотенузы прямоугольного треугольника равен сумме квадратов катетов: c^2 = a^2 + b^2 Наша титаническая задача … Читать далее

Рубрика: Go | Оставить комментарий

Язык Go. Перевод символьной строки в числовой срез

Напишем простую программу на Го, которая будет брать строку,  разбивать ее на элементы среза, конвертируя каждый элемент в цифру. Для начала весь код, а ниже я его подробно разберу:

Рубрика: Go | Оставить комментарий

Язык Go. Число в слова

Напишем программу, которая печатает числа в виде текста. Ограничимся диапазоном от 1 до 1000. Вот первый пример кода, кучерявый:

Рубрика: Go | Оставить комментарий

Язык Go. Алгоритм Ньютона

Задание нумер 8 в Го Туре… Циклы и функции Чтобы поиграть с функциями и циклами, давайте реализуем функцию квадратного корня: задав число x, мы хотим найти число z, для которого z² наиболее близок к x. Компьютеры обычно вычисляют квадратный корень … Читать далее

Рубрика: Go | Оставить комментарий

Язык Go. Среднее из введенных в строку чисел

Давайте напишем программу, которая считывает N чисел через пробел (в одной строке) и вычисляет их среднее значение. Задачка вроде простая, но решить ее можно по-разному. Вот мой вариант:

Рубрика: Go | Оставить комментарий