Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Розробка програми для розв'язання систем лінійних рівнянь

Реферат Розробка програми для розв'язання систем лінійних рівнянь






if (ans == '1 ')// Метод простих ітерацій

{

s = 0;

do

{

k = 0;

for (int i = 0; i

{

X [i] = B [i] * (-1);

for (int j = 0; j

{X [i] = X [i] + (double) A [i] [j] * Z [j];}

if (A [i] [i]! = 0)

{

if (fabs ((double) X [i]/A [i] [i])> = 0.0001) k = 1;// перевірка на збіжність

X [i] = Z [i] - (double) X [i]/A [i] [i];// якщо сходиться-> k = 0 -> вихід з циклу

}

}

for (int i = 0; i

Z [i] = X [i];

s + +;// + + ітерація

if (s == 100) k = 0;// якщо ітерацій> 100 -> вихід з циклу

}

while (k! = 0);

}

if (ans == '2 ')// Метод Зейделя

{

s = 0;

do

{

k = 0;

for (int i = 0; i

{

X [i] = B [i] * (-1);

for (int j = 0; j

{

if (A [i] [j]! = 0)

X [i] = X [i] + (double) A [i] [j] * Z [j];

}

if (A [i] [i]! = 0)

{

if (fabs ((double) X [i]/A [i] [i])> = 0.001) k = 1;// перевірка на збіжність

X [i] = Z [i] - (double) X [i]/A [i] [i];

Z [i] = X [i];

}

}

s + +;

if (s == 100) k = 0;// кількість ітерацій повинно бути менше 100

}// Інакше цикл припиняється-> система не має рішень

while (k! = 0);

}


cprintf (" n n r А бзсвл н Є В®-зҐ-л ");

cprintf ("% s", " n n n r "В« П Їа В® В¤ В® В«| Г-Еп - | В¬ Е⥠"); p> do

{ch = (char) getch ();}

while (ch! = 13);

}

// --------------------------------------------- ---------------------------------


// функція виводу даних на екран або у файл

// --------------------------------------------- ---------------------------------

void output (double ** & A, double * & B, double * & X, int & n, int & s)

{

char ch_out;

int xx = 5, yy = 5;// Змінні скролінгу

float temp;// Допоміжна змінна


window (1,25,80,25);

textbackground (LIGHTGRAY);

clrscr ();

cprintf ("Alt + X - exit Arrows - scrolling ");

gotoxy (70,1);

textcolor (BLACK);


window (3,3,78,23);

textbackground (LIGHTGRAY);

textcolor (BLACK);

clrscr ();


if (s! = 100)// Якщо система має рішення

{

window (3,4,66,4);

textbackground (LIGHTGRAY);

clrscr ();

cprintf (" r 'Еб⥠¬ га СћҐЕ В©: ");// система рівнянь


window (3,12,66,12);

textbackground (LIGHTGRAY);

clrscr ();

cprintf (" r, ҐЄв В® а ॳҐЕ В© ");// вектор рішень


for (int i = 0; i

{

if (i == 0)

{

window (3,13,30,19);

textbackground (LIGHTGRAY);

clrscr ();

}

if (i == 5)// якщо число рівнянь> 5 -> у другій стовпець

{

window (32,13,70,19);

textbackground (LIGHTGRAY);

clrscr ();

}

cprintf (" n r X (% d) =% .4 f ", i +1, X [i]);// вивід рішення

}


window (3,20,66,20);

textbackground (LIGHTGRAY);

clrscr ();

cprintf (" n n r-ЕбВ« В® ЕвҐа ж В©: % D ", s);// число ітерацій

}// If ...

else cprintf (" n n 'Еб⥠¬-Г Е В¬ ҐҐв ॳҐ-Е В© ");


window (14,22,66,22);

textbackground (LIGHTGRAY);

clrscr ();

cprintf (" n n r" В«п Їа В® В¤ В® В«| Г-Еп - | В¬ Е⥠"); br/>

if (s! = 100)// Якщо система має рішення, тобто число ітерацій <100

{

window (4,5,77,10);// вікно виведення системи рівнянь (неактивне)

textbackground (LIGHTGRAY);// Сірий фон

textcolor (BLACK);

clrscr ();


if (n <= 5)// Якщо система має не більше 5 рівнянь

{

for (int i = 0; i

{

cprintf (" n r "); p> for (int j = 0; j <= n; j + +)

{

if (j == n) cprintf ("=% .2 f", B [i]);// виведення вектора вільних членів

else

{

if (j

{

if (A [i] [j]> 0) cprintf ("+% .2 fX (% d)", A [i] [j], j +1);

else

{

temp = A [i] [j] * (-1);// якщо виводиться негативний коефіцієнт

cprintf (" -% .2 FX (% d) ", temp, j +1);

}

}

}

}

}// For (i

}// If (n <= 5) ...

else// Якщо система має більше 5 рівнянь

{

window (4,6,72,10);// вікно виведення системи рівнянь (активне)

textbackground (BLUE);// Синій фон

textcolor (WHITE);


do

{

clrscr ();

for (int i = xx-5; i

{

cprintf (" n r "); p> for (int j ...


Назад | сторінка 8 з 10 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Рішення систем нелінійніх рівнянь. Метод ітерацій. Метод Ньютона-Канторов ...
  • Реферат на тему: Розв'язання алгебраїчніх рівнянь. Метод простий ітерацій та Ньютона
  • Реферат на тему: Рішення нелінійних рівнянь методом ітерацій
  • Реферат на тему: Порівняння ефективності різних методів розв'язання систем лінійних алге ...
  • Реферат на тему: Метод Гаусса розв'язання систем лінійних алгебраїчних рівнянь