Циклы, обработка функций. Определить кол-во точек, принадлежащих кругу - C#
Формулировка задачи:
Задание:
Значения функции sin(x)+cos(x) определены при x=x0(h)xn
определить, сколько значений функции f(x) принадлежат окружности с центром в точке (a,b) радиуса R.
проблема с проверкой принадлежности окружности.
точнее, я вообще не понимаю, как это реализовать.
вот что только получилось на(ш)кодить
то есть это просто оформление
нужен какой-то умный цикл (который точно умнее меня).
помогите
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication18 { class Program { static double dblX, dblX0, dblXn, dblHx, R, dbla, dblb, dblD; static int i; static bool Parse(ref double dblTmp, string strTmp) { try { Console.Write(strTmp); dblTmp = double.Parse(Console.ReadLine()); return true; } catch (SystemException err) { Console.WriteLine(err.Message); //обработка ошибок return false; } } static double dblFl(double dblX) { return Math.Sin(dblX) + Math.Cos(dblX); } static void Main() { while (!Parse(ref dblX0, "Введите начальное X, X0= ")) ; while (!Parse(ref dblXn, "Введите конечное значение X, Xn= ")) ; while (!Parse(ref dblHx, "Введите шаг изменения X, h= ")) ; while (!Parse(ref dbla, "Введите координату a= ")) ; while (!Parse(ref dblb, "Введите координату b= ")) ; while (!Parse(ref R, "Введите радиус, R= ")) ; { } Console.WriteLine("Заданной окружности принадлежит {0:f1} точек", i); Console.ReadKey(); } } }
Решение задачи: «Циклы, обработка функций. Определить кол-во точек, принадлежащих кругу»
textual
Листинг программы
public static bool CircleContains(Point center, float radius, Point point) { var f = Math.Pow(center.X - point.X, 2) + Math.Pow(center.Y - point.Y, 2); return f <= Math.Pow(radius, 2); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д