Си шарп с нуля

Формула программиста
основатель — Волосатов Евгений Витольдович
1-2-3 мая - Создай online игру!
Вебинар «Карточки памяти на Android» начнётся через 11 час. 30 мин.

Geffest

Видеокурсы

Дата активности Видеокурс Прогресс
2015-02-28 game1 Наноигры 4 из 10 40 %
2015-02-18 game2 Микроигры 7 из 15 47 %
2015-02-15 words Игры со словами 2 из 7 29 %
2015-02-14 game0 Демо игры 7 из 10 70 %
2015-01-29 soft1 Нанософт 3 из 10 30 %
2015-01-22 soft0 Демо софт 4 из 7 58 %
2015-01-21 soft2 Новые технологии 1 из 15 7 %
Итого: 28 из 74 38 %

Консольные задачи

Дата активности Консольный раздел Прогресс
2016-01-07 task1g Целые задачи 10 из 11 91 %
2015-02-25 task1c Лирика 13 из 14 93 %
2015-01-31 olimp Олимпиада 2 из 40 5 %
2015-01-21 task2k Последовательность 5 из 6 84 %
2015-01-13 task1a Целые числа все 7 100 %
2015-01-06 task2i Узник цикла IF 5 из 6 84 %
2015-01-06 task2r Подпрограммы все 14 100 %
2015-01-06 task2o Матрёшки 1 из 9 12 %
2015-01-06 task2b Логика 3 из 13 24 %
2015-01-06 task2 Алгоритмика 9 из 20 45 %
2015-01-06 task2g Обман цикла 1 из 7 15 %
2015-01-05 task2s Строки 1 из 6 17 %
2015-01-05 task2e Пока-цикл 2 из 6 34 %
2015-01-05 task5 pascal_for_1_norm 4 из 9 45 %
2015-01-05 task1h Цифры 11 из 12 92 %
2015-01-05 task2c Условный оператор 9 из 16 57 %
2015-01-05 task2l Математика 1 из 9 12 %
2015-01-05 task2m Любимые циклы 1 из 6 17 %
2015-01-05 task2d For-to-чки 11 из 26 43 %
2015-01-04 z Вещественные числа все 1 100 %
2015-01-04 task1f Геометрия все 8 100 %
2015-01-04 task1d Формулы все 9 100 %
2015-01-04 task1e Символы все 5 100 %
2015-01-04 task1i Календарь 1 из 16 7 %
2015-01-03 task1b Строки все 14 100 %
2015-01-02 task1 Семантика все 6 100 %
Итого: 154 из 296 53 %
Сохранить страницу:

4780. Дмитрий
Дмитрий
ответить
→  Geffest  # Прикладные / Скорость на клавиатуре / 2015-10-11 21:18

Здорово получилось, красиво. Это на Windows Forms или все же WPF?


6696. Владимир Борисенко
Владимир Борисенко
ответить
→  Geffest  # Консоль / Лирика / Любимые цифры / 2015-08-11 00:11

Лаконичненько! Красавец :)


3642. Geffest
Geffest
ответить
→  Евгений Волосатов  # Супер игры / Змейка / 2015-02-22 08:29

Это про яблоки?)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Geffest  # Супер игры / Змейка / 2015-02-22 02:00

У тебя отличное чувство юмора ! ;)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Geffest  # Мини игры / 2048 - Интерфейс / 2015-02-15 03:15

Ой, как красиво!


3642. Geffest
Geffest
ответить
→  Евгений Волосатов  # Супер игры / Бот для виселицы / 2015-02-14 10:56

Спасибо. Стараюсь)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Geffest  # Супер игры / Бот для виселицы / 2015-02-14 10:47

Хорошее оформление, молодец!


3642. Geffest
Geffest
ответить
→  данила  # Супер игры / Бот для виселицы / 2015-02-14 09:48

https://yadi.sk/i/zbMiSZX2eg3tr отсеиваются. Отправил незаконченную программу, чтобы время не тратить зря.


3664. данила
данила
ответить
→  Geffest  # Супер игры / Бот для виселицы / 2015-02-14 08:40

Еще бы неподходящие слова  справа отсеивались


3642. Geffest
Geffest
ответить
→  Alexandr  # Прикладные / Английские карточки / 2015-02-13 15:28

И где скриншот программы?


3642. Geffest
Geffest
ответить
→  Андрей  # Консоль / Лирика / Полторы куры / 2015-02-04 13:05

В общем. Ты делишь на две третьих, а надо умножать. Твоя ошибка в этом. Две третьих - это не полтора. Скорее всего если ты в своем решении напишешь (i*i/1.5), у тебя пройдет. Если не пройдет, то дело в округлении. Тут дело в ИНТах. С ними нужно обращаться аккуратно.


3940. Андрей
Андрей
ответить
→  Geffest  # Консоль / Лирика / Полторы куры / 2015-02-04 11:24

10*(2/3) = 10/(3/2)


3642. Geffest
Geffest
ответить
→  Андрей  # Консоль / Лирика / Полторы куры / 2015-02-04 06:16

Зачем мне думать? *2/3 != *3/2 (математика)


3642. Geffest
Geffest
ответить
→  Андрей  # Консоль / Лирика / Полторы куры / 2015-02-03 12:51

Я, может и не понял. Но в отличие от других комментаторов задачу я решил сам.


3940. Андрей
Андрей
ответить
→  Geffest   / 2015-02-03 10:26

Хехе)про100 тут 5 чисел)100 -цыкл.Ето дело привычки)


3642. Geffest
Geffest
ответить
→  Елена  # Видео-игры / Лабиринт 2D - игра / 2015-02-02 12:25

Можно записывать координаты меток в файл, потом считывать их оттуда, например.


3737. Владимир
Владимир
ответить
→  Geffest  # Видео-игры / Лабиринт 2D - игра / 2015-02-01 16:12

Я не показывал свою крутость. С языками вышел недочёт - на автомате писал текст на русском, а кнопки всегда делаю на английском. Разумеется, я всегда делаю всю работу на 1 языке.


3737. Владимир
Владимир
ответить
→  Geffest   / 2015-02-01 16:09

А зачем сразу наезжать, что я показываю крутость ?
Это мой недочёт - на автомате писал на русском, а кнопки привык делать на английском.
А так я всегда делаю на 1 языке.


3642. Geffest
Geffest
ответить
→  Владимир  # Видео-игры / Лабиринт 2D - игра / 2015-02-01 16:03

Ты считаешь, это красиво: половина текста по-английски, "типа круто", а половина - заголовок и MessageBox - на русском? Уж если начинать, то надо все делать на одном языке.


3642. Geffest
Geffest
ответить
# Вебинары / Порекомендуй тему для вебинара / 2015-02-01 15:55

Я думаю такая идея будет интересна особенно начинающим участникам, потому что демонстрирует наглядно, как можно сделать реально используемую и полезную программу и при этом она будет не очень то и сложной.
Я сделал себе таймер выключения компьютера. Да подобных решений много, но они все меня чем-то не устраивали, к тому же, отличный повод попрактиковаться. Вот что у меня получилось: https://yadi.sk/i/iUjRQV0jePtre
Выбирается выключение либо через заданное время, либо в определенное время. Когда подходит время, программа предлагает отложить таймер на определенное время (все временные промежутки задаются заранее).
Что особо должно быть интересно посетителям сайта - в трее висит иконка программы, показывает, сколько времени осталось, через контекстное меню доступны дополнительные действия: остановить, отложить и т.д.
Также сделал два дополнительных класса: с настройками (считывает дефолтные настройки из файла, после чего можно к ним обратиться из основной программы) и для действий с временем (перевод секунд в строку, DateTime в секунды, вычитание двух DateTime).
Вот проект, который у меня получился: https://yadi.sk/d/osVo22QRePuER
Не претендую на идеальный код, но если бы похожая программа была реализована на вебинаре, думаю, многие бы открыли для себя что-то полезное.


1461. Алексей Кравцов
Алексей Кравцов
ответить
→  Geffest  # Видео-игры / Устный счёт / 2015-01-30 01:40

Спасибо за идею/подсказку, программу не собираюсь забрасывать, можно будет доработать


3642. Geffest
Geffest
ответить
→  Алексей Кравцов  # Видео-игры / Устный счёт / 2015-01-29 21:39

Мне кажется, удобнее и логичнее было бы отводить определенное время на каждый пример. Если пример не решен за какое-то время, игра заканчивается.


