• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Задача по Delphi со строками

  • Автор темы Автор темы zatirka
  • Дата начала Дата начала

zatirka

Ученик
Регистрация
20 Апр 2014
Сообщения
6
Реакции
0
Баллы
0
Задача по Delphi со строками

Разработать программу, удаляющую из матрицы строку и столбец, содержащие максимальный/минимальный элементы. Матрица рас-полагается в отдельном файле. Программа должна позволять сформировать исходную матрицу. Результат помещается в отдельный файл. Помогите пожалуйста!!!
 
Дана матрица размера MxN. Удалить столбец, содержащий максимальный элемент матрицы.

Код:
program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
Type Matrix=array of array of integer;
function max(a:Matrix;n,m:integer):integer;
var i,j,ind,m1:integer;
begin
m1:=a[0,0];
ind:=0;
for i:=0 to n-1 do
for j:=0 to m-1 do
if a[i,j]>m1 then begin m1:=a[i,j];ind:=i;end;
max:=ind;
end;
 
var a:Matrix;
i,j,M,N,mel:integer;
begin
writeln('Vvedite razmer A(NxM)');
write('N: ');readln(n);
write('M: ');readln(m);
SetLength(a,n,m);
for i:= 0 to n-1 do
begin
for j:=0 to m-1 do begin
a[i,j]:=random(9);
write(a[i,j],' ');     end;
writeln;
end;
writeln;
mel:=max(a,n,m);
for i:= 0 to n-1 do
for j:=mel to m-2 do
a[i,j]:=a[i,j+1];
SetLength(a,n,m-1);
 
for I := Low(A) to High(A) do
begin
for j := Low(A[i]) to High(A[i]) do
write(a[i,j],' ');
writeln;
end;
readln;
end.

Аналогично со строками.
В файл записывать результат, дело не хитрое...
 
спасибо огромное
 
Не за что.
 
слушай, ещё вопрос: а можно это как-то на форму разместить, или это только в консоли?
 
можно и через форму. только не сказано что использовать для работы с файлами!
 
Сделано в консоли, на форму разместить можно.
 
Назад
Сверху