Драть вас, студентов, некому. Ремнем. Ну неужели вы не понимаете, что если сразу выложите ясное и полное задание, то будет легче и нам, и вам? И почему мы должны это из вас клещами тянуть?
Теперь об ошибках. Ну ладно описки типа Writeln(A[1,m]_; - подчерк вместо закрывающей скобки и т.п., но самое главное - Вы, к сожалению, совсем не знаете, как работать с файлами. Запомните:
1. Файловую переменную необходимо задать, т.е. в разделе Var должно стоять что-то вроде
f:Text;
или
Xxx: file of Integer;
2. При записи в файл и чтении из файла в параметрах команды должно стоять имя файловой переменной, например
readln(f,a[i,j]);
write(Xxx,D);
и т.п.
3. При использовании функции EoF (End of File) необходимо опять же указывать имя файловой переменной, т.е.
EoF(f); или EoF(Xxx);
4. При написании имени файла в параметрах команды Assign использовать ТОЛЬКО апостроф (') - который в русифицированной клавиатуре там же, где буква "э". Использование каких-либо других значков НЕ ДОПУСКАЕТСЯ.
Ну и вот исправленная программа:
Код:
Const
Size=10;
Var
A:Array[1..Size+1,0..Size] of Integer;
i,j,n,m,k:Byte;
Inp,Outp:Text;
Begin
Assign(Inp,'Input.txt');
Reset(Inp);
Readln(Inp,n,m);
for i:=1 to n do
for j:=1 to m do
A[i,j]:=-1;
for i:=1 to n do A[i,0]:=0;
for j:=0 to m do A[n+1,j]:=0;
Repeat
Readln(Inp,i,j);
A[i,j]:=0;
Until EoF(Inp);
A[n,1]:=1;
Close(Inp);
For i:=1 to n+1 do
begin
For j:=0 to m do
write(A[i,j]:4);
Writeln;
end;
Writeln;
For i:=n downto 1 do
For j:=1 to m do
If A[i,j]=-1 then
A[i,j]:=A[i+1,j]+A[i,j-1]+A[i+1,j-1];
For i:=1 to n+1 do
begin
For j:=0 to m do
write(A[i,j]:4);
Writeln;
end;
Writeln;
Writeln('Press "Enter" to quit');
Readln;
Assign(Outp,'Output.txt');
Rewrite(Outp);
Writeln(Outp,A[1,m]);
Close(Outp);
End.
Здесь для украшательства добавлен вывод на экран матрицы до и после преобразования. Если не нужно - можно эти фрагменты (они отделены пустыми строками) удалить.
Ну а что касается блок-схемы - тут, как уже говорил, не компетентен. Может быть Анджела (
11Angelav) поможет? Она у нас виртуоз блок-схем.