Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

(pascal)Матрица в файле

28K
27 января 2008 года
Zond235
12 / / 25.11.2007
В общем нужно создать матрицу,удалить либо столб либо строку , сформировать новый массив а матрицу хранить в файле. Исходник прилагаю. Прога работает а вот с записью и чтением беда ругается прочитать не может. Поможите а то горю на днях зачёт
Код:
uses crt;
const n=15;
var
    m:array [1..n,1..n] of integer;
    f:file of integer;
    a,b,zd,y,i,v:integer;
begin

textbackground(1);
clrscr;
textcolor(12);
writeln('Введите количество строк:');
readln(a);
writeln('Введите количество столбов:');
readln(b);
assign(f,'C:\BP\MATR.dat');
rewrite(f);
begin
for i:=1 to a do
for y:=1 to b do begin
m[i,y]:=random(100);
write(f,m[i,y]);
end;
clrscr;
textcolor(white);
rewrite(f);
for i:=1 to a do
 begin
 for y:=1 to b do
 read(f,m[i,y]);
 write (m[i,y]:2,' ');
 writeln;
 end;
 close(f);
begin
  textcolor(14);
  writeln;
  write ('Что будем удалять? Строку-1/Столб-2: ');
  readln(zd);
  if (zd=1) then a:=a-1 else b:=b-1;
  for i:=1 to a do
  for y:=1 to b do begin
  write (m[i,y]:2,' ');
  writeln;
  end;
  end;
assign(f,'c:\bp\MATR.dat');
reset(f);
  for i:=1 to a do begin
  for y:=1 to b do begin
  read(f,m[i,y]);
  write (m[i,y]:2,' ');
  end;
  writeln;
  end;
readln;
close(f)
end;
end.


[COLOR=Red]Раздача архивов запрещена. Можно код оформить в .txt. Модератор.[/COLOR]
34K
10 февраля 2008 года
BlackRey
2 / / 13.11.2007
Бедлам с begin-ами и end-ами
После первого блока записи (перед вторым rewrite) нет закрытия файла
Вместо второго rewrite наверное reset?
второй assign зачем?
После "удаления" столбца/строки идет опять чтене из файла (вроде записать надо...)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог