uk
Feedback

Не попадись на ботовода! Telemetrio знаходить і позначає такі канали мітками 👉 Хочеш бачити мітку, оформляй підписку

Библиотека задач по C# | тесты, код, задания

Библиотека задач по C# | тесты, код, задания

Відкрити в Telegram

Задачи и тесты по C# для тренировки и обучения. Учиться у нас: https://clc.to/3e1SCw По рекламе: @tproger_sales_bot Для обратной связи: @proglibrary_feeedback_bot Наши каналы: https://t.me/proglibrary/9197

Показати більше
4 891
Підписники
-424 години
-137 днів
-4330 днів
Архів дописів
Можно ли записать число в массив строк через переменную object[]? Что произойдёт при выполнении кода? Нужные using подключены.
object[] values = new string[1];
values[0] = 42;

Console.WriteLine("OK");
👾 — OK — число сохранится как object 👍 — ArrayTypeMismatchException 🥰 — Ошибка компиляции ⚡️ — OK — число превратится в строку Ответ: 👍 — ArrayTypeMismatchException. string[] можно присвоить переменной object[] благодаря ковариантности массивов. Но сам массив остаётся массивом строк. Запись int проходит компиляцию, а во время выполнения проверка типа вызывает ArrayTypeMismatchException. Правило в документации C# Библиотека задач по C#

📌 Один курс — хорошее вложение в себя. Два по той же цене — ещё лучше. В Proglib Academy действует акция: покупаешь один кур
📌 Один курс — хорошее вложение в себя. Два по той же цене — ещё лучше. В Proglib Academy действует акция: покупаешь один курс, а второй получаешь в подарок. Например, можно совместить два направления по работе с ИИ:
💥 ИИ для разработчиков — применение нейросетей в повседневной разработке: работа с кодом, тестирование и ревью. 💥 Разработка ИИ-агентов — архитектура агентов и создание собственных AI-решений.
📍 Разница в цене — почти 50 тысяч рублей. Можно освоить больше, не выходя за рамки запланированного бюджета. А если тебе интереснее Python, алгоритмы, backend или DevOps — выбирай другую пару курсов из каталога. Акция действует до 31 октября включительно ⏳ ⏮️ Пора прокачать свой стек

Изменится ли структура после вызова метода через интерфейс? Что выведет код? Нужные using подключены.
interface ICounter { void Increment(); }

struct Counter : ICounter
{
    public int Value;
    public void Increment() { Value++; }
}

class Program
{
    static void Main()
    {
        Counter original = new Counter();
        ICounter boxed = original;
        boxed.Increment();

        Console.WriteLine(original.Value);
        Console.WriteLine(((Counter)boxed).Value);
    }
}
👾 — 1 и 1 👍 — 0 и 0 🥰 — 0 и 1 ⚡️ — Ошибка компиляции Ответ: 🥰 — 0 и 1. При преобразовании Counter к ICounter происходит упаковка: в объект помещается копия структуры. Increment изменяет эту упакованную копию. Исходная структура сохраняет Value = 0, а при распаковке boxed получаем Value = 1. Правило в документации C# Библиотека задач по C#

Изменит ли finally значение, уже выбранное для return? Что выведет код? Нужные using подключены.
class Program
{
    static int GetValue()
    {
        int value = 1;
        try { return value; }
        finally { value = 2; }
    }

    static void Main()
    {
        Console.WriteLine(GetValue());
    }
}
👾 — 1 👍 — 2 🥰 — Ничего: finally отменит return ⚡️ — Ошибка компиляции Ответ: 👾 — 1. Выражение return value вычисляется до выполнения finally: результатом становится число 1. Затем finally меняет локальную переменную, но уже выбранное возвращаемое значение от этого не меняется. Правило в документации C# Библиотека задач по C#

Какие числа напечатают действия, созданные в цикле for? Что выведет код? Нужные using подключены.
var actions = new List<Action>();

for (int i = 0; i < 3; i++)
{
    actions.Add(() => Console.Write(i));
}

foreach (var action in actions)
    action();
👾 — 012 👍 — Ошибка компиляции 🥰 — 123 ⚡️ — 333 Ответ: ⚡️ — 333. Все три лямбды захватывают одну переменную i из for. Действия выполняются после завершения цикла, когда i равна 3. Это отличается от захвата переменной foreach в современных версиях C#. Правило в документации C# Библиотека задач по C#

😎 Выбираешь один курс, второй получаешь бесплатно. Баг? Нет, акция! До 31 октября в Proglib Academy можно выбрать два курса
😎 Выбираешь один курс, второй получаешь бесплатно. Баг? Нет, акция! До 31 октября в Proglib Academy можно выбрать два курса и заплатить только за один. Например, можно совместить:
💥 ИИ для разработчиков — применение нейросетей в повседневной разработке: работа с кодом, тестирование и ревью. 💥 Разработка ИИ-агентов — архитектура агентов и создание собственных AI-решений.
Вместе курсы стоят 108 000 ₽, но по акции оба обойдутся в 59 000 ₽. Экономия — 49 000 ₽ 🔥 Интересуют Python и ИИ или алгоритмы и архитектура? Можно выбрать любые два курса из каталога. Акция действует до 31 октября включительно ⏳ ⏬ Собрать свой учебный билд

Что попадёт в результат LINQ после изменения списка? Что выведет код? Нужные using подключены.
var numbers = new List<int> { 1, 2, 3 };
var selected = numbers.Where(n => n > 1);
numbers.Add(4);

Console.WriteLine(string.Join(", ", selected));
👾 — 2, 3 — запрос запомнил исходный список 👍 — 2, 3, 4 — список читается при переборе 🥰 — 4 — запрос видит только новые элементы ⚡️ — InvalidOperationException Ответ: 👍 — 2, 3, 4 — список читается при переборе. Where выполняет отбор при переборе. Добавление произошло до начала перебора в string.Join, поэтому в результат попадёт и 4. Правило в документации C# Библиотека задач по C#

🔥 Middle C# на собеседовании у Senior из европейского highload | 20 октября, 19:00 МСК Можно знать технологию и всё равно за
🔥 Middle C# на собеседовании у Senior из европейского highload | 20 октября, 19:00 МСК Можно знать технологию и всё равно завалить техническое интервью. Часто дело не в знаниях, а в том, как ты отвечаешь и какие детали упускаешь ☝🏻 Александр Моргунов, Senior C# разработчик с 7+ годами опыта в европейском highload, проведёт мок-собеседование в прямом эфире! Отвечает разработчик-доброволец, вопросов он заранее не знает. После каждого ответа Александр разберёт, что было хорошо, где кандидат потерял баллы и как стоило ответить. Проверяй себя вместе с кандидатом и узнай, к чему подготовиться до своего собеса. 🚀 Это бесплатно Эфир проходит в рамках менторской программы ШОРТКАТ для C# разработчиков Ссылка на эфир в боте 👉 @shortcut_csharp_bot Реклама. О рекламодателе.

checked вокруг вызова защитит умножение внутри другого метода? Метод Multiply принимает два int и возвращает их произведение в unchecked-контексте. Выполняется выражение checked(Multiply(int.MaxValue, 2)). Пользовательских операторов нет. Что получится? 👾 — -2 👍 — OverflowException 🥰 — 4294967294 ⚡️ — Ошибка компиляции Библиотека задач по C#

Record class скопировали через with. Вложенный список тоже скопировался? У объекта есть свойство Tags — изменяемый список строк. Используется стандартный copy constructor. В нём один элемент. Создали copy выражением original with { } и добавили второй элемент в copy.Tags. Сколько элементов теперь в original.Tags? 👾 — Два, оба объекта ссылаются на один список 👍 — Один, with копирует весь граф объектов 🥰 — Ноль, исходный список очищается ⚡️ — Ошибка компиляции, record запрещает изменяемые свойства Библиотека задач по C#

👀 Как вы смотрите видео? Разбираете урок, слушаете интервью фоном или начинаете на телефоне, а продолжаете на большом экране? Хотим узнать, что делает просмотр удобным для вас. Вспомните последнее видео — ролик, урок, фильм или серию сериала — и расскажите о своём опыте. Если детали не запомнились, можно так и ответить. 🕰️ Опрос займёт около 3 минут. В результатах сможете сравнить свои привычки с ответами других участников. А разработчики и инженеры видеоплатформы расскажут, что происходит по ту сторону экрана, пока вы смотрите видео. 🔗 Поделиться опытом 🐸 Библиотека программиста

Что выводит Console.WriteLine("Hello".ToUpper());? 👾 — HELLO 👍 — hello 🥰 — Error ⚡️ — Ничего из вышеперечисленного Библиотека задач по C#

😭 Как не потратить недельный лимит AI-кодинга за три дня? Разберём на вебинаре, как тратить меньше на AI-агентов — без потер
😭 Как не потратить недельный лимит AI-кодинга за три дня? Разберём на вебинаре, как тратить меньше на AI-агентов — без потери качества кода. 🔘 Поговорим о том: — когда дорогая модель действительно нужна, а когда хватит дешёвой; — сколько стоит один прогон и куда уходят токены; — какие задачи можно отдавать субагентам; — как настроить маршрутизацию моделей; — что проверять в AI-коде перед merge. ✏️ Покажем всё на конкретных цифрах и вживую: сравним расходы до и после. ⬇️ 18 сентября, 19:00 МСК ⬇️ 1,5 часа · бесплатно ⬇️ Арсений Харланов и Олег Лайок 💬 Пишите в комментариях, где упираетесь в лимиты и на что уходят деньги. Самые залайканные вопросы разберём на вебинаре. 🔗 Зарегистрироваться на вебинар⁠

