Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.04.2014, 15:58   #21
now2
Форумчанин
 
Регистрация: 12.03.2014
Сообщений: 217
По умолчанию

Цитата:
Сообщение от Streletz Посмотреть сообщение
Запустите программу и получите результат. Подставьте его в исходную систему уравнений.
Если все без исключения уравнения становятся верными равенствами, то всё нормально. Если нет, то ищите ошибку в алгоритме.
Вот и вся проверка.
программа не работает выдает ошибку
now2 вне форума Ответить с цитированием
Старый 29.04.2014, 16:30   #22
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
Плохо

Цитата:
Сообщение от now2 Посмотреть сообщение
программа не работает выдает ошибку
И что? В чём состоит ошибка? Что пишет компилятор? Какая строка кода? Если ошибка возникает в уже скомпилированной работающей программе, то что пишет она сама при этом?
В общем всё это в виде текста и скринов в студию, иначе говорить будет не о чем!
Streletz вне форума Ответить с цитированием
Старый 29.04.2014, 16:53   #23
now2
Форумчанин
 
Регистрация: 12.03.2014
Сообщений: 217
По умолчанию

Цитата:
Сообщение от Streletz Посмотреть сообщение
И что? В чём состоит ошибка? Что пишет компилятор? Какая строка кода? Если ошибка возникает в уже скомпилированной работающей программе, то что пишет она сама при этом?
В общем всё это в виде текста и скринов в студию, иначе говорить будет не о чем!
вот короче )))) программа
для первого задания
у меня просьба такая проверить то что она выдает так и должно быть ?
program iter;
uses CRT;
var i,j,n,k,V:integer;
M:longint;
A,B:array [1..24,1..24] of double;
E,S,Cc,maxDi,C,Mm: double;
Xx,X,Ba,Bd: array [1..24] of double;
z:char;

procedure Matrln;
begin
for var i:=1 to n do
for var j:=1 to n do
read(A[i,j]);
end;

procedure Vectln;
begin
for var i:=1 to n do
read(Ba[i]);
end;

BEGIN
ClrScr;
Repeat
write('Vvedite nomer variant V=');
readln(V);
if V=0 then
writeln('------------Testoviy primer----------')
else
writeln('------------Variant',V,'----------');
writeln('------------VVOD ISHODNIX DANNIX :----------');
write('Vvedite tochnost vichisleniu, E=');
readln(E);
write('Vvedite razmernost sistemi, N=');
readln(N);
write('Vvodite postrochno matrix A sistemi');
Matrln;
write('Vvodite vector stolbec B sistemi');
Vectln;

maxDi:=-1000;
for i:=1 to n do begin
B[i,i]:=0;
for j:=1 to n do
if j<>i then B[i,j]:=-(A[i,j]/A[i,j]);
Bd[i]:=Ba[i]/A[i,i];
if Bd[i]>maxDi then maxDi:=Bd[i]
end;
writeln('maxDi=',maxDi:8:4);

C:=0;
for i:=1 to n do begin
Xx[i]:=Bd[i];
S:=0;
for j:=1 to n do
S:=S+abs(B[i,j]);
if C<=S then C:=S;
end;
writeln('C=',C:6:4);

if C<1 then begin
Mm:=abs((1/ln(C))*(ln(maxDi)-ln(E*(1-C)))-1);
M:=Round(Mm);
if Frac(Mm)<0.5 then M:=M+1;
writeln('Kolichestvo iterachiy M=',M:3);

for k:=1 to M do begin
for i:=1 to n do begin;
Cc:=0;
for j:=1 to n do
Cc:=Cc+B[i,j]*Xx[j];
X[i]:=Bd[i]+Cc;
end;
for i:=1 to n do Xx[i]:=X[i];
end;

write('X= [');
for i:=1 to n do write(X[i]:8:4);
writeln(']');
end
else writeln('Yslovie shodimosti ne vipoln9ets9');
write('Bydete prodolshat vichisleniy?(Y/N) Y');
z:=ReadKey;
writeln(z);
until (z='N') or(z='n');
End.
now2 вне форума Ответить с цитированием
Старый 29.04.2014, 17:04   #24
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
Плохо

Цитата:
проверить то что она выдает так и должно быть
Ну так проверяйте. В чём проблема?
Простите, но как уже неоднократно говорилось на этом форуме [Помочь]<>[Сделать за Вас]. Без обид. Практически все Ваши темы сводятся к одному и тому же "сделать", "проверить" и т.д. за Вас.
Если код Ваш, то особых проблем с его проверкой быть не должно.
Сделайте в плане Вашей программы наконец-то хоть что-нибудь сами!
Streletz вне форума Ответить с цитированием
Старый 29.04.2014, 17:10   #25
now2
Форумчанин
 
Регистрация: 12.03.2014
Сообщений: 217
По умолчанию

