Текст программы для задания 1.4
program zad4;
uses
crt,zad4unit;
type
spisok_input=array[1..10] of string;
begin
clrscr;
readf(list);
show(list);
Sravn(list);
readkey;
end.
____________
unit zad4unit;
interface
type
spisok_input=array[1..10] of string;
var
list:spisok_input;
i,j,k,c:integer;
file_one:text;
buffer:string[48];
procedure readf(var list1:spisok_input);
procedure show(var list1:spisok_input);
procedure Sravn(var list1:spisok_input);
implementation
procedure readf(var list1:spisok_input);
begin
assign(file_one,'lab1-6/file1.txt');
reset(file_one);
for i:=1 to 10 do
begin
readln(file_one,list1[i]);
end;
close(file_one);
end;
procedure show(var list1:spisok_input);
begin
for i:=1 to 10 do
writeln(list1[i]);
writeln('');
writeln;
end;
procedure Sravn(var list1:spisok_input);
begin
assign(file_one,'lab1-6/file2.txt');
rewrite(file_one);
for i:=1 to 10 do
if(list1[i]<>'*') then
begin
c:=1;
for k:=i+1 to 10 do
begin
while(list1[k]=list1[i]) do
begin
c:=c+1;
list1[k]:='*';
end;
end;
write(file_one,list1[i]);
writeln(file_one,' ',c);
writeln(list1[i],' ',c);
end;
close(file_one);
end;
end.
Текст программы для задания 1.5
program Lab5_0;
uses crt;
Type
Pstudent=^Tstudent;
Tstudent=record
fam:string[20];
p1:string[1];
name:string[10];
p2:string[1];
ot4:string[15];
next:Pstudent;
end;
Var
pBegin,pTemp,pi:Pstudent;
c,k,i:integer;
{--------------------------------------------------------------------------}
Procedure from_file_in_spisok(Var pBegin:Pstudent);
var
c:char;
f:text;
i:integer;
begin
assign(f,'lab1-6/file1.txt');
reset(f);
new(pBegin);
pTemp:=pBegin;
Readln(f,pTemp^.fam,pTemp^.p1,pTemp^.name,pTemp^.p2,pTemp^.ot4);
while (not eof(f)) do begin
new(pTemp^.next);
pTemp:=pTemp^.next;
Readln(f,pTemp^.fam,pTemp^.p1,pTemp^.name,pTemp^.p2,pTemp^.ot4);
end;
pTemp^.next:=nil;
Close(f);
end;
{--------------------------------------------------------------------------}
procedure vivod(pBegin:pStudent);
begin
writeln('[=‘ЇЁб®Є=]');
pTemp:=pBegin;
while pTemp<>nil do begin
writeln(pTemp^.fam,pTemp^.p1,pTemp^.name,pTemp^.p2,pTemp^.ot4);
pTemp:=pTemp^.next;
end;
writeln('[====================]')
end;
{--------------------------------------------------------------------------}
procedure sravn(var pBegin:Pstudent);
begin
pTemp:=pBegin;
while(pTemp<>nil) do begin
if(pTemp^.name[1]<>'*') then begin
c:=1;
pi:=pTemp^.next;
while(pi<>nil) do begin
{pi:=pTemp^.next; }
if(pTemp^.name=pi^.name) then
begin
pi^.name:='*'+pi^.name;
c:=c+1;
end;
pi:=pi^.next;
end;
end;
if (pTemp^.name[1]<>'*') then
writeln(pTemp^.name,' ',c);
pTemp:=pTemp^.next;
end;
end;
{----------------------------------------------------------------------------- }
begin
clrscr;
from_file_in_spisok(pBegin);
vivod(pBegin);
sravn(pBegin);
readln;
end.
