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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.05.2008, 18:52   #1
Raptor5
Пользователь
 
Регистрация: 13.01.2008
Сообщений: 32
По умолчанию Помогите с лабораторкой

помогите плиз с лабораторкой. Я вообще в условие не вникаю. Подскажите хотя бы примерное решение. Буду очень благодарен.

Условие:
Найти в двухмерном массиве максимальное число и вернуть из подпрограммы процедуры поиск указателя на это значение..
Raptor5 вне форума Ответить с цитированием
Старый 21.05.2008, 19:41   #2
Raptor5
Пользователь
 
Регистрация: 13.01.2008
Сообщений: 32
По умолчанию

Забыл уточнить что делать надо на паскале.
Raptor5 вне форума Ответить с цитированием
Старый 21.05.2008, 22:45   #3
Greblin
Меркантильный кю
Участник клуба
 
Аватар для Greblin
 
Регистрация: 02.02.2008
Сообщений: 1,001
По умолчанию

Если требуется вернуть именно указтель, то вот тебе прога, которая генерит массив из рандомных чисел, получаем через процедуру указатель на максимум, и выводит содержимое, на которое ссылается этот указатель
Код:
program Project2;

uses crt;

type Massiv = array[1..10,1..10] of integer;
     pMassiv = ^Massiv;
     pint = ^integer;

var arr: Massiv;
    i, j: integer;
    pArr: pMassiv;
    el: integer;
    p: pint;

function FindMax(mas: pMassiv): pint;
var i, j: integer;
    max: integer;
    res: pint;
begin
max := mas^[1, 1];
res := @mas^[1, 1];
for i := 1 to 10 do
  for j := 1 to 10 do
    if mas^[i, j] > max then
      begin
      max := mas^[i, j];
      res := @mas[i, j];
      end;
FindMax := res;
end;

begin
randomize();
fillchar(arr, sizeof(arr), 0);
for i := 1 to 10 do
  for j := 1 to 10 do
    arr[i, j] := random(10000);
pArr := @arr;
p := FindMax(pArr);
el := p^;
writeln(el);
end.
Если под указателем подразумеваются 2 числа, обозначающие место элемента в массиве, измени функцию так, чтоб она возвращала, например, запись {x, y}
Росли вроде умными, выросли дурнями... (c)А.Васильев
Greblin вне форума Ответить с цитированием
Старый 21.05.2008, 23:31   #4
Raptor5
Пользователь
 
Регистрация: 13.01.2008
Сообщений: 32
По умолчанию

спасибо большое
Raptor5 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с лабораторкой. Raptor5 Паскаль, Turbo Pascal, PascalABC.NET 6 10.06.2008 16:05
C#, помогите плиз с лабораторкой Raptor5 Помощь студентам 3 30.05.2008 01:29