Данное задание направлено на закрепление материала по теме разработка подпрограмм.
Обязательные условия и комментарии:
Скачайте архив с программой образцом... Распакуйте архив. Посмотрите работу демонстрационного образца.
Есть мишень, у которой имеется определенное количество концентрических кругов MaxScore (на рисунке 7). Круги идут с шагом Step (на рисунке равен 1).
Попадание в центральный круг дает MaxScore очков, далее от центра каждый последующий круг на 1 меньше.
Попадание за пределы последнего круга не приносит очков - попадание в «молоко».
На каждом следующем шаге количество полученных за очередной выстрел очков добавляется к общей сумме.
Игра продолжается пока пользователь не захочет ее остановить (ввод Y или y).
Выстрел - это определение двух координат на плоскости - X и Y .
В программе организовать цикл (до нажатия игроком любой клавиши) в процессе которого прибавлять к некоторой переменной случайное число (результат метода Random.NextDouble() ). Изменение числа на каждой итерации не должно быть больше 1 и должно быть случайным. При этом необходимо контролировать изменение числа в границах от -conMaxValue до +conMaxValue . Необходимо обеспечить равномерное распределение в этом диапазоне случайных чисел, выводимых на экран.
Игрок может влиять на точность выстрела ориентируясь на выводимые, текущие значения координаты.
Запустите программу-образец: Demo.exe
По умолчанию количество кругов = 10, ширина всей мишени = 15 + 15, шаг = 1, задержка = 30.
1. Для организации цикла до нажатия пользователем на любую клавишу используйте цикл
while (!Console.KeyAvailable);
«Вытащить» нажатый пользователем символ из буфера без отображения его на экране можно так:
Console.ReadKey(True);
2. Организация задержки, метод:
System.Threading.Thread.Sleep(interval);
3. Перемещение курсора в левую позицию в строке в консоли, метод:
Console.CursorLeft = 0;
| Гарантия на работу | 1 год |
| Средний балл | 4.53 |
| Стоимость | Назначаете сами |
| Эксперт | Выбираете сами |
| Уникальность работы | от 70% |