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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.05.2010, 15:54   #1
Milwuakee
Новичок
Джуниор
 
Регистрация: 20.05.2010
Сообщений: 3
Печаль "Syntax error" не могу исправить

всем доброго времени суток!

в общем сразу к проблеме) делаю в универе курсач, взял готовую прогу, но почему то мне выдается ошибка:

"Fatal: Syntax error, ";" expected but "UNTIL" found"

Вот текст программы:

const M=30;
N=30;
T=100;
dt=0.01;
xmax=3; ymax=3;
xg=1.5;
var i,j,F,c,s1,s2,s3,sr1,sr2,sr3,sr4:in teger;
h1,h2,a,b:real;
L1,K1:array[0..M] of real;
L2,K2:array[0..n] of real;
R,v,w:array[0..M,0..N] of real;
ut,u,ex,ey:text;
s:string[10];
begin
h1:=xmax/M;
h2:=ymax/N;
F:=0; i:=0; j:=0;
s1:=round(xg/h1);
s2:=round(1.5/h2);

sr1:=round(2/h1);
sr2:=round(1/h2);
sr3:=round(1/h2);
sr4:=round(2/h2);

for j:=0 to N do
for i:=0 to M do
begin
if (j=0) and(i<s2) then
begin w[i,j]:=-300; v[i,j]:=w[i,j]; end;
if (j=n) and(i<s2) then
begin w[i,j]:=300; v[i,j]:=w[i,j]; end;

end;
for i:=0 to sr2 do
for j:=sr1 to n do R[i,j]:=-4000;
for i:=sr4 to m do
for j:=0 to sr3 do R[i,j]:=4000;

Repeat
inc(F);

for j:=1 to s1-1 do
begin
for i:=0 to m do
begin

if i=0 then begin l1[i]:=800*h1; k1[i]:=1; end
else begin k1[i]:=-dt/(dt*k1[i-1]-2*h1*h1-2*dt);
l1[i]:=(-dt*h1*h1*R[i,j]-dt*l1[i-1]-dt*w[i,j+1]-(2*h1*h1-2*dt)*w[i,j]-dt*w[i,j-1])/(dt*k1[i-1]-2*h1*h1-2*dt);
end;
end;
for i:=m downto 0 do
if i=m then v[i,j]:=w[i,j]
else v[i,j]:=k1[i]*v[i+1,j]+l1[i];
end;


for j:=s1 to n-1 do
begin
for i:=m downto 0 do
begin

if i=m then begin l1[i]:=-800*h2; k1[i]:=1; end
else begin k1[i]:=-dt/(dt*k1[i+1]-2*h1*h1-2*dt);
l1[i]:=(-dt*h1*h1*R[i,j]-dt*l1[i+1]-dt*w[i,j+1]-(2*h1*h1-2*dt)*w[i,j]-dt*w[i,j-1])/(dt*k1[i+1]-2*h1*h1-2*dt);
end;
end;
for i:=0 to m do
if i=0 then v[i,j]:=w[i,j]
else v[i,j]:=k1[i]*v[i-1,j]+l1[i];
end;

{_____________________________
------------------------------
_______________________________}

for i:=1 to m-1 do
begin
for j:=0 to n do
begin


if j=0 then begin l2[j]:=v[i,j]; k2[j]:=0; end
else begin k2[j]:=-dt/(dt*k2[j-1]-2*h2*h2-2*dt);
l2[j]:=(-dt*h2*h2*R[i,j]-dt*l2[j-1]-dt*v[i+1,j]-(2*h2*h2-2*dt)*v[i,j]-dt*v[i-1,j])/(dt*k2[j-1]-2*h2*h2-2*dt);
end;

end;
for j:=n downto 0 do
begin
w[0,j]:=v[0,j];
w[m,j]:=v[m,j];

if j=n then w[i,j]:=v[i,j]
else w[i,j]:=k2[j]*w[i,j+1]+l2[j];
end;

{-------------------------------------------------------------}
until f>t ;

assign(u,'data.doc');
assign(ex,'ex.doc');
assign(ey,'ey.doc');
rewrite(u);rewrite(ex);rewrite(ey);
j:=0;
repeat i:=0;
repeat
str(w[i,j]:0:0,s);
write(u,s,'; ');
if ((i>0) and (i<m))then
str(((-w[i+1,j]+w[i-1,j])/(h1*2)):1:1,s)
else if i=0 then str(((-w[i+1,j]+w[i,j])/h1):1:1,s)
else str(((-w[i,j]+w[i-1,j])/h1):1:1,s);
write(ex,s,'; ');
if ((j>0) and (j<N))then
str(((-w[i,j+1]+w[i,j-1])/(2*h2)):1:1,s)
else if j=0 then str(((-w[i,j+1]+w[i,j])/h2):1:1,s)
else str(((-w[i,j]+w[i,j-1])/h2):1:1,s);
write(ey,s,'; ');
i:=i+1;
until i>m;
writeln(u);writeln(ey);writeln(ex);
j:=j+1;
writeln; writeln;
until j>N;
close(u);close(ex);close(ey); end.

вот где выделено жирным, туда и указывает курсор при компиляции. Сразу скажу, что в программировании я не разбираюсь(

P.S. у меня есть несколько подобных программ, и там все норм рабоатет, никаких ошибок с UNTIL'ом не выдает. Но мне именно эта програма нужна)
Заранее спасибо!
Milwuakee вне форума Ответить с цитированием
Старый 20.05.2010, 16:08   #2
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Вот когда научишься грамотно форматировать код программы, тогда будет понятен уровень вложенности циклов, уровень вложенности if then else, вот тогда сразу найдешь почему возникает такая ошибка. А так сидеть разбираться с программой - глаза выпадут читать такой код... А так, навскидку, похоже где-то пропущен "end".
Перемешивай дело с бездельем и не сойдешь с ума...

Последний раз редактировалось Grag; 20.05.2010 в 16:10.
Grag вне форума Ответить с цитированием
Старый 20.05.2010, 16:22   #3
Milwuakee
Новичок
Джуниор
 
Регистрация: 20.05.2010
Сообщений: 3
Хорошо

ура! действительно не хватало "end;" перед "until f>t;".

Поставил сначала наугад после UNTIL'a, не заработало, потом поставил перед и все норм) я же скарзу сказал, что я 0 в программировании

Спасибо за помощь!
Milwuakee вне форума Ответить с цитированием
Старый 20.05.2010, 16:25   #4
ex.cluz
Участник клуба
 
Аватар для ex.cluz
 
Регистрация: 15.01.2010
Сообщений: 1,325
По умолчанию

Цитата:
делаю в универе курсач
Цитата:
Сразу скажу, что в программировании я не разбираюсь
Тут что-то не так должно быть...
Может задумаетесь, правильный ли вы выбор сделали, когда поступили в универ?
А вообще, на будущее, есть тема на форуме - фриланс, там за ваши деньги не будут обращать внимание на то, что вы в программировании не разбираетесь, все сделают в лучшем виде.
Грибы - они разные. Один тебя накормит, другой тебе кино покажет...
Редактор журнала "
[ПРОграммист]"
Yan's Home Digital Lab
ex.cluz вне форума Ответить с цитированием
Старый 20.05.2010, 16:25   #5
ex.cluz
Участник клуба
 
Аватар для ex.cluz
 
Регистрация: 15.01.2010
Сообщений: 1,325
По умолчанию

. .
Грибы - они разные. Один тебя накормит, другой тебе кино покажет...
Редактор журнала "
[ПРОграммист]"
Yan's Home Digital Lab

Последний раз редактировалось ex.cluz; 20.05.2010 в 16:28. Причина: Нажал 2 раза на "отправить"
ex.cluz вне форума Ответить с цитированием
Старый 20.05.2010, 16:33   #6
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

Цитата:
Тут что-то не так должно быть...
Может задумаетесь, правильный ли вы выбор сделали, когда поступили в универ?
<<offtop>>
Я конечно извеняюсь.Но если человек не на программиста учиться.Или вы думете программированию обучают только по специальности?
にんじゃ
ROMA2PVT вне форума Ответить с цитированием
Старый 20.05.2010, 16:37   #7
Milwuakee
Новичок
Джуниор
 
Регистрация: 20.05.2010
Сообщений: 3
Счастье

В своем выборе я уверен, ибо в названии факультета и специальности на которой я учусь нету таких словосочетаний типа "информатика и вычислительная техника".

Естественно на начальных курсах нам давали основы информатики, но не такие, чтобы писать сложные программы. В нашей группе всего 1-2 человека разбираются в этом, а остальные списывают

если интересно, то моя специальность основана на изучении Неразрушающих Методов Контроля)
Milwuakee вне форума Ответить с цитированием
Старый 22.05.2010, 23:00   #8
ex.cluz
Участник клуба
 
Аватар для ex.cluz
 
Регистрация: 15.01.2010
Сообщений: 1,325
По умолчанию

[OFFTOP]
Milwuakee, извиняюсь, я как-то не подумал про то, что вам информатика может быть "лишней" (хотя как можно знать наперед, знания по какому предмету могут пригодиться в будущем?). Я вот теперь сильно жалею, что плохо занимался высшей математикой в универе, т.к. она сейчас мне очень нужна.
[/OFFTOP]
Грибы - они разные. Один тебя накормит, другой тебе кино покажет...
Редактор журнала "
[ПРОграммист]"
Yan's Home Digital Lab
ex.cluz вне форума Ответить с цитированием
Старый 22.05.2010, 23:08   #9
justso
Инженеришка
Форумчанин
 
Аватар для justso
 
Регистрация: 18.05.2010
Сообщений: 147
По умолчанию

Вставлю свое Я:
Учусь на Инженера-Строителя. Нас обучают программированию, так как цитирую:

"Инженеры должны сами уметь писать себе программы ибо полагаться на программистов - это очень плохая идея."
Ацко 342512564: Если по делу - то в случае острой необходимости. Если просто так - то в любое время.
justso вне форума Ответить с цитированием
Старый 22.05.2010, 23:11   #10
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

<<offtop>>
Ну а если я учусь на препода ИЗО.И вопрос: ну и нафик мне информатика?
P.S.Я не на препода изо учусь.
にんじゃ
ROMA2PVT вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обойти "преобразование типа из "string" в "float" невозможно" lexluter1988 Помощь студентам 1 07.08.2010 12:23
strcpy(str, strlen(""), "") - error! nazavrik Общие вопросы C/C++ 2 09.02.2010 17:21
Не могу зайти на сайты "ВКонтакте" и "Одноклассники" (поисковики, сайты антивирусов...) VERSUS Безопасность, Шифрование 53 23.10.2009 16:01
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04