8
3Заключение
Врезультате выполнения лабораторной работы был закреплен теоретический материал, полученный на лекционных занятиях, а также получены практические навыки по работе с полиномом Лагранжа второй степени, полиномом Ньютона разных степеней и методом наименьших квадратов. Отчет оформлен
всоответствии с ОС ТУСУР 2013.
9
4 Приложение А
(обязательное)
Исходный код программы
using System;
namespace Интерполяционный полином Лагранжа class Program
{
static void Main(string[] args)
{
double x = 0; double y = 0; int count = 0;
for (int i = 0; i <= 29; i++)
{
x = 0.2 * i;
y = Math.Sqrt(Math.Pow(x, 2) + 1); count++;
Console.WriteLine($"Значение x{count} = {x} \t Значение y{count} = {y}");
}
}
}
}
10
Приложение Б (обязательное)
using System;
namespace Lagrange
{
class Program
{
public static void Pol_Lagr (double xi, double x0, double x1, double x2, double y0, double y1, double y2)
{
double polinom = 0;
polinom = (y0 * (((xi - x1) * (xi - x2)) / ((x0 - x1) * (x0 - x2))));
polinom = polinom + (y1 * (((xi - x0) * (xi - x2)) / ((x1 - x0) * (x1 - x2)))); polinom = polinom + (y2 * (((xi - x0) * (xi - x1)) / ((x2 - x0) * (x2 - x1)))); Console.WriteLine($"L({xi}) = {polinom}");
}
static void Main(string[] args)
{
double[] xi_n = new double[3]; double[] x = new double[3]; double[] yi_n = new double[3];
Console.WriteLine("Вычисление полиномов Лагранжа");
Console.Write("Введите x0:");
while (!double.TryParse(Console.ReadLine(), out xi_n[0]))
Console.Write("Введите y0:");
while (!double.TryParse(Console.ReadLine(), out yi_n[0]))
Console.Write("Введите x1:");
while (!double.TryParse(Console.ReadLine(), out xi_n[1]))
Console.Write("Введите y1:");
while (!double.TryParse(Console.ReadLine(), out yi_n[1]))
Console.Write("Введите x2:");
while (!double.TryParse(Console.ReadLine(), out xi_n[2]))
11
Console.Write("Введите y2:");
while (!double.TryParse(Console.ReadLine(), out yi_n[2]))
}
}
}
}