using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Лаба3_2 { class Program { static void Main(string[] args) { string rdano ="", xdano = "", ydano = ""; double r = 0, x = 0, y = 0, proverka = 1, proverkar = 1, proverka3 = 1, vistrel = 1; Console.WriteLine("Введите радиус мишени \nПопытка ввода № {0,2}. \nОсталось попыток {1,2}", proverka, (6 - proverka)); while (proverkar <= 5) { Console.Write("r="); rdano = Console.ReadLine(); try { r = double.Parse(rdano); } catch { if (proverkar < 5) Console.WriteLine("Значение радиуса должно быть числовым.\nБудьте внимательнее, всего осталось попыток ввода: {0,1}", (5 - proverkar)); else Console.WriteLine("Возьмите книгу, прочитайте что такое радиус, и каким он должен быть, прежде чем приходить вновь.\n\n\n\n\n\t\t\t\t\t9 До скорого!"); proverkar++; continue; } if (r < 0) { if (proverkar < 5) Console.WriteLine("Значение радиуса должно быть положительным.\nБудьте внимательнее, всего осталось попыток ввода: {0,1}", (5 - proverkar)); else Console.WriteLine("Возьмите книгу, прочитайте что такое радиус, и каким он должен быть, прежде чем приходить вновь.\n\n\n\n\n\t\t\t\t\t До скорого!"); proverkar++; continue; } else { while (vistrel <= 10) { proverka3 = 1; while (proverka3 <= 3) { Console.WriteLine("Введите координаты выстрела\nЭтот выстрел будет {0,2} по счету", vistrel); Console.Write("x="); xdano = Console.ReadLine(); Console.Write("y="); ydano = Console.ReadLine(); try { x = double.Parse(xdano); y = double.Parse(ydano); } catch { if (proverka3 < 3) Console.WriteLine("Не ошибайтесь! \nВводите числовые значения координат выстрела! \nНа выстреле № {0,1}, количество неверно забитых координат до момента прогона вас из тира равняется {1,1}", vistrel, (3 - proverka3)); else Console.WriteLine("Простите, но нам придется с вами распрощаться."); proverka3++; continue; } break; } if (proverka3 == 4) break; if (((x - r) * (x - r) + y * y <= r * r && y >= 0 && x >= 0) || (x * x + y * y + 2 * r * (x - y) >= -r * r && y <= 0 && y >= -r && x <= 0 && x >= -r)) Console.WriteLine("Удачный выстрел!"); else Console.WriteLine("К сожалению, вы промахнулись!"); vistrel++; } Console.WriteLine("\n\n\n\t\t\tДо скорой встречи, приходите вновь!"); break; } } } } }