35264

Тема. Метод Крилова побудови власного багаточлена матриці.

Практическая работа

Информатика, кибернетика и программирование

h void min {int ij; double x1x2x3x4; double [4][5]; double b[4][5]; double c[4][4]; double y0=new double [4]; double y1=new double [4]; double y2=new double [4]; double y3=new double [4]; double y4=new double [4]; cout Введите матрицу n ; fori=0;i 4;i {forj=0;j 4;j {cin c[i][j];}} y0[0]=1; y0[1]=0; y0[2]=0; y0[3]=0; y1[0]=0.0; forj=0;j 4;j {y1[j]=y0[0]c[j][0]y0[1]c[j][1]y0[2]c[j][2]y0[3]c[j][3];} forj=0;j 4;j...

Украинкский

2013-09-09

90.5 KB

2 чел.

еревко О.В.

Лабораторна робота №18

Тема. Метод Крилова побудови власного багаточлена матриці.

Мета. Навчитися знаходити власний багаточлен матриці методом Крилова.

Устаткування: лист формату А4, ручка, програмне забезпечення Borland C++

Хід роботи

  1.  Індивідуальне завдання.
  2.  Правила техніки безпеки
  3.  Теоретичні дані

Знайти власний багаточлен матриці А по методу Крилова, використовуючи метод Гаусса.

№16

#include<iostream.h>

#include<math.h>

void main()

{int i,j;

double x1,x2,x3,x4;

double a[4][5];

double b[4][5];

double c[4][4];

double *y0=new double [4];

double *y1=new double [4];

double *y2=new double [4];

double *y3=new double [4];

double *y4=new double [4];

cout<<"Введите матрицу\n";

for(i=0;i<4;i++)

{for(j=0;j<4;j++)

{cin>>c[i][j];}}

y0[0]=1;         y0[1]=0;        y0[2]=0;       y0[3]=0;     y1[0]=0.0;

for(j=0;j<4;j++)

{y1[j]=y0[0]*c[j][0]+y0[1]*c[j][1]+y0[2]*c[j][2]+y0[3]*c[j][3];}

for(j=0;j<4;j++)

{y2[j]=y1[0]*c[j][0]+y1[1]*c[j][1]+y1[2]*c[j][2]+y1[3]*c[j][3];}

for(j=0;j<4;j++)

{y3[j]=y2[0]*c[j][0]+y2[1]*c[j][1]+y2[2]*c[j][2]+y2[3]*c[j][3];}

for(j=0;j<4;j++)

{y4[j]=y3[0]*c[j][0]+y3[1]*c[j][1]+y3[2]*c[j][2]+y3[3]*c[j][3];}

for(i=0;i<4;i++)

{a[i][3]=y0[i];}

for(i=0;i<4;i++)

{a[i][2]=y1[i];}

for(i=0;i<4;i++)

{a[i][1]=y2[i];}

for(i=0;i<4;i++)

{a[i][0]=y3[i];}

for(i=0;i<4;i++)

{a[i][4]=-y4[i];}

if(a[0][0]==0) {cout<<"Метод Гаусса не применим";

return;}

for(j=0;j<5;j++)

{b[0][j]=a[0][j]/a[0][0];}

for(j=0;j<5;j++)

{b[1][j]=a[1][j];}

for(j=0;j<5;j++)

{a[1][j]=a[1][j]-b[0][j]*b[1][0];}

for(j=0;j<5;j++)

{b[2][j]=a[2][j];}

for(j=0;j<5;j++)

{a[2][j]=a[2][j]-b[0][j]*b[2][0];}

for(j=0;j<5;j++)

{b[3][j]=a[3][j];}

for(j=0;j<5;j++)

{a[3][j]=a[3][j]-b[0][j]*b[3][0];}

if(a[1][1]==0) {cout<<"Метод Гаусса не применим";

return;}

for(j=0;j<5;j++)

{b[1][j]=a[1][j]/a[1][1];}

for(j=0;j<5;j++)

{b[2][j]=a[2][j];}

for(j=0;j<5;j++)

{a[2][j]=a[2][j]-b[1][j]*b[2][1];}

for(j=0;j<5;j++)

{b[3][j]=a[3][j];}

for(j=0;j<5;j++)

{a[3][j]=a[3][j]-b[1][j]*b[3][1];}

if(a[2][2]==0) {cout<<"Метод Гаусса не применим";

return;}

for(j=0;j<5;j++)

{b[2][j]=a[2][j]/a[2][2];}

for(j=0;j<5;j++)

{b[3][j]=a[3][j];}

for(j=0;j<5;j++)

{a[3][j]=a[3][j]-b[2][j]*b[3][2];

}

x4=a[3][4]/a[3][3];

x3=b[2][4]-b[2][3]*x4;

x2=b[1][4]-b[1][2]*x3-b[1][3]*x4;

x1=b[0][4]-b[0][1]*x2-b[0][2]*x3-b[0][3]*x4;

cout<<"x1="<<x1<<"\nx2="<<x2<<"\nx3="<<x3<<"\nx4="<<x4;

}

Результат программы

  1.  Контрольні питання
  •  Дайте визначення власного багаточлена матриці.
  •  Сформулюйте задачу знаходження власного багаточлена матриці по методу Крилова.
  •  Яка ідея методу Крилова знаходження власного багаточлена?
  •  Які допоміжні методи використовуються в методі Крилова?

Як продовжити рішення, якщо по будь-якому методу отримана система не має


 

А также другие работы, которые могут Вас заинтересовать

69749. Модуль Dos 21 KB
  Dos дозволяє обмінюватися інформацією з операційною системою. Системний час переривання стани параметрів оточення процедури обробки процесів робота з дисковим простором всім цим займається модуль Dos. Модуль Dos і WinDos Модулі Dos і WinDos реалізують численні процедури і функції...
69750. Параметри-змінні 25 KB
  Для того, щоб результат обчислень у тілі процедури зручно було використати в програмі, треба не фіксувати змінну, якій присвоюється одержане значення, а зробити її також параметром. Позначимо цю змінну, наприклад, res і введемо її в список формальних параметрів процедури.
69751. Принцип локалізації 38 KB
  Метод покрокової деталізації та апарат процедур якраз і дають змогу вести таку паралельну розробку програм. Створені часткові алгоритми подають у вигляді досить автономних частин програми - описів процедур, які потім достатньо вставити в розділ опису процедур і функцій програми.
69752. Параметри-процедури і параметри-функції 28.5 KB
  Як формальні параметри в мові Паскаль, крім параметрів-значень і параметрів-змінних, використовують також імена процедур і функцій. Параметри-процедури в списку формальних параметрів в авторській версії Паскаль зазначають після службового слова procedure.
69753. Перетворення типів 28.5 KB
  Однак Турбо Паскаль допускає в певних межах такі перетворення які треба задавати в явному вигляді. Є три способи задавати перетворення типів: неявні перетворення використання стандартних функцій і явні перетворення.
69754. Вставляння заданого елемента 27.5 KB
  Заданий елемент у рядок вставлятимемо за вказівкою на ланку, після якої він повинен бути. Нехай початковий динамічний рядок має вигляд, показаний на рис. 11.3. Після В треба вставити D. Цей випадок схематично зображено на рис...
69755. Шукання елемента списку 22.5 KB
  Алгоритм шукання елемента в списку аналогічний до шукання в динамічному рядку. Тому для списку теж складемо логічну функцію, побічним ефектом якої є інформація про першу за порядком ланку, яка містить шуканий елемент.
69756. Поняття про графи і дерева 39 KB
  Графом називають скінченну множину точок - вершин графа, для деяких пар якої налагоджені зв’язки - ребра графа. Розглянемо використання графів для зображення динамічних структур. Нехай є деяка структура, що складається з записів, пов’язаних між собою системою вказівок...
69757. Особливості використання динамічних змінних 26.5 KB
  3 доступ до динамічних змінних відбувається за допомогою змінних з вказівником. Множина операцій над змінними з вказівником визначена типом цих динамічних змінних. Зрозуміло що для реалізації цього алгоритму можна було б не використовувати вказівних змінних і динамічних структур...