Разработка программы для нахождения промежуточных значений функции по имеющемуся набору известных значений

Автор:

Сюй Цзнтао, ГБОУ СОШ №460, 11 «И"

Руководитель:

Крысанов В.О., ГБОУ СОШ №460,

учитель математики и информатики

Цели проекта

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi nec metus justo. Aliquam erat volutpat.

задачи

  • построение математической модели, выбор архитектуры программы и проектирование программы;
  • разработка алгоритма;
  • интеграция результатов вычисления с системой LATEX;
  • реализация компиляции LATEX -файлов в исходном файле программы.

Используемое программное обеспечение Используемое программное обеспечение

  • Данная программа разработана на языке программирования Си.

  • Результаты вычислений записываются в PDF-файл при помощи системы компьютерной вёрстки LATEX.

Что такое LATEX?

LATEX компьютерная система типографского набора, созданная Д.Э. Кнутом из Стэнфордского университета, предназначенная для верстки документов.

Преимущества и недостатки LATEX

Достоинства:

  • документ LATEXотображается на всех компьютерных платформах одинаково;
  • основные реализации LATEX’а для всех платформ распространяются бесплатно, и т.д.
  • никакая другая из существующих в настоящее время издательских систем не может сравниться с TEX’ом в полиграфическом качестве текстов с математическими формулами

 

 

Недостатки:

  • необходимо потратить определенное время на изучение LATEX, чтобы получить хороший результат;

Различие между LATEXи Microsoft Word

Математические аспекты  

l_{i}(x) = \prod_{j=0, j\neq i}^{n}\frac{x-x_j}{x_i-x_j} = \frac{x-x_0}{x_i-x_0}\cdots \frac{x-x_{i-1}}{x_i-x_{i-1}}\frac{x-x_{i-1}}{x_i-x_{i-1}}\cdots\frac{x-x_n}{x_i-x_n},
L(x) = \sum_{i=0}^{n}y_il_j(x)

Программистские аспекты


double l(double x, double *arrX,  double *arrY, int N){
    double sum = 0;
    for(int i = 0; i<N; i++){
      double prod = 1;
      for(int j = 0; j<N; j++){
        if(i!=j)
          prod *= (x - arrX[j])/(arrX[i] - arrX[j]);
      }
      sum += arrY[i]*prod;
    }
    printf("S = %lf\n", sum);
return sum; 

Интерполяционный многочлен Лагранжа

Скриншот результатов программы

СПС

Made with Slides.com