3642. Geffest
Geffest
ответить
→  Андрей  # Консоль / Целые числа / Пирамида / 2015-01-29 21:31

И что ты этим хотел доказать? У тебя в выводе пять чисел выводятся  одной строчкой, через WriteLine. Внимание вопрос: зачем тогда тут вообще нужны циклы, если ты выполняешь повторяющиеся операции вручную? Можешь посмотреть мое решение и, возможно, поймешь, о чем я говорил.


3940. Андрей
Андрей
ответить
→  Geffest  # Консоль / Целые числа / Пирамида / 2015-01-28 13:16

лол чувак.Я сделал через 2 вайла) и 100%


3642. Geffest
Geffest
ответить
# Вебинары / Отзывы по базовому вебинару / 2015-01-24 13:38

Вебинар понравился. Спасибо. Узнал новые для себя вещи.


3754. Берс
Берс
ответить
→  Geffest   / 2015-01-23 00:10

Да, старался) а то обязательно потом из за мелочей  программа не работает)


3642. Geffest
Geffest
ответить
→  Берс  # Видео-приклад / Делегаты на кубиках / 2015-01-22 18:26

Прямо по пикселям наверное подгонял элементы на форме, чтобы все один-в-один было?)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Geffest  # Видео-игры / Sokoban - Три экрана / 2015-01-21 11:17

Отлично!
Я вижу, ты прирождённый дизайнер.
Может у тебя есть идеи по оформлению нашего проекта?


3642. Geffest
Geffest
ответить
→  Берс  # Видео-приклад / Английские карточки / 2015-01-21 08:47

FileNotFound Exception ведь. Файл не найден. Проверяйте адрес изображения, который хранится в классе Dictionary. Проверяйте наличие данных по указанному адресу.


3642. Geffest
Geffest
ответить
→  Denis  # Видео-игры / Игра Цифры / 2015-01-16 12:25

Я сделал без ифов и кейсов. Использовал массив кнопок. Создается и объявляется как обычный массив объектов любого другого класса. (Единственное - кнопки нужно будет создавать без использования графического дизайнера, кодом). Там можно просто обратиться к любой кнопке по ее индексу.


3642. Geffest
Geffest
ответить
→  Евгений Волосатов   / 2015-01-16 02:14

Ну да, нравится) Я учусь на факультете информатики и вычислительной техники, потому что решил связать с этим свою жизнь.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Geffest  # Видео-игры / Кубик / 2015-01-16 01:13

Молодец, вижу, тебе нравится писать программки :)


3642. Geffest
Geffest
ответить
→  Евгений Волосатов   / 2015-01-14 03:54

Обязательно смотрю. В любом случае, открываю что-то новое, потому что я пытаюсь решить, используя свой минимальный набор знаний, как-то выкрутиться.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Geffest  # Видео-игры / Игра Цифры / 2015-01-14 01:20

Молодец!
Видишь, всё можешь сам сделать, это здорово!
Идин вопрос только: а ты потом смотришь видео-решения? Или интерес к другому решению пропадает?


3642. Geffest
Geffest
ответить
→  Ljudmila  # Видео-приклад / Библиотека твоих программ / 2015-01-13 18:12

Любимый медиаплеер - VLC, видимо?)


3642. Geffest
Geffest
ответить
→  Константин  # Видео-игры / Бот для Цифр / 2015-01-13 18:09

Во-первых. Метод button_add_click должен закрываться. Перед [DllImport...] нужно поставить }
Во-вторых, строчка, где DllImport должна иметь ; на конце (там даже студия подчеркивает красным.
И есть еще какая-то третья ошибка, я не очень понял, но если на ошибку кликнуть два раза, то подсветится место ошибки.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Geffest  # Видео-игры / Устный счёт / 2015-01-12 00:36

Молодец, очень хорошая программа получилась, аккуратненькая.


3642. Geffest
Geffest
ответить
→  Эн Дру  # Видео-игры / Камень ножницы бумага / 2015-01-10 23:25

Выбор игрока там - ножницы, написано же


3642. Geffest
Geffest
ответить
→  Эн Дру   / 2015-01-10 23:23

Я мышь передвинул после нажатия


3605. Эн Дру
Эн Дру
ответить
→  Geffest  # Видео-игры / Камень ножницы бумага / 2015-01-10 10:44

Какая же Победа? На картинке ничья :)
Весь текст в один label засунуть- Респект :)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Geffest  # Видео-игры / Вступительное слово / 2015-01-06 18:08

Хорошая программ. Идей тут достаточно, только успевай реализовывать!


3642. Geffest
Geffest
ответить
# Консоль / Цифры / Крайние / 2015-01-05 21:26

Там явно есть не четырехзначные числа в тестах, хотя условие обещает, что числа будут четырехзначные.


3642. Geffest
Geffest
ответить
# Консоль / Цифры / Сумматор / 2015-01-05 20:43

УРРРАА! СВО-БОО-ДААА!!! For можно использовать! Ю-хууу! =)


3642. Geffest
Geffest
ответить
# Консоль / Целые задачи / Арифметика / 2015-01-04 17:18

Split() вполне справляется с задачей..


3642. Geffest
Geffest
ответить
# Консоль / Математика / Секундомер / 2015-01-04 15:44

h = h / 60 % 24; для нахождения часов не проходит три теста, если же округление до суток убрать, то проходит на 100%. Уточните пожалуйста условие.


3642. Geffest
Geffest
ответить
# Консоль / Лирика / Любимые цифры / 2015-01-03 18:00

Решил попробовать через рекурсию (с циклами все ясно). По-моему, красиво получилось..
static int sum(int A)
{
    if (A < 10) return A;
    else return sum(A % 10 + A / 10);
}
    static void Main(string[] args)
{
    int A = int.Parse(Console.ReadLine());
    Console.WriteLine(sum(A));
}


3642. Geffest
Geffest
ответить
→  Наталия  # Консоль / Лирика / Классики / 2015-01-03 14:55

Ну лично я сам люблю Си-шный for, но здесь, как по мне while уместнее. Ограничение заметил только после того, как сдал программу на 100%)


3642. Geffest
Geffest
ответить
→  Рустам  # Консоль / Лирика / Классики / 2015-01-03 14:53

Код ОЧЕНЬ некрасивый.. Как можно такому детей учить.. Детей наоборот нужно учить перекладывать рутинные действия на машину..


3642. Geffest
Geffest
ответить
→  Денис  # Консоль / Лирика / Опечакти / 2015-01-03 14:40

Вот оно чего) Посмотрел ваше решение) Сравниваете R с нулем) А вы не подумали, что если R==0, то R*2==0, и следовательно оно не влияет на результат?)


3642. Geffest
Geffest
ответить
→  Денис  # Консоль / Лирика / Опечакти / 2015-01-03 14:36

Console.WriteLine(N * 1024 + R * 2);
Зачем if? Ну и вообще, мне кажется, это недосмотр автора курса, что на этом этапе еще могут быть ученики, которые не знают условий и циклов. Многие задачи можно было интереснее решить с циклами, например.


3642. Geffest
Geffest
ответить
# Консоль / Лирика / Полторы куры / 2015-01-03 14:27

Ого, посмотрел видео.. Там действительно ничего непонятно. Лично я начал с того, что 1.5 курицы за  1 день сносят 1 яйцо. Ну, это логично.
Значит:
1.5 курицы  1 день  1 яйцо
3    курицы  1 день  2 яйца
3    курицы  3 дня    6 яиц
1    курица    3 дня    2 яйца
1    курица    1 день  2/3 яйца

Дальше - всего лишь формулу составить и все.


3642. Geffest
Geffest
ответить
# Консоль / Лирика / Полторы куры / 2015-01-03 14:19

А ведь задача то простая. Досмотрел видео до 45й секунды (он там написал в ряд 1.5к 1.5д 1.5я) и тут меня осенило. Дальше решил сам)


3642. Geffest
Geffest
ответить
# Консоль / Целые числа / Пирамида / 2015-01-03 09:15

Вот блин) Сделал через цикл while и все сидел тупил, не мог понять, почему не проходит даже первый тест, хотя вывод вроде бы тот же, что и в примере.
Только потом понял, что предполагается выводить без циклов, копипастом, значить в конце пробела быть не должно.. Ух, не привык я к таком, чтобы копипастом.. Зачем так делать? Когда циклы уже изучать будем?)


3642. Geffest
Geffest
ответить
→  Максим  # Консоль / Целые числа / Два числа / 2015-01-03 05:53

Можно выбрать любой способ преобразования строки в число


3642. Geffest
Geffest
ответить
# Консоль / Строки / ToLower/Upper / 2015-01-02 18:02

A почему строки сравнивать знаками >, < нельзя, а на равенство можно? Озадачился немного, увидев, что if использовать нельзя..


  • Звание:
  • Накопленный опыт:
  • Собранный капитал:

Еженедельный прогресс

Результат Пн Вт Ср Чт Пт Сб Вс Итого
Проверены отчёты 183 169 167 176 170 154 41 1060
Написан ответ 58 57 49 67 76 55 27 389
Набран текст 78 83 76 87 70 69 19 482
Решена задача 108 110 100 125 119 110 30 702
Выполнен видеоурок 337 143 218 238 272 198 26 1432
Ежедневный бонус 58 62 60 65 64 51 11 371
Опубликовано в соцсетях 25 30 30 45 35 30 10 205
Собран мегахеш 39 39 35 37 34 33 20 237
Итого 886 693 735 840 840 700 184 4878 байт
Накопленные байты будут засчитаны только тем, кто до конца недели заполнит еженедельный отчёт!

Клуб формулистов

Формулист За сегодня За неделю
Разминка Обучение Бонусы Сумма
1 chokayes 9752 10 5 4 19 359
2 Дмитрий 4814 10 15 10 35 345
3 Иван Воронин 10558 10 10 7 27 267
4 zhikharevav 8380 250
5 Tekashnik 8275 4 4 244
6 Виктор 17606 5 5 10 183
7 vip 9913 1 1 180
8 Владимир 15525 10 14 6 30 168
9 WildOrc 17443 5 5 163
10 Bodrik_torf 16066 156
11 Алексей|BrisK|Кривицкий 3506 149
12 Pavlin 16496 127
13 Андрей Гришагин 17240 120
14 Anton 5394 119
15 Алексей В. 10494 112
16 Dmitry Sinitsin 17947 110
17 Yefim 11589 3 3 106
18 Яков 6401 83
19 Dimon 9156 7 5 12 67
20 Дмитрий 16218 67
21 Володимир 8707 65
22 Евгений Волосатов 1 3 3 64
23 Андрей 162 55
24 Алекс 8932 53
25 Григорий 3850 51
26 Александр 3922 50
27 Timoha 9980 47
28 Николай Миролюбов 6203 5 5 40
29 chip 13417 40
30 Денис 16396 38
31 Михаил 5081 5 5 35
32 Антон Кравченко 5502 4 4 34
33 Sergej Šugajev 16017 31
34 Валерий Жданов 791 30
35 Виталий 16268 30
36 Neverwinter 2 1901 28
37 drWatson 17575 27
38 Кирилл Шмойлов 6452 5 5 26
39 Иван 2146 25
40 Pavel 11353 25
41 Andrej Gladkov 16018 25
42 vjacheslav 16906 25
43 Narek Aslanyan 18057 22
44 Сергей Сергеевич 459 20
45 Слава 17769 20
46 Gilman 17619 18
47 Сергей 14008 17
48 Povilas Abramovicius 16089 17
49 Николай Денисов 9014 16
50 DimanDOS 14981 16
51 Serge 16861 16
52 Евгений 17938 16
53 Сергей Витальевич 4699 15
54 Rise 14075 15
55 Aleksej Fiodorov 16016 15
56 Самал 18138 14
57 Дмитрий 18157 13
58 Dim_nk 18171 11
59 Гендос 18183 11
60 Слава 17255 5 5 10
61 Роман 17829 5 5 10
62 Сергей 3747 10
63 Петя 7652 10
64 Саша Авербух 16520 10
65 Андрей 17589 10
66 Сергей Тирпиц 17608 10
67 Greed846 18029 10
68 Aelita 18082 10
69 Тамерлан 18174 10
70 Дубильер Яна Александровна 18184 10
71 Nikita 16135 8
72 Никита 17542 8
73 Diserdyuk 17894 8
74 Den Andreevich 6861 7
75 Andrej Petrunev 16015 7
76 Андрей Шевченко 16533 7
77 Maksym 17628 7
78 Oleg 18187 7
79 Alexander Sidorov 4853 6
80 Евгений 4864 6
81 Сергей Стефаненко 13131 6
82 Андрей 16329 6
83 Кирилл Бойко 17895 6
84 Nadim 18190 6
85 andruf 18199 5 5 5
86 Сарапульцев Константин 1570 5
87 Denis 1947 5
88 Иван Татур 2760 5
89 Денис 4395 5
90 Артём 7941 5
91 Алексей 9323 5
92 FireWolf 10080 5
93 Demonick 10981 5
94 Progresir 11197 5
95 Snepper 11456 5
96 Родион Глушков 11582 5
97 Роман 14462 5
98 Kitsuneco 15445 5
99 ivan tuzhikov 15865 5
100 Kiril Krutiajev 16014 5
101 Дмитрий 16253 5
102 Bakha 17695 5
103 Oleksandr 17822 5
104 Aleksey 17982 5
105 Taras 18146 5
106 David 18153 5
107 CaLLiek 18162 5
108 Tigran 18175 5
109 Кирилл 18177 5
110 DbIM 18181 5
111 Igorenzia 689 4
112 Игорь 7321 3
113 Морозов Юрий Александрович 2639 2
114 Dni 16691 2
115 Миша 8929 1 1 1
116 Александр 1037 1
117 Дмитрий Че 1295 1
118 Валерий 1305 1
119 mikemet 2721 1
120 Sergey 4732 1
121 Андрей 4753 1
122 Сергей 5193 1
123 maks 5907 1
124 Виктор Си 5923 1
125 Владимир 6587 1
126 villain 6687 1
127 Артём 6925 1
128 Анатолий 8512 1
129 SergeyKa 8744 1
130 Alex 8822 1
131 Максим 9567 1
132 Константин 10821 1
133 Андрей 10891 1
134 magna mentes 11790 1
135 Алекс Имаго 12013 1
136 Илья 13030 1
137 Александр 13813 1
138 Программист 14712 1
139 Дмитрий 14748 1
140 EVUKOLOV 15931 1
141 Александр 17067 1
142 Vlad179 17098 1
143 Юрий Караваев 17629 1
144 MaxeBoom 17666 1
145 Александр 17697 1
146 Andrei 17777 1
147 Александр 17838 1
148 Степан Свечников 17931 1
149 Andrey 18136 1
150 slava 18137 1
151 Harry Potter 18145 1
152 Лев 18152 1
153 Сергей 18159 1
154 figo 18196 1
155 Юрий 18197 1

