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

Ваш аккаунт

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

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

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

Помогите ,найти ошибку в процедуре поиска!

16K
09 февраля 2006 года
xnode
1 / / 09.02.2006
Уважаемые ,подскажите, где я туплю с двухмерным массивом (BP7-Pascal):
{
Наименование процедуры: maxstr.
Цель: найти номер строки максимального элемента матрицы А,
где входные значения:
Pr - указатель массив исходных данных матриц A размером [1..3,1..3],
x - кол-во строк и столбцов квадрат. матрицы А,
возвращаемые значения:
num - номер строки максимального элемента матрицы А
}

procedure maxstr (Pr:PArr;x:integer;Var num:word);
var maxs:real;
i,j:integer;
begin
{зададим начальное значение для поиска макс. элемента массива}
maxs:=Pr^[1,1];
{Поиск m12}
for i:=1 to x do
begin
for j:=1 to x do
begin
if maxs <= Pr^[j,i] then
begin
maxs:=Pr^[j,i];
num:=i;
end ;
end;
end;
end;
929
09 февраля 2006 года
sp999
198 / / 31.01.2003
Цитата:
Originally posted by xnode
Уважаемые ,подскажите, где я туплю с двухмерным массивом (BP7-Pascal):
{
Наименование процедуры: maxstr.
Цель: найти номер строки максимального элемента матрицы А,
где входные значения:
Pr - указатель массив исходных данных матриц A размером [1..3,1..3],
x - кол-во строк и столбцов квадрат. матрицы А,
возвращаемые значения:
num - номер строки максимального элемента матрицы А
}

procedure maxstr (Pr:PArr;x:integer;Var num:word);
var maxs:real;
i,j:integer;
begin
{зададим начальное значение для поиска макс. элемента массива}
maxs:=Pr^[1,1];
{Поиск m12}
for i:=1 to x do
begin
for j:=1 to x do
begin
if maxs <= Pr^[j,i] then
begin
maxs:=Pr^[j,i];
num:=i;
end ;
end;
end;
end;


Если в Pr^[j,i] считать j - номером строки, а i - номером столбца (как обычно и делается), то твоя процедура ищет не номер строки, а номер столбца.

8.2K
03 марта 2006 года
RusHak
86 / / 02.03.2006
Цитата:
Originally posted by xnode
Уважаемые ,подскажите, где я туплю с двухмерным массивом (BP7-Pascal):
{
Наименование процедуры: maxstr.
Цель: найти номер строки максимального элемента матрицы А,
где входные значения:
Pr - указатель массив исходных данных матриц A размером [1..3,1..3],
x - кол-во строк и столбцов квадрат. матрицы А,
возвращаемые значения:
num - номер строки максимального элемента матрицы А
}

procedure maxstr (Pr:PArr;x:integer;Var num:word);
var maxs:real;
i,j:integer;
begin
{зададим начальное значение для поиска макс. элемента массива}
maxs:=Pr^[1,1];
{Поиск m12}
for i:=1 to x do
begin
for j:=1 to x do
begin
if maxs <= Pr^[j,i] then
begin
maxs:=Pr^[j,i];
num:=i;
end ;
end;
end;
end;



попробуй, может тебе так пойдёт:

uses crt;
var mass:array[1..100,1..100] of integer;
a,b,c,x,num:integer;
begin
clrscr;
writeln('введите колво строк и столбцов');
readln(x);
writeln;

for a:=1 to x do
for c:=1 to x do
begin
gotoxy(c*3,a*3);
read(mass[a,c]);
end;
b:=mass[1,1];
for a:=1 to x do
for c:=1 to x do
if mass[a,c]>b then
begin
b:=mass[a,c];
num:=a
end;
writeln;
writeln('max:=',b);
writeln;
writeln('stroka:=',num);
readkey
end.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог