Скачиваний:
18
Добавлен:
28.03.2015
Размер:
3.41 Кб
Скачать
procedure IntToHexStr(m:word;var s:string);
const hex:array[0..15] of char=('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
var Ost:byte;
s_l:string[4];
begin
s_l:='';
repeat
Ost:=m mod 16;
m:=m div 16;
s_l:=hex[ost]+s_l;
until m<16;
s_l:=hex[m]+s_l;
while length(s_l)<4 do s_l:='0'+s_l;
s:=s+s_l;
end;

Var s:string;
x,sum:word;
i,j:integer;
log:boolean;
f:text;
BEGIN
assign(f,'table.dat');
rewrite(f);
(**)writeln(f,'======== lab 1 ================');
writeln('Џ®¦ «г©бв  ¦¤ЁвҐ ...');
randomize;
i:=1;
while i<=25 do
begin
str(i,s);if length(s)<2 then s:='0'+s;
s:=s+' ';

sum:=i*9;
str(i,s);if length(s)<2 then s:='0'+s;
s:=s+' ';
IntToHexStr(i*9,s);
log:=true;
for j:=1 to 2 do
begin
x:=random(65535);
sum:=sum+x;
if sum<x then log:=false; {overflow}
s:=s+' ';
IntToHexStr(x,s);
end;
if log then
begin
i:=i+1;
Writeln(f,s);
end;
end;
(**)
(**)
writeln(f,'');
writeln(f,'======== lab 2a ================');
randomize;
i:=1;
while i<=25 do
begin
sum:=0;
str(i,s);if length(s)<2 then s:='0'+s;
s:=s+' ';
log:=true;

for j:=1 to 7 do
begin
x:=random(65535);
sum:=sum+x;
if sum<x then log:=false;
IntToHexStr(x,s);
s:=s+',';
end;
if log then
begin
i:=i+1;
if i=12 then writeln('Њ®¦ҐвҐ Ї®Є  ўлЇЁвм з иҐзЄг Є®дҐ ...');

s[0]:=char(length(s)-1);
Writeln(f,s);
end;

end;
(**)
(**)
writeln(f,'');
writeln(f,'======== lab 2b ================');
randomize;
i:=1;
while i<=25 do
begin
sum:=0;

str(i,s);if length(s)<2 then s:='0'+s;
log:=true;
s:=s+' ';

{ 1-e slowo }
x:=random(65535);
sum:=x;
IntToHexStr(x,s);

for j:=1 to 2 do
begin
x:=random(65535);
IntToHexStr(x,s);
end;

s:=s+' ';

{ 2-e slowo }
x:=random(65535);
sum:=sum+x;
IntToHexStr(x,s);
for j:=1 to 2 do
begin
x:=random(65535);
IntToHexStr(x,s);
end;
if sum<x then log:=false;

if log then
begin
i:=i+1;
Writeln(f,s);
end;
end;
(**)
(**)
writeln(f,'');
writeln(f,'======== lab 3a ================');
randomize;
i:=1;
while i<=25 do
begin
sum:=0;
str(i,s);if length(s)<2 then s:='0'+s;
s:=s+' ';

for j:=1 to 9 do
begin
x:=random(65535);
IntToHexStr(x,s);
s:=s+',';
end;
i:=i+1;
s[0]:=char(length(s)-1);
Writeln(f,s);
end;
(**)
writeln(f,'');
writeln(f,'======== lab 3b ================');
randomize;
i:=1;
while i<=25 do
begin
sum:=0;
str(i,s);if length(s)<2 then s:='0'+s;
s:=s+' ';

sum:=0;
for j:=1 to 7 do
begin
x:=random(65535);
if sum<x then sum:=x;
IntToHexStr(x,s);
s:=s+',';
end;
i:=i+1;
s[0]:=char(length(s)-1);


s:=s+' ';
sum:=random(sum);
x:=random(sum);
IntToHexStr(x,s);
s:=s+' ';
IntToHexStr(sum,s);
s:=s+' ';

Writeln(f,s);
end;
(**)


close(f);
END.
Соседние файлы в папке Source