Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизРациональная интерполяция с помощью непрерывных дробей. Найти похожие ветки
← →
SvK.droNe © (2012-04-02 09:28) [0]Помогите пожалуйста с массивами, программа работает но вывод неправельный.
Код:
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils;
label 150,130,250;
const MaxN=10;
var
A,B,D,P,Q,X,Y:array[0..MaxN] of real;
i,j,m,m1:integer;
r,s,k:real;
begin
writeln ("Vvedit kilcist tochok m=");readln(m); // 20
for i:=1 to m do
begin
writeln("x[" ,i, "]="); readln (x[i]);
end;
for i:=1 to m do
begin
writeln("y[" ,i, "]="); readln (y[i]);
end; //30
m1:= m div 2;
for j:=1 to m do
begin
R:=Y[j]; S:=X[j];
if j=1 then goto 130;
for i:=1 to j-i do
begin
r:= (S-X[i])/(R-A[i]);
end;
130:A[j]:=r; //130
end;
P[0]:=1; Q[0]:=A[1];K:=1;
150: for i:=1 to m1 do
begin
P[i]:=0; Q[i]:=0;
end;
for i:=2 to m do //160
begin
for j:=(i div 2) downto 1 do //170
begin
r:=A[i]*Q[j]-X[i-1]*P[j]+P[j-1];
P[j]:=q[j];q[j]:=r;
end;
R:=A[i]*Q[0]-X[i-1]*P[0]; //200
P[0]:=Q[0];
Q[0]:=R;
end;
if k=2 then goto 250; //220
for i:=0 to m1 do
begin
B[1]:=Q[1];
k:=2; P[0]:=0; Q[0]:=1; goto 150;
end;
for i:=0 to m1 do
begin
250: d[i]:=Q[i];
end;
Writeln("Koeficientu:");
writeln ("Koeficientu A:");
for i:=1 to m do
begin
writeln ("A(",i,")=");
Writeln (A[i]:2:2);
end;
writeln ("Koeficientu B:");
for i:=0 to m1 do
begin
writeln ("B(",i,")=");
Writeln (B[i]:2:2);
end;
writeln ("Koeficientu D");
for i:=0 to m1 do
begin
writeln ("D(",i,")=");
writeln (D[i]:2:2);
end;
readln;
end.
← →
Сергей М. © (2012-04-06 11:53) [1]Отладчик что говорит ?
← →
Jeer © (2012-04-06 14:36) [2]
> программа работает
Если программа скомпилировалась, то, с большой вероятностью, она будет работать.
Вопрос "Как ?" - это следующий вопрос.
← →
ford © (2012-04-06 18:59) [3]Увидев ЭТО
> if j=1 then goto 130;
...
> 130:A[j]:=r;
брррр, тебя кто так писать код учил?
убейте своего учителя информатики, и повесьте труп на фонарном столбе, чтобы другим не повадно было!!
"ЭТО" преобразуется в
A[1]:=Y[1];
for j:=2 to m do
begin
R:=Y[j]; S:=X[j];
for i:=1 to j-i do
begin
r:= (S-X[i])/(R-A[i]);
end;
end;
Вообще посмотрите внимательно на строчки
for i:=0 to m1 do
begin
B[1]:=Q[1];
k:=2; P[0]:=0; Q[0]:=1; goto 150;
end;
← →
ford © (2012-04-06 19:06) [4]И к стати,
...
if j=1 then goto 130;
for i:=1 to j-i do
begin
...
при каждой итерации, чему у Вас равна переменная i ?
в этот цикл, Ваша программа не зайдет никогда в жизни :)
← →
Jeer © (2012-04-06 19:40) [5]Да там полный бред, передранный из Бейсика.
Массив объявлен с нуля ( динам, поскольку ), а используется с 1.
Ну и кому это надо ?
Ф топку.
← →
ford © (2012-04-06 20:28) [6]
> Jeer © (06.04.12 19:40) [5]
нуу будьте снисходительны, сейчас в школах такую ахинею по информатике преподают, что этот "опус" еще так-себе :) , я и по хуже видел :)
но вот препода .... точно повесить, причем за яйцЫ :)) (если нету, то пришить и повесить :)) )
← →
Jeer © (2012-04-06 20:45) [7]
> нуу будьте снисходительны,
Не могу, иначе - это пособничество преподам-недоумкам и без-мысли-учащимся.
← →
MBo © (2012-04-06 20:56) [8]Код из библиотеки численного анализа НИВЦ МГУ. Изначально на фортране, отсюда и метки и единичная база массивов. (Не сомневаюсь, что он был отлажен и работал корректно).
← →
ford © (2012-04-06 20:58) [9]
> это пособничество преподам-недоумкам
А Вы лично как представляете себе педагога за 5000-7000р. в месяц ?
вот, сами посмотрите вакансии
http://www.rostobr.ru/activity/cadres/vacancy/
я не просто так говорю :)
Я лично, ни-за что не пойду преподавать в школу за такие деньги :)
Преподавать что-либо за прожиточный минимум....
http://www.rostov-gorod.ru/?ID=3242
Это КОЩУНСТВО :)
ну и как следствие... такие вот "опусы" от таких вот "учеников", которым "преподают" за такие деньги, такие вот "преподаватели"
:( груустно однако
← →
ford © (2012-04-06 21:00) [10]
> MBo ©
дайте ссылку на код
← →
Сергей М. © (2012-04-06 21:00) [11]
> нуу будьте снисходительны
ага.
и будучи снисходительными не удивляйтесь потом почему наши спутники с орбиты горохом падают в океаны)
← →
MBo © (2012-04-06 21:04) [12]http://num-anal.srcc.msu.ru/lib_na/cat/cat913.htm
Перевод на Паскаль-Дельфи появился, видимо, недавно, раньше не было. С динмассивами, вероятно, перемудрили (код не смотрел, просто сомневаюсь, что на нулевую базу автоматически переведено)
← →
ford © (2012-04-06 21:12) [13]
> Сергей М.
Извиняюсь, судя по
> MBo © (06.04.12 21:04) [12]
>
> http://num-anal.srcc.msu.ru/lib_na/cat/cat913.htm
это не "школьная программа", сл-но..... еще хуже
этот "вопрошающий" из института... и явно не сельхозмашиностроения..... !!!!
> наши спутники с орбиты горохом падают в океаны)
тут уж не только спутники будут падать .... :(
← →
Jeer © (2012-04-06 21:35) [14]
> Код из библиотеки численного анализа НИВЦ МГУ.
Борис !
В этом-то и беда, что существуют и выложены в Инет изумительные алгоритмы, созданные и отлаженные поколениями математиков и алгоритмистов, но неучи используют их бездумно и, вполне вероятно, включая их "ремиксы" в реальные проекты, типа "Фобос в грунт"
← →
ford © (2012-04-06 21:44) [15]
> включая их "ремиксы" в реальные проекты, типа "Фобос в грунт"
нифига-се "ремиксы" :)
← →
ford © (2012-04-06 21:51) [16]
> Jeer ©
Кстати, а Вы давно общались в проф. плане с выпускниками институтов?
Я вот недавно был, так сказать удручен... мягко выражаясь - "ЖО-ПА полная"
они ничего не знают... только как бабло считать.....
← →
Jeer © (2012-04-06 22:20) [17]
> Кстати, а Вы давно общались в проф. плане с выпускниками
> институтов?
Преподавал в Бауманском и готовил группу из 5-ти человек для серьезной работы с моим участием.
Работа была выполнена, пятеро потом устроились вполне адекватно.
Было это где-то в 2005.
Из тех выпускников, кого встречаю сейчас ( впрочем, Калуга - не лучший расклад, в этом плане ) - ничего из себя, как инженеры, не представляют.
Но это не их вина.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.091 c