123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- {$R-}
- {$Q-}
- const
- q2 : qword = 1234;
- i2 : int64 = -1234;
- var
- q : qword;
- i : int64;
- l1,l2 : longint;
- s : string;
- procedure p1(q : qword;i : int64);
- begin
- end;
- function f1 : qword;
- begin
- f1:=1;
- end;
- function f2 : int64;
- begin
- f2:=-1;
- end;
- var
- q1,q3,q4 : qword;
- begin
- q1:=1;
- q3:=1;
- q4:=1;
- if not((q4 div q3) div (q2 div q1)<>(q2 div q1) div (q4 div q3)) then
- begin
- writeln('Error :(');
- halt(1);
- end;
- q:=q-q;
- q:=q-(q*q);
- q:=(q*q)-(q*q);
- { first test the comparisation }
- i:=f2;
- if q<>q then
- begin
- writeln('Error :(');
- halt(2);
- end;
- if q>q then
- begin
- writeln('Error :(');
- halt(3);
- end;
- if i>f2 then
- begin
- writeln('Error :(');
- halt(4);
- end;
- if l1>l2 then
- begin
- writeln('Error :(');
- halt(5);
- end;
- p1(q,i);
- q:=f1;
- i:=f2;
- q:=q+q;
- i:=((i+i) xor (i+i)) or ((i+i) xor (i+i));
- q:=q shl l1;
- q:=q shr l1;
- q:=(q shl l1)+(q shl l1);
- q:=not(q);
- i:=not(i);
- q:=not(q xor q);
- i:=not(i or i);
- { unary minus }
- q:=-q;
- i:=-i;
- q:=-(q xor q);
- i:=-(i or i);
- { multiplication }
- // q:=3;
- q:=q*q;
- i:=i*i;
- q:=q*(q*q);
- i:=i*(i*i);
- q:=(q*q)*(q*q);
- q:=((q*q)*(q*q))*((q*q)*(q*q));
- writeln(q);
- writeln(i);
- { test can't be interactive (PFV)
- read(q);
- read(i); }
- str(q,s);
- str(i,s);
- end.
|