testv9.pp 990 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. {$ifdef fpc}
  2. {$mode objfpc}
  3. {$endif fpc}
  4. uses
  5. Variants;
  6. var
  7. a,av : array of longint;
  8. a2,av2 : array of array of longint;
  9. v,v2 : variant;
  10. i,j : longint;
  11. begin
  12. setlength(a,1000);
  13. for i:=0 to high(a) do
  14. a[i]:=i;
  15. v:=a;
  16. for i:=0 to high(a) do
  17. if v[i]<>i then
  18. begin
  19. writeln('v[',i,']=',v[i]);
  20. halt(1);
  21. end;
  22. writeln('simple test ok');
  23. setlength(a2,10,30);
  24. for i:=0 to high(a2) do
  25. for j:=0 to high(a2[i]) do
  26. a2[i,j]:=i*j;
  27. writeln(length(a2));
  28. writeln(length(a2[0]));
  29. v2:=a2;
  30. for i:=0 to high(a2) do
  31. for j:=0 to high(a2[i]) do
  32. if v2[i,j]<>i*j then
  33. begin
  34. writeln('v2[',i,',',j,']=',v2[i,j]);
  35. halt(1);
  36. end;
  37. writeln('complex test ok');
  38. av:=v;
  39. writeln('1d dyn. array:=var. array ok');
  40. av2:=v2;
  41. if high(av2)<>VarArrayHighBound(v2,1) then
  42. halt(1);
  43. if high(av2[0])<>VarArrayHighBound(v2,2) then
  44. halt(1);
  45. writeln('2d dyn. array:=var. array ok');
  46. writeln('ok');
  47. end.