Цитата:
Сообщение от Streletz Посмотреть сообщение
Ну так проверяйте. В чём проблема?
Простите, но как уже неоднократно говорилось на этом форуме [Помочь]<>[Сделать за Вас]. Без обид. Практически все Ваши темы сводятся к одному и тому же "сделать", "проверить" и т.д. за Вас.
Если код Ваш, то особых проблем с его проверкой быть не должно.
Сделайте в плане Вашей программы наконец-то хоть что-нибудь сами!
да блин че в падлу просто посмотреть результат работы программы? Вы говорите что там должно что -то быть одиноково, у меня нет так одинакового просто два числа одно из которых число итераций
now2 вне форума Ответить с цитированием
Старый 06.05.2014, 13:55   #26
now2
Форумчанин
 
Регистрация: 12.03.2014
Сообщений: 217
По умолчанию

Цитата:
Сообщение от ZX Spectrum-128 Посмотреть сообщение
ничего не отвечу, пока не вобьете в яндексе
Метод итераций для решения слау паскаль
Код:
Uses Crt;
Const n=4 { Число уравнений в системе };
Type Masiv = array[1..n] of real;
Var A:array[1..n,1..n+1] of real; { Матрица коэффициентов aij }

B:array[1..n,1..n] of real; { Матрица B }

C:array[1..n,1..n+1] of real; { Матрица С }

X { массив корней }:Masiv;

Y { Массив чисел y }:Masiv;

i,j,m,k:integer;

fl:text; { Файловая переменная, в которую выводится результат }

Sum,Sum1:real;
BEGIN

Clrscr;

Writeln(' КОЭФФИЦИЕНТЫ УРАВНЕНИЙ: ');

for i:=1 to n do

for j:=1 to n+1 do

begin

Write(' A(',i,',',j,')= '); Read(A[i,j]);{Ввод коэффициентов aij}

end;

Writeln;

Writeln;
{ Вывод на печать исходной матрицы }

Assign(fl,'con');

Rewrite(fl);

Writeln(fl,' ИСХОДНАЯ МАТРИЦА');

for i:=1 to n do

begin

for j:=1 to n do Write(fl,A[i,j]:6:3,' * X',j,' ');

Writeln(fl,'= ', A[i,n+1]:6:3);

end;

Writeln(fl);


{ Присваивание первому столбцу матрицы B первого столбца исходной матрицы

и определение коэффициентов c1,j }

for i:=1 to n do B[i,1]:=A[i,1];

for j:=2 to n+1 do C[1,j]:=A[1,j] / B[1,1];
Y[1]:=A[1,n+1] / B[1,1]; { Определение первого значения y }
FOR m:=2 TO n DO

BEGIN

j:=m;

i:=m;

Repeat
{ Вычисление суммы }

Sum:=0;

k:=1;

Repeat

Sum:=Sum + B[i,k] * C[k,j];

k:=k+1;

Until k>j-1;
{ Вычисление коэффициента матрицы B }

B[i,j]:=A[i,j] - Sum;

i:=i+1;
Until i>n;
i:=m;

j:=m+1;

Repeat

{ Вычисление суммы для С и Y }

Sum:=0; Sum1:=0;

k:=1;

Repeat

Sum:=Sum + B[i,k] * C[k,j];

Sum1:=Sum1 + B[i,k] * Y[k];

k:=k+1;

Until k>i-1;

{ Вычисление коэффициента матрицы C }

C[i,j]:=1 / B[i,i] * (A[i,j] - Sum);

j:=j+1;

Until j>n+1;
{ Вычисление коэффициента Y }

Y[i]:=1 / B[i,i] * (A[i,n+1] - Sum1);

END;

{ Вычисление корней системы, начиная с максимального индекса

и их печать }

X[n]:=Y[n];

ClrScr;

Writeln(fl,'РЕЗУЛЬТАТЫ РАСЧЕТОВ:');

Writeln(fl,'X',n,'=',X[n]:9:5);

for i:=n-1 downto 1 do

Begin

Sum:=0; k:=i+1;

While k<=n do

Begin

Sum:=Sum + C[i,k] * X[k];

k:=k+1;

End;

X[i]:=Y[i] - Sum;

Writeln(fl,'X',i,'=',X[i]:9:5);

End;

Close(fl);

END.
почему когда вводу данные пишет какой то текст мне а корни не выводит



___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 06.05.2014 в 14:02.
now2 вне форума Ответить с цитированием
Старый 06.05.2014, 14:07   #27
now2
Форумчанин
 
Регистрация: 12.03.2014
Сообщений: 217
По умолчанию

плиз)))) не понимаю почему когда запускается программа автоматически закрывается
now2 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
написать програму для решения системы линейных алгебраических уравнений Горянський Павло C++ Builder 11 16.11.2014 01:54
Метод итераций для систем serhan Паскаль, Turbo Pascal, PascalABC.NET 1 29.11.2011 18:20
Метод Холесского (Краута) для решения систем линейных уравнений (скрин с алгоритмом вложен)) Bogdand Помощь студентам 0 24.06.2011 07:54
Курсовой проект на тему решение систем линейных уравнений методом посл.итераций Ericnex Помощь студентам 1 11.05.2010 15:58
метод прогонки решения линейных уравнений Laplas Общие вопросы C/C++ 4 03.10.2009 12:13