Правила клуба формулистов

У каждого формулиста есть задача минимум на каждый день:
+ зайти на сайт, проверить один отчёт, получить 1 байт.
Задача максимум - выполнить все остальные ежедневные задачи.
Нажмите здесь чтобы перейти к ежедневному чек-листу.

В 24:00 МСК накопленные за сутки байты переносятся в недельный актив.
В воскресение 24:00 МСК все накопленные байты переходят на баланс формулиста.

Собранные байты можно обменивать на доступные видеокурсы (1 байт = 1 рубль, без скидок)
Приобретённые за байты видеокурсы доступны только во время нахождения в автобусе/клубе формулистов!

При завершении подписки в автобусе/клубе формулистов все накопленные байты обнуляются, а доступ к видеокурсам, приобретённым за байты, закрывается.
Продлевайте подписку заблаговременно.

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Трудности: Tag хранится не в типе string. Долго не мог понять, почему два значения (одно - Тэг, другое счетчик) выглядят одинаково при выводе на лэйбл, но при сравнении возвращают ложь. Оказывается, нужно было Тэг привести к строке.
Снова решил реализовать программу до просмотра видео, поэтому получилось по-другому. Давно хотел использовать массив графических объектов и попробовал сделать это здесь. Также размечал элементы без использования графического дизайнера. Создал массив типа Point, куда записал координаты сетки, где должны размещаться кнопки, этот массив перемешал и расставил по координатам кнопки. Оказалось, что работать с массивом кнопок настолько удобно, что захотелось сразу сделать пятнашки (видел, что такой урок есть в платном курсе). Не знаю, как сделано там, но у меня пятнашки получились вполне рабочие :)
Особенно интересно было работать с таймером. Например, я все думал, как добавить таймер к лабиринту из второго урока. Теперь в принципе ясно направление.