{$M 65250, 00 ,655000} {$N+} {$E+} Program TEST_TIME; uses crt; CONST maxNumberArray = 2000; microTESTS = 6000; Type tARRAY_I = array[1..maxNumberArray] of byte; tARRAY_II= array[1..maxnumberarray] of integer; tRECORD = record Rpole1: tARRAY_I; Rpole2: tARRAY_II end; tOBJECT = object Opole1: tARRAY_I; Opole2: tARRAY_II; procedure Qsort; {Quck} procedure Bsort; {bubble} procedure Psort; {пирамидальная} end; {=== ПРОЦЕДУРЫ ОБРАБОТКИ ПОЛЕЙ ОБЪЕКТА (МЕТОДЫ) ===} procedure tOBJECT.Qsort; begin end; procedure tOBJECT.Bsort; begin end; procedure tOBJECT.Psort; begin end; {=== ПРОЦЕДУРЫ ОБРАБОТКИ ДАННЫХ ЗАПИСИ ===} procedure r_Qsort; begin end; procedure r_Bsort; begin end; procedure r_Psort; begin end; {======================================} Type AReal = array[1..MaxNumberArray] of real; ASingle = array[1..maxnumberArray] of single; AComp = array[1..maxnumberarray] of comp; Alongint = array[1..maxnumberarray] of longint; AByte = array[1..maxnumberarray] of byte; { Тестирование: I. - заполнить все массивы(9) случайными числами. (числа разные) - ИЗМЕРИТЬ ВРЕМЯ: ЧИСЛОВЫЕ ТИПЫ = каждому эл-ту массива присваиваем сумму его и предыдущего. = сортировка массива (быстрая) (измеряем конструкцию IF ) ОБЪЕКТЫ И ЗАПИСИ = заполнение случ. числами полей = сортировка всеми способами random(255)} VAR {ТИПЫ С ПОЛЯМИ } A: tRECORD; B: tOBJECT; {ЧИСЛОВЫЙ ТИПЫ} C: AReal; D: ASingle; E: AComp; F: Alongint; G: AByte; i:word; j:word; {======== DATA ========} t1,t2,t3,t4,t5 : longint; { meml[$0040:$006C] } Begin clrscr; {=============================================} t1:=meml[$0040:$006C]; while t1 = meml[$0040:$006C] do; for j:=1 to microtests do begin For i:=1 to maxnumberarray do c[i]:=random(255); end; t1:=(meml[$0040:$006C]-t1);{ div (microtests);} GOTOXY(1,1); write('10%'); {=============================================} {=============================================} t2:=meml[$0040:$006C]; while t2 = meml[$0040:$006C] do; for j:=1 to microtests do begin For i:=1 to maxnumberarray do d[i]:=random(255); end; t2:=(meml[$0040:$006C]-t2) {div (microtests)}; GOTOXY(1,1); write('20%'); {=============================================} {=============================================} t3:=meml[$0040:$006C]; while t3 = meml[$0040:$006C] do; for j:=1 to microtests do begin For i:=1 to maxnumberarray do e[i]:=random(255); end; t3:=(meml[$0040:$006C]-t3); GOTOXY(1,1); write('30%'); {=============================================} {=============================================} t4:=meml[$0040:$006C]; while t4 = meml[$0040:$006C] do; for j:=1 to microtests do begin For i:=1 to maxnumberarray do f[i]:=random(255); end; t4:=(meml[$0040:$006C]-t4); GOTOXY(1,1); write('40%'); {=============================================} {=============================================} t5:=meml[$0040:$006C]; while t5 = meml[$0040:$006C] do; for j:=1 to microtests do begin For i:=1 to maxnumberarray do g[i]:=random(255); end; t5:=(meml[$0040:$006C]-t5); GOTOXY(1,1); write('50%'); {=============================================} ClrScr; Writeln('ТЕСТ 1. Заполнение массивов случайными числами'); writeln('= TYPE ==== TIME ===='); Writeln('Real ',t1); Writeln('Single ',t2); Writeln('Comp ',t3); Writeln('longint ',t4); Writeln('Byte ',t5); {=============================================} end.