Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 30.04.2021
Сообщений: 22

Прочитать матрицу из файла но видает ошибку времени выполнения: Чтение после конца потока

15.05.2021, 18:38. Показов 1618. Ответов 5

Студворк — интернет-сервис помощи студентам
Прочитать матрицу М (10, 12) из ​​файла F1. Переставить строки этого массива так, чтобы сумма
элементов каждой строки росла от первой до последней строчки

я написала код, правильно создала файл, но выдает ошибку: Ошибка времени выполнения: Чтение после конца потока невозможно.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
program lab7 (input, output, f);
const
 m=10;
 n=12;
var
 F: file of integer;
 i, j: integer;
 a: array[1..m, 1..n] of integer;
 s: integer;
begin
 assign(F, 'matrix.txt');
 reset(F);
 begin 
   for i:=1 to n do 
     for j:=1 to n do 
 read (F, a[i,j]);
 write (a[i,j]:3);
 end;
 writeln;
 writeln;
 close(F);
 for i:=1 to m-1 do
 for j:=1 to n-i do
 if (a[i,j])>(a[i+1,j]) then
 begin
 s:=a[i,j];
 a[i,j]:=a[i+1,j];
 a[i+1,j]:=s;
 end;
 writeln('Result matrix:');
 for i:=1 to m do
 begin
 for j:=1 to n do
 write(a[i,j]:5);
 writeln;
 end;
 writeln;
end.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.05.2021, 18:38
Ответы с готовыми решениями:

Подпрограмма выдает ошибку времени выполнения: Чтение после конца потока невозможно
Дан файл, содержащий сведения об игрушках: указывается название игрушки, ее стоимость в рублях и возрастные границы (например, игрушка...

Ошибка времени выполнения: Чтение после конца потока невозможно
Ошибка в строке 9. var A: file of integer; B, I, J: integer; begin assign(A, 'D:\KEK.txt'); reset(A); while not...

Ошибка времени выполнения: Чтение после конца потока невозможно
Там где read(f,point); выдает ошибку "Ошибка времени выполнения: Чтение после конца потока невозможно." В чем может быть проблема? ...

5
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
15.05.2021, 18:46
Цитата Сообщение от Katya007 Посмотреть сообщение
правильно создала файл
Покажите этот файл.

Добавлено через 2 минуты
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const
 m=10;
 n=12;
var
 F: file of integer;
 i, j: integer;
 a: array[1..m, 1..n] of integer;//размер матрицы 10х12
 s: integer;
begin
 assign(F, 'matrix.txt');
 reset(F);
 begin 
   for i:=1 to n do //а прочитать хотим матрицу 12х12
     for j:=1 to n do 
 read (F, a[i,j]);
0
0 / 0 / 0
Регистрация: 30.04.2021
Сообщений: 22
15.05.2021, 18:58  [ТС]
1 4 8 1 8 9 4 7 1 8 5 6
1 4 1 7 8 1 1 1 8 1 4 5
3 5 5 1 4 3 4 1 6 5 2 4
5 1 5 1 6 1 5 1 9 1 6 2
1 4 3 2 1 9 3 7 0 6 8 2
9 7 1 8 2 2 8 2 3 5 5 4
3 5 6 8 5 3 1 4 7 5 3 8
1 4 8 3 6 8 4 2 7 3 6 3
4 6 2 7 3 6 3 1 4 9 0 3
7 5 1 9 7 3 8 3 8 6 8 8

как-то так
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7816 / 4635 / 2837
Регистрация: 22.11.2013
Сообщений: 13,158
Записей в блоге: 1
15.05.2021, 20:29
Цитата Сообщение от Katya007 Посмотреть сообщение
написала код, правильно создала файл
Нет, это у вас обычный текстовый файл (остальная работа с ним по коду соответствует):
Pascal
6
  f: Text;
Добавлено через 3 минуты
Цитата Сообщение от Katya007 Посмотреть сообщение
Переставить строки этого массива так, чтобы сумма элементов каждой строки росла от первой до последней строчки
А у вас что за беда по мотивам сортировки пузырьком в строках 22-29?

Добавлено через 4 минуты
Отсортированная матрица должна выглядеть как-то так:
Code
1
2
3
4
5
6
7
8
9
10
11
                                                    сумма
1   4   1   7   8   1   1   1   8   1   4   5       42
3   5   5   1   4   3   4   1   6   5   2   4       43
5   1   5   1   6   1   5   1   9   1   6   2       43
1   4   3   2   1   9   3   7   0   6   8   2       46
4   6   2   7   3   6   3   1   4   9   0   3       48
1   4   8   3   6   8   4   2   7   3   6   3       55
9   7   1   8   2   2   8   2   3   5   5   4       56
3   5   6   8   5   3   1   4   7   5   3   8       58
1   4   8   1   8   9   4   7   1   8   5   6       62
7   5   1   9   7   3   8   3   8   6   8   8       73
0
0 / 0 / 0
Регистрация: 30.04.2021
Сообщений: 22
15.05.2021, 20:47  [ТС]
а как код тогда написать, просто я не понимаю немногог тогда
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7816 / 4635 / 2837
Регистрация: 22.11.2013
Сообщений: 13,158
Записей в блоге: 1
15.05.2021, 21:26
Лучший ответ Сообщение было отмечено Katya007 как решение

Решение

При сортировке строк сравнивать нужно суммы строк. Суммы можно считать каждый раз "на лету" или посчитать в отдельный массив (традиционная дилемма память/время).
Допустим, собрались сортировать пузырьком отдельный массив сумм. Если при сортировке нужно переставить суммы, то переставляем и строки матрицы.
Попробуйте пока сами
Может еще разок самостоятельно?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var
  s: array [1..m] of Integer; {хранилище сумм}
  i, j, k, t: Integer;
 
...
 
  { считаем построчные суммы }
  for i:=1 to m do for j:=1 to n do Inc(s[i],a[i,j]);
 
  { сортируем s }
  for i:=1 to m-1 do for k:=1 to m-i do if s[k]>s[k+1] then begin { нужна перестановка }
    t:=s[k]; s[k]:=s[k+1]; s[k+1]:=t; { для сумм }
    for j:=1 to n do begin t:=a[k,j]; a[k,j]:=a[k+1,j]; a[k+1,j]:=t; end; { и для строк }
  end;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.05.2021, 21:26
Помогаю со студенческими работами здесь

Ошибка времени выполнения: Чтение после конца потока невозможно
Нужно найти элемент с минимальным количеством неуд. оценок по выбранному предмету и поменять с последним элементом тип. файла. Ошибка в 50...

Чтение чисел из файла. Чтение после конца потока невозможно
Товарищи, помогите. В Pascal'e я не силен, так что не бейте меня ногами, но есть задача: написать обычную программу для расчета некоторых...

Ошибка при чтении файла: Чтение после конца потока невозможно
Всем добрый вечер! Пытаюсь считать данные из rtf файла и загрузить их в excel файл. Но выпадает exception: Чтение после конца потока...

Ошибка "Чтение после конца потока невозможно" при чтении из файла с помощью BinaryReader
private void ShowFromFile_Click(object sender, EventArgs e) { openFileDialog.Filter = "txt files (*.txt)|*.txt|All...

Чтение после конца потока невозможно
Выдаёт такую ошибку. Помогите :-|


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru