Студопедия — СХЕМА ПРОГРАММЫ
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

СХЕМА ПРОГРАММЫ






Основная программа:

ЛИСТНИНГ программы

Program LU;

const n=10;

Type

ivect = array [1..n] of integer;

rmatr = array [1..n,1..n] of real;

rvect = array [1..n] of real;

function norma(var a:rmatr):real;

var i,j:integer;

s,norm:real;

Begin

norm:=0;

for i:=1 to n do

Begin

s:=0;

for j:=1 to n do s:=s+abs(a[i,j]);

if s>norm then norm:=s;

End;

norma:=norm;

End;

procedure DECOMP(var a:rmatr; var ip,jp:ivect;var eps,det,norm:real;var ifsolve:boolean);

Label 10;

Var

i,j,k,km,im,jm:integer;

s,am:real;

Begin

ifsolve:=true;det:=1.0;norm:=0;

for i:=1 to n do

Begin

ip[i]:=i; jp[i]:=i;

End;

for i:=1 to n do

Begin

s:=0;

for j:=1 to n do s:=s+abs(a[i,j]);

if s>norm then norm:=s;

End;

eps:=eps*norm;

for k:=1 to n-1 do

Begin

am:=abs(a[k,k]);

for i:=k to n do

for j:=k to n do

if abs(a[i,j])>=am then

Begin

im:=i; jm:=j;

am:=abs(a[i,j]);

End;

if (im<>k) then

Begin

for i:=1 to n do

Begin

am:=a[k,i]; a[k,i]:=a[im,i]; a[im,i]:=am;

End;

km:=ip[k]; ip[k]:=ip[im]; ip[im]:=km; det:=-det;

End;

if (jm<>k) then

Begin

for j:=1 to n do

Begin

am:=a[j,k]; a[j,k]:=a[j,jm];

a[j,jm]:=am;

End;

km:=jp[k]; jp[k]:=jp[jm]; jp[jm]:=km; det:=-det;

End;

if abs(a[k,k])>=eps then

for i:=k+1 to n do

Begin

am:=a[i,k]/a[k,k];

a[i,k]:=am;

for j:=k+1 to n do

Begin

a[i,j]:=a[i,j]-am*a[k,j];

End;

End

else begin ifsolve:=false; goto 10 end;

End;

10:

if ifsolve and (abs(a[n,n])>=eps) then

for k:=1 to n do begin

det:=det*a[k,k];

End

else det:=0

End;

procedure SOLVE(var a:rmatr;var ip,jp:ivect;var x:rvect;b:rvect);

Var

y:rvect;

i,j:integer;

s:real;

Begin

for i:=1 to n do

Begin

y[i]:=b[ip[i]];

End;

for i:=2 to n do

Begin

s:=y[i];

for j:=1 to i-1 do

Begin

s:=s-a[i,j]*y[j];

End;

y[i]:=s;

End;

b[n]:=y[n]/a[n,n];

for i:=n-1 downto 1 do

Begin

s:=y[i];

for j:=i+1 to n do s:=s-a[i,j]*b[j];

b[i]:=s/a[i,i];

End;

for i:=1 to n do x[jp[i]]:=b[i];

End;

Var

a,a1,Ao,E:rmatr;

b,b1,x:rvect;

ip,jp:ivect;

f:Text;

eps,det,s,norm1,norm2,cond:real;

i,j,m,k:integer;

ifsolve:boolean;

Begin

writeln('Vvedite nomer SLAU');







Дата добавления: 2015-06-15; просмотров: 406. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Прием и регистрация больных Пути госпитализации больных в стационар могут быть различны. В цен­тральное приемное отделение больные могут быть доставлены: 1) машиной скорой медицинской помощи в случае возникновения остро­го или обострения хронического заболевания...

ПУНКЦИЯ И КАТЕТЕРИЗАЦИЯ ПОДКЛЮЧИЧНОЙ ВЕНЫ   Пункцию и катетеризацию подключичной вены обычно производит хирург или анестезиолог, иногда — специально обученный терапевт...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия