Кейс-задача № 1
Представьте, что вы устроились на работу junior-разработчиком в стартап, специализирующийся на разработке математических игр. Для одного из проектов вас попросили создать “Калькулятор”. Используя знания, полученные в курсе, выполните следующие задания:
- Создайте новый проект в Visual Studio и выберите шаблон Windows Forms Application.
- Добавьте необходимые элементы управления на форму. Например, добавьте четыре кнопки для операций (сложение, вычитание, деление, умножение) и десять кнопок для цифр. (От 0 до 9).
- Создайте обработчики событий для каждой кнопки. Например, для кнопки сложения создайте обработчик, который будет выполнять операцию сложения. Составьте для остальных кнопок соответствующую функциональность. Не забудьте про кнопки «=» и «C» (очистка результата).
- Напишите код для выполнения каждой операции. Например, для операции сложения нужно прочитать значения двух чисел, сложить их и отобразить результат на экране.
- Реализуйте логику калькулятора, чтобы он мог выполнять последовательные операции и сохранять результат предыдущей операции для использования в следующей операции. Реализуйте дисплей на калькуляторе, который показывает текущий результат операции или вводимое число.
- Добавьте обработку ошибок, чтобы предотвратить некорректные операции, например, деление на ноль или ввод некорректных данных.
- Проверьте работу калькулятора, используя различные числа и операции, чтобы убедиться, что он работает корректно.
- Предоставьте пользователю возможность сохранять результаты вычислений и загружать их позже, если это необходимо.
- Добавьте одну дополнительную опцию калькулятора. На выбор: изменение цветовой схемы или выбор размера шрифта.
Кейс-задача № 2
Вы решили стать разработчиком игр и отправили резюме в гейм-студию «Золотая кираса». Вам отправили ТЗ по созданию игры “Тетрис”. Выполните задание и загрузите решение на платформу.
- Создайте новый проект в Visual Studio и выберите шаблон консольного приложения C#.
- Создайте класс для представления фигур, которые будут падать на поле игры. Каждая фигура может быть представлена в виде матрицы битов, где каждый бит соответствует блоку фигуры.
- Создайте класс для представления поля игры. Этот класс должен иметь матрицу, представляющую каждый блок на поле. Каждый элемент матрицы может иметь значение 0 или 1, в зависимости от того, занят ли блок фигурой или нет.
- Создайте методы для движения и вращения фигур на поле игры. Эти методы должны изменять значение элементов матрицы в соответствии с новым положением фигуры.
- Создайте метод для отрисовки текущего состояния поля игры. Этот метод должен выводить текущее состояние поля на консоль, используя символы для представления блоков и пустых мест на поле.
- Создайте основной цикл игры, который будет обновлять состояние фигур и поля игры в зависимости от действий игрока. Например, вы можете добавить обработку клавиш управления, чтобы игрок мог двигать фигуры влево и вправо, поворачивать их и ускорять их падение.
- Добавьте логику для проверки конца игры, когда фигуры достигнут верхней части поля. Если игрок проиграл, выведите сообщение о конце игры и предложите начать игру заново.