Паскаль. Массивы. Найти положение значений

Ответить
infff
Сообщения: 12
Зарегистрирован: 05 мар 2009, 13:11

Вопрос по паскалю:
Дана целочисленная матрица размером m x n и целые числа b и c. Определить, на каком месте Расположены эти числа в матрице.


Помогите решить плз в Завтро 8 утра перездача назначена последняя.
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

[syntax=pascal]
const
m=4;
n=5;
type
TArr = array[1..m,1..n] of integer;
var
a:TArr;
b,c,i,j:integer;

function Search(what:integer; where:TArr; var i,j:integer):boolean;
begin
i:=1; j:=1;
while (what<>where[i,j]) and (i<=m) and (j<=n) do begin
inc(j);
if j>n then begin
j:=1; inc(i);
end;
end;
Search:=what=where[i,j];
end;

begin
{заполнение}
for i:=1 to m do for j:=1 to n do a[i,j]:=random(10);
{вывод}
for i:=1 to m do begin
for j:=1 to n do write(a[i,j]:4);
writeln;
end;
{запрос}
write('Введите b и c через пробел: '); readln(b,c);
{поиск}
if Search(b,a,i,j)
then writeln('Значение b найдено в позиции ', i, ':',j)
else writeln('Значение b в массиве не найдено');
if Search(c,a,i,j)
then writeln('Значение с найдено в позиции ', i, ':',j)
else writeln('Значение с в массиве не найдено');
writeln('Нажмите Enter');
readln;
end.
[/syntax]
infff
Сообщения: 12
Зарегистрирован: 05 мар 2009, 13:11

Спасибо большое за помошь.
infff
Сообщения: 12
Зарегистрирован: 05 мар 2009, 13:11

Подсажите пожалуста, а если в массиве будет несколько чисел одинаковых(например 3) можно ли както сделать чтоб выводилось несколько координат?


0 0 8 2 2
6 3 1 3 4
0 4 0 8 0
2 9 3 7 3
infff
Сообщения: 12
Зарегистрирован: 05 мар 2009, 13:11

и если незатруднит поясните пожалуста значение write(a[i,j]:4);

Код: Выделить всё

{вывод}
  for i:=1 to m do begin
    for j:=1 to n do write(a[i,j]:4);
    writeln;
  end;
kuznetsovSergey
Сообщения: 163
Зарегистрирован: 05 мар 2009, 11:27

это код вывода массива, с форматированием. Он идет по строчно, и в другом цикле продолжает выводить по столбцам. Таким образом выводит красиво в виду прямоугольной таблички, потому что под кажное число выделено всего 4 знака.
Ответить