Определить наименьшее расстояние от точки до прямой - C#
Формулировка задачи:
Здравствуйте, хочу посоветоваться по 1 не очень сложному заданию, новичок в си шарп. Определить наименьшее расстояние от точки (x1,y1) до прямой y=c*x+d; и соответствующее ему значение x методом перебора точек в интервале [a;b] с шагом h=(b-a)/n; x1=-3,5; y1=-4,0; c=-3;d=9;a=-1;b=8;n=1000;
Возникает ошибка, что индекс находился за границами массива, никак не могу понять - что это означает)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace ConsoleApplication_Lab3_1 { class Program { static double c = -3.0, d = 9.0; static void Main(string[] args) { double h = 0.009, x0 = -1.0, xn = 8.0, x, x1, y1,m=0.0,n=0.0,t=0.0,g, Dlina; double[] A = new double[999]; int i = 0, j = 0; Console.WriteLine("Введите x1"); x1 = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Введите y1"); y1 = Convert.ToDouble(Console.ReadLine()); x = x0; while (x <= xn) { for (i = 0; i <= A.Length; i++) { x = t * h + x0; m = Math.Pow((x - x1), 2); n = Math.Pow((x * c + d) - y1, 2); g = Math.Pow(m + n, 0.5); A[i] = g; t++; } } // вывод мин. числа из A[i] Dlina=A[0]; for (i = 1; i < A.Length; i++) { if (A[i] < Dlina) Dlina = A[i]; Console.WriteLine(Dlina + ""); } Console.ReadLine(); } } }
Решение задачи: «Определить наименьшее расстояние от точки до прямой»
textual
Листинг программы
int[] mas = new int[10];
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д