Страница 1 из 1

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

Добавлено: 25 май 2009, 22:39
maliyusha
Здравствуйте! Вот программа, она должна высчитывать максимум через функцию, путем введения параметров. Все мои попытки сделать ввод автоматически через "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.

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

Добавлено: 26 май 2009, 12:18
Игорь Акопян
random(100+10) = random(110) ;)

емнип, делалось типа random(1)*100