На этом уроке мы напишем программу для тренировки устного счёта.
Задание: Сделать тренажёр устного счёта по основным арифметическим операциям.
Дата отправки отчёта:
16 сентября 2015 г.
Задание выполнено: за
2 час. 20 мин.
Чему научился:
Думать)
Что было сложным:
Залез наперел и начал сам писать, в итоге написал очень много грязного кода ( а-ля вызовы одних и тех же методов по 2-3 раза в одном обработчике событий). В итоге пришлось очень долго и нудно разбираться что надо исправлять и тд.
Комментарии:
Хотелось бы почитать идеи других пользователей насчет того как еще можно, не дублируя кода, сделать то же самое для действий * - /
я все button.Visible, progress.Visible, label_think.Enabled и text_answer.Enabled закинул в отдельный метод и вызывал его при старте, победе и проигрыше. в методе проверял что если одна кнопка.Visible == true, то нужно сделать все кнопки.Visible = false, а progress.Visible, label_think.Enabled и text_answer.Enabled, соответственно = true, а иначе наоборот).
Трудности: Посчитать примеры правильно не сразу получилось От себя добавил выбор одного из 4х вариантов: "+", "+-", "+-*", "+-^", также с клавиатуры получается число знаков в числах примера, затем генерируется два случайных числа. Для вычитания числа меняются местами (чтобы с отрицательными числами не возиться). При возведении в степень только первое число генерируется в указанном диапазоне, второе - от 1 до 10.
Научился: Научился добавлять новые функции и немного думать. Хороший урок, я доволен, хоть было потрачено на его реализацию много времени. Трудности: Реализовать некоторые функции. Дополнительно добавил режим Random, который случайно выбирает действие из сложения, вычитания, умножения или деления. Так же сделал прогресс бар на количество ошибок, а не "победы". Ведь зачем прерывать столько прекрасное обучение устному счёту. Еще в сложность добавил время на ход(составляет 10 сек), ну и конечно ввод максимального числа с проверкой ввода только цифр и проверка при старте(если не выбран режим- ругается). Вроде бы все. Если ничего не забыл.