🔍Тестовое собеседование с Senior C# разработчиком уже завтра 15 сентября (уже завтра!) в 19:00 по МСК приходи онлайн на откр
🔍Тестовое собеседование с Senior C# разработчиком уже завтра 15 сентября (уже завтра!) в 19:00 по МСК приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle C# разработчика. Как это будет: 📂 Александр Моргунов, старший C# разработчик с опытом 7+ лет в Европейских высоконагруженных сервисах, будет задавать реальные вопросы и задачи разработчику-добровольцу; 📂 Александр будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью; 📂 В конце можно будет задать любой вопрос Александру. Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для C# разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы. Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_csharp_bot Реклама. О рекламодателе.

⚡️⚡️Актуальные темы .NET на DotNext 2026 В .NET одновременно происходит много интересного: C# получает новые возможности, .NE
+4
⚡️⚡️Актуальные темы .NET на DotNext 2026 В .NET одновременно происходит много интересного: C# получает новые возможности, .NET 10 меняет расклад между Native AOT и JIT, а в разработке появляются ИИ-агенты, которые берут на себя часть инженерной работы. На DotNext 2026 разберем как вещи, которые происходят на уровне машинного кода, так и вполне прикладные вопросы архитектуры и разработки. 📅 25–26 сентября, Москва + online Выбрали 8 тем из программы, среди которых не только доклады, но и хардкорный воркшоп, чтобы показать этот диапазон: — как заставить Transactional Outbox одновременно быть строгим и параллельным; — зачем ASP.NET Core модульный монолит и как собрать его без микросервисов; — где Native AOT выигрывает у JIT в .NET 10; — что происходит с циклами, inlining и bounds checks в C# и Go; — как меняется SDLC, когда в команде появляются ИИ-агенты; — что принесут discriminated unions в C# 15; — как проектировать асинхронное взаимодействие в распределенных системах (воркшоп). Все подробности — в карточках и на сайте конференции. 🌟По промокоду csharpproblems — персональные билеты дешевле → Программа DotNext → Купить билет

Какое ключевое слово C# используется для изменения данных и поведения базового класса путем замены члена базового класса новым производным членом? 👾 — overrides 👍 — protected 🥰 — base ⚡️ — new 🐸Библиотека задач по C#

👅 Самое сложное — выбрать не курс, а направление Сегодня хочется разобраться в AI-агентах. Через пару недель появляется зада
👅 Самое сложное — выбрать не курс, а направление Сегодня хочется разобраться в AI-агентах. Через пару недель появляется задача, где нужны алгоритмы. Потом понимаешь, что неплохо бы освежить Python или математику для Data Science. 🔜 Именно поэтому подписка на обучение многим оказывается удобнее отдельных курсов. Можно спокойно переключаться между темами, когда меняются задачи, а не покупать новую программу каждый раз.
В подписку Proglib Academy входят все основные направления — AI, ML, Python, алгоритмы, математика для DS и другие курсы, а ещё закрытый видеохаб с вебинарами практиков.
Начать можно с пробного месяца. Если решите остаться, его стоимость зачтётся при оформлении подписки 😎 🔗 Узнать подробнее 🏃‍♀️ Proglib Academy

Покупать новый курс каждый раз, когда меняется рабочая задача, — довольно странная механика. Нашли альтернативу 👇

Что делает оператор ! (null-forgiving)? 👾 — Добавляет runtime-проверку и бросает NullReferenceException при null 👍 — Лишь подавляет предупреждение анализатора nullable; на рантайм не влияет 🥰 — Навсегда делает тип non-nullable ⚡️ — Автоматически кидает ArgumentNullException Библиотека задач по C#

🎯 У разработчика, DevOps-инженера и техлида разные причины задуматься о системной работе с AI-агентами Но цель одна: перейти
🎯 У разработчика, DevOps-инженера и техлида разные причины задуматься о системной работе с AI-агентами Но цель одна: перейти от случайных удачных запусков к управляемому процессу на реальном проекте — с понятными правилами, ревью, контролем расходов и безопасности ✔️ На курсе «ИИ для разработчиков» участники выстраивают такой процесс на практике: подключают инструменты, задают границы для агента и учатся понимать, где ему можно доверять работу, а где требуется проверка. ⚡️ Предзапись на осенний поток уже открыта 🏃‍♀️ Proglib Academy