Указатели и динамическая память в Паскале.

Общие вопросы: версии и диалекты, синтаксис языка, cтруктуры и типы данных (массивы, строки, списки...), обработка данных и т.д.
Ответить
maliyusha
Сообщения: 21
Зарегистрирован: 25 дек 2008, 23:21
Контактная информация:

Здравствуйте! Вот программа, она должна высчитывать максимум через функцию, путем введения параметров. Все мои попытки сделать ввод автоматически через "randomize" увенчались неудачей. Пожалуйста,помогите исправить.

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

Uses crt;
Type
    XP=^INTEGER;
    VectXP=ARRAY [0..100] of XP;
    PVectXP=^VectXP;
Var
   n,i,j: integer;
   Arr: PVectXP;
 
 function Max(A:PVectXP; Size:integer):integer;
    var
      i,r:integer;
     begin
      if Size>0 then
        begin
          r:=A^[1]^;
          for i:=1 to Size do if A^[i]^>r
         then r:=A^[i]^;
        end  else r:=0; Max:=r;
     end;  

 Begin
   clrscr;
   randomize;
   for j:=1 to 10 do
    begin
     for i:=1 to 10 do A^[i]^:=random(100+10); }
    write('Vvedite koli4estvo elementov ot 10 do 100: ');
    read(n);
    GetMem(Arr,sizeof(XP)*n);

    
     for i:=1 to n do
       begin
        New(Arr^[i]);
        write('vvedite ',i,' 4islo: ');
        read(Arr^[i]^);
      end;
    
       writeln('maximum =  ',Max(Arr,n));
       readln;
      for i:=1 to n do
        Dispose(Arr^[i]);
      FreeMem(Arr,sizeof(XP)*n);}
       readln;
End.
Жизнь-игра. Задумана хреново,но графика обалденная!
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

random(100+10) = random(110) ;)

емнип, делалось типа random(1)*100
Изображение
Ответить