Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static double Function(double cur_x , int variant)
- {
- switch (variant)
- {
- case (9):
- {
- function = Math.Pow(Math.E, cur_x) - 6 * cur_x + 3;
- return function;
- }
- case (29):
- {
- function = Math.Pow(3, cur_x) + 5 * Math.Pow(cur_x,2)-3*cur_x + 1;
- return function;
- }
- default:
- return 0;
- }
- }
- //Производные функций в точке x
- public static double Proizvod(double cur_x, int variant)
- {
- switch (variant)
- {
- case (9):
- {
- fProizvod = Math.Pow(Math.E, cur_x) - 6;
- return fProizvod;
- }
- case (29):
- {
- fProizvod = Math.Pow(3, cur_x) * Math.Log(3) + 4* cur_x - 3;
- return fProizvod;
- }
- default:
- return 0;
- }
- }
- //Подсчет разделенных разностей
- public static double DividedDifferences(double[] xArray, int variant)
- {
- if (xArray.Length == 1)
- {
- return Function(xArray[0], variant);
- }
- if (xArray.Length == 2)
- {
- return ((Function(xArray[1], variant) - Function(xArray[0], variant)) / (xArray[1] - xArray[0]));
- } else {
- double[] tempxArray1 = new double[xArray.Length - 1];
- double[] tempxArray2 = new double[xArray.Length - 1];
- for(int i=0; i<tempxArray1.Length; i++)
- {
- tempxArray1[i] = xArray[i + 1];
- }
- for (int i = 0; i < tempxArray2.Length; i++)
- {
- tempxArray2[i] = xArray[i];
- }
- return ((DividedDifferences(tempxArray1, variant) - DividedDifferences(tempxArray2, variant)) / (xArray[xArray.Length - 1] - xArray[0]));
- }
- }
- //Вычисление Омега =(x-x0)*(x-x1)...
- public static double Omega(double x, double[] xArray)
- {
- double prz = 1;
- for(int i=0; i<xArray.Length; i++)
- {
- prz *= (x - xArray[i]);
- }
- return prz;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement