Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 июня!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Давно заметил, что всё-таки языки С/C++ это не самый лучший вариант программирования под Windows. Сейчас появилась масса более современных и удобных языков, например тот же Python - кроссплатформенный язык, очень легок в изучение. Я его изучил буквально за несколько дней по этому курсу - ссылка. Автор постарался, там видеоуроки на удивление легкие и понятные.
 
 
 
    Полином Лагранжа
 
 
 
 Даю свою прогу всё должно работать читай комент.
 
 
 
 ---------------------------------------
 
 
 
 // Автор: Сардыко В.С 2000 год
 
 // Интерполяция Лагранжа.
 
 // Компилятор: Visual C++ 6.0
 
 
 
 
 
 #include "stdafx.h"
 
 
 
 // таблица из книги по Выч мату.
 
 float x[6] = {1.5, 1.54, 1.56, 1.60,1.63, 1.70};
 
 float y[6] = {3.873,3.924,3.950,4.00,4.037,4.123};
 
 
 
 /* Главная функция, вычисляет коэффициенты Лагранжа
 
 x - аргумент
 
 n - степень многочлена или число x - ов
 
 i - номер узла
 
 */
 
 
 
 float L(float xp,int n,int i) {
 
 
 
 float Chesl; // чеслитель и знаменатель
 
 float Znam;
 
 
 
 
 
 Chesl = 1; Znam = 1;
 
 
 
 int k;
 
 // вычисление чеслителя
 
 for (k = 0; k!= n; k++ ) {
 
 
 
 if ( k == i ) continue;
 
 // убираем множитель x - x(i)
 
 Chesl *= xp - x[k];
 
 }
 
 // вычисление знаменателя
 
 for(k= 0; k!= n;k++) {
 
 
 
 if (x[i] == x[k]) continue;
 
 // убираем, а то ноль в знаменателе
 
 
 
 Znam *= x[i] - x[k];
 
 }
 
 
 
 
 
 return Chesl/Znam;
 
 
 
 }
 
 int main(int argc, char* argv[])
 
 {
 
 
 
 // вычисляем степень полинома
 
 int n = sizeof(y)/sizeof(float);
 
 
 
 // начальное значение
 
 float R = 0;
 
 
 
 // произвольная точка для проверки
 
 float px = 1.55;
 
 
 
 
 
 // вычисляем значение интерполяционного многочлена
 
 // в точке должно выйти 3.937
 
 for (int i = 0; i != n; i++) {
 
 
 
 R += y[i]*L(px,n,i);
 
 }
 
 
 
 printf("Результат : %f ",R); // вывод результата
 
 return 0;
 
 }
 
 
 
 


<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS