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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.03.2016, 19:39   #1
Dimas_
Новичок
Джуниор
 
Регистрация: 25.03.2016
Сообщений: 1
По умолчанию Дубликация строки содержащей максимальный элемент

Товарищи программисты! Срочно нуждаюсь в вашей помощи! Спасайте, пожалуйста!
Дана матрица размера M x N.
Продублировать строку матрицы, содержащую ее максимальный элемент. Как сделать чтоб матрицу читал из input.txt, и записало результат в output.txt?
Код:
program Matrix70;
var
j,i,JJ,M,N,II:integer;
a: array [1..11,1..10] of real;
begin 
writeln('Введите числа M (M<=10) и N (N<=10)');
read(M); readln(N);
writeln('Введите по ',N,' элементов ');
for i:=1 to M do begin
write(i,' строки : ');
for j:=1 to N do read(a[i,j]);
end;
JJ:=1;
II:=1;
for i:=1 to M do begin
for j:=1 to N do begin
if a[i,j]>a[II,JJ]then begin JJ:=j; II:=i; end;
end; end;
for i:=M+1 downto II+1 do begin
for j:=1 to N do begin
a[i,j]:=a[i-1,j];
end; end;
inc(M); 
writeln;
writeln('Ответ');
for i:=1 to M do begin
writeln;
for j:=1 to N do write(a[i,j],' ');
end;
end.
Dimas_ вне форума Ответить с цитированием
Старый 26.03.2016, 18:19   #2
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,312
По умолчанию

Например так:
- Формируешь текстовый файл со следующей структурой:
- Первая строка - два числа целого типа:RowIndex ColumIndex
- Последующие строки - набор чисел типа real
Строк должно быть RowIndex, чисел в строке - ColumIndex
- Объявляешь файловую переменную текстового типа:
Код:
var ...
      fh : text;
Далее открываешь учебник "Т.А. Павловская, Программирование на ЯВУ. Паскаль" (можно найти в списке учебников) на стр. 80 и внимательно читаешь.
Чтение из файла выполняешь через вложенные циклы, используя процедуры
Код:
read(fh, matr[RowIndex, ColumIndex]; {чтение первого и последующих значений в строке}
readln(fh, matr[RowIndex, ColumIndex]; {чтение последнего значения строки}
Конечно же, следует предусмотреть контроль размеров матрицы, если для матрицы выбран статический массив.

PS: Аналогичные действия и для записи в файл.
Код:
write(fh, matr[RowIndex, ColumIndex]; {запись первого и последующих значений в строке}
writeln(fh, matr[RowIndex, ColumIndex]; {запись последнего значения строки}

Как-то так, ...
Как-то так, ...

Последний раз редактировалось ViktorR; 26.03.2016 в 18:22.
ViktorR вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
дан двумерный массив размером 5*6, заполненный случайным образом 1. заменить максимальный элемент каждой строки на противоположный Иляна Паскаль, Turbo Pascal, PascalABC.NET 1 20.01.2013 18:29
В матрице размером m*n найти максимальный элемент каждой строки. bad9 Помощь студентам 4 07.06.2012 23:10
Заменить максимальный по модулю элемент каждой строки на противоположный по знаку bestlover Помощь студентам 7 06.04.2009 18:06
Вставить первую строку после строки, в которой находится первый встреченный максимальный элемент. JiLiYa Паскаль, Turbo Pascal, PascalABC.NET 4 03.12.2008 12:13
Определить максимальный по модулю элемент каждой строки. (Kate) Помощь студентам 2 29.11.2008 21:05