Елена Лаврова
Елена Лаврова

паскаль помогите пожалуйста мне ( не работает код)

program lab5;
uses crt;
const Nmax=100; Mmax=5000; Rmax=2000;
type ar1 = array[1..Nmax] of integer;
ar2 = array[1..Mmax] of integer;
ar3 = array[1..Rmax] of integer;
sa = array[1..1] of integer;
var x:ar1;
y:ar2;
z:ar3;
k,i,j,kol:byte;
f:text;
ch:char;
{----------------------------------------------}
Procedure waitEscape;
var ch:char;
begin
repeat
ch:=readkey;
until ord(ch)=27;
end;
{----------------------------------------------}
procedure load_vector(var x; path:string; n:byte);
var f:text;
i:byte;
begin
assign(f,path);
reset(f);
for i:=1 to n do
read(f,sa(x));
end;
{----------------------------------------------}
procedure veiw_vector(var x; n:byte);
var i:byte;
begin
for i:=1 to n do
write(sa(x),' ');
writeln;
end;
{----------------------------------------------}
procedure continue(var k:byte;ch:char);
begin
writeln('Do You Wish To Continue(Y,N)?');
writeln;
ch:=readkey;
k:=0;
if ch in ['n','N'] then
begin
Writeln('Are You Want To Exit(Y,N)?');
ch:=readkey;
if ch in ['y','Y'] then
k:=1
end;
end;
{----------------------------------------------}
function search_for_el(var x;n:byte):integer;
var i,j:byte;
k:byte;
cond:boolean;
begin
cond:=true;
i:=0;
j:=0;
while cond do
begin
inc(i);
j:=0;
while cond and (j<=n) do
begin
inc(j);
if sa(x)=sa(x)[j] then
if i<>j then
cond:=false;
end;
end;
search_for_el:=sa(x);
end;
{-----------------------------------------------}
procedure main(var x; n:byte);
var i,j:byte;
kol,n1:byte;
s:integer;
tmp:array[1..3] of integer;
begin
s:=search_for_el(x,n);
i:=1;
j:=1;
while i<4 do
begin
if sa(x)[j] <> s then
begin
tmp:=sa(x)[j];
sa(x):=s;
inc(i);
end;
inc(j);
end;
n1:=3-(j-i);
i:=n;
kol:=0;
while kol = s then
begin
for j:=i downto 5 do
sa(x)[j]:=sa(x)[j-1];
inc(kol);
end
else
dec(i);
end;
for i:=4 to 6 do
sa(x):=tmp[i-3];
writeln;
end;
{----------------------------------------}
begin
clrscr;
load_vector(x,'l5m1.txt',10);
load_vector(y,'l5m2.dat',10);
load_vector(z,'l5m3.dat',10);
write('X:');
veiw_vector(x,10);
main(x,10);
write('X(a.c.):');
veiw_vector(x,10);
Writeln;
continue(k,ch);
if k=1 then
exit;
Writeln('-----------------------------------------------------------------');
write('Y: ');
veiw_vector(y,10);
main(y,10);
write('Y(a.c.): ');
veiw_vector(y,10);
writeln;
continue(k,ch);
if k=1 then
exit;
Writeln('-----------------------------------------------------------------');
write('Z: ');
veiw_vector(z,10);
main(z,10);
write('Z(a.c.): ');
veiw_vector(z,10);
writeln;
Writeln('Press Escape If You Want Exit');
WaitEscape;
end.

Zzz
Zzz

1) Нет текста задания, тут категория "программирование", а не "телепаты". Откуда люди узнают, что должна делать программа?
2) Код нужно публиковать на сайте pastebin.com, а сюда ссылку на него. На этом сайте, как видите, он исказился, и программа, если ее скопировать, даже не будет компилироваться.
3) Нет описания, в чем собственно проблема. Как именно "не работает" код? Программа компилируется или нет? Если компилируется то результат выполнения: ошибка времени исполнения или неверные выходные данные? Где тестовый пример верных входных и выходных данных?
4) Желательно локализовать предполагаемое место ошибки хотя бы до десятка строк кода.

Jackk
Jackk

+5 за фото, а остальное темный лес.

Ол
Олег

Когда пытаетесь компилировать программу внимательно посмотрите на ошибки которые он вам укажет и сами все поймете. Ошибки просто глупейшие. Увы все их исправить я не могу ибо не занимаюсь вангованием и не знаю изанчального условия задачи. Но все они сводятся к тому что либо не указан тип переменной либо заместо запятой поставлена точка с запятой, зависит от того что требуется на самом деле. И собственно одна очень грубая ошибка это построение струкуры цикла while ...do, с каких пор она вдруг стала while ...then?

Похожие вопросы
Программистам по Паскалю: прошу написать код программы
помогите пожалуйста решить задачи в паскале
Помогите пожалуйста с лабой по Паскалю!!((
Помогите с кодом на Делфи/Паскаль...
ребят помогите пожалуйста найти ошибку в коде на паскале (код небольшой)
Нужно переделать код из паскаля в Delphi Помогите пожалуйста.
Помогите пожалуйста перевести код с с++ на паскаль
Есть вопрос по паскалю АВС! Помогите пожалуйста)
Как преобразить строку 2ичного кода в 10сятичный в паскале?
паскаль массив, помогите пожалуйста с программой