Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Project1;
- {$APPTYPE CONSOLE}
- {$R *.res}
- uses
- System.Diagnostics,
- System.SysUtils;
- type
- TRek = record
- a : Int64;
- b : Int64;
- c : Int64;
- d : Int64;
- e : Int64;
- f : Int64;
- g : Int64;
- end;
- procedure Rek(aRek : TRek);
- var
- l: Int64;
- begin
- if aRek.a = 888 then Exit;
- if aRek.b = aRek.a then Exit;
- l := aRek.a + aRek.c;
- end;
- procedure Rek2(const aRek : TRek);
- var
- l: Int64;
- begin
- if aRek.a = 888 then Exit;
- if aRek.b = aRek.a then Exit;
- l := aRek.a + aRek.c;
- end;
- procedure Test;
- var
- i: Integer;
- lWatch : TStopWatch;
- lRek : TRek;
- begin
- lWatch := TStopWatch.Create;
- lRek.a := Random(MaxInt);
- lRek.b := Random(MaxInt);
- lRek.c := Random(MaxInt);
- lRek.d := Random(MaxInt);
- lRek.e := Random(MaxInt);
- lRek.f := Random(MaxInt);
- lRek.g := Random(MaxInt);
- lWatch.Start;
- for i := 0 to 10000000 do
- begin
- Rek(lRek);
- end;
- lWatch.Stop;
- Writeln('czas 1: ', lWatch.ElapsedMilliseconds, ' ms');
- lWatch.Reset;
- lWatch.Start;
- for i := 0 to 10000000 do
- begin
- Rek2(lRek);
- end;
- lWatch.Stop;
- Writeln('czas 2: ', lWatch.ElapsedMilliseconds, ' ms');
- end;
- begin
- try
- Test;
- Readln;
- except
- on E: Exception do
- Writeln(E.ClassName, ': ', E.Message);
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement