Uses Crt; Const N = 10; Var f:text; S:string; A:array[1..N] of longint; i,j,k:integer; Begin ClrScr; WriteLn('Введите имя файла текстового, если он лежит в папке с программой(ВходнойФайл.txt)'); WriteLn('Или введите полное имя файла (C:\...\ВходнойФайл.txt)'); ReadLn(S); Assign(f,S); Reset(f); i:=1; Repeat Read(f,A[i]); i:=i+1; Until i>N; Write('Содержимое файла:'); For i:= 1 to N do Write(' ',A[i]); WriteLn; Write('Уникальные элементы:'); For i:= 1 to N do Begin k:=1; For j:= 1 to N do if i<>j then if A[i]=A[j] then k:=k+1; if k=1 then Write(' ',A[i]) End; ReadLn; End.
Пример: Введите имя файла текстового,если он лежит в папке с программой(ВходнойФайл.txt)
Или введите полное имя файла (C:\...\ВходнойФайл.txt) 123.txt Содержимое файла: 1 2 13 5 2 1 3 17 19 21 Уникальные элементы: 13 5 3 17 19 21
// Внимание! Если программа не работает, обновите версию!
unit ASM;
interface
type SF=(integer,integer);
function AddSF(a,b:SF):SF;
function SubSF(a,b:SF):SF;
function MultSF(a,b:SF):SF;
function DivSF(a,b:SF):SF;
implementation
function Gcd(p:SF):integer;
begin
(var a,var b):=p;
a:=abs(a); b:=abs(b);
while b>0 do (a,b):=(b,a mod b);
Result:=a
end;
function ReductSF(p:SF):SF;
begin
var t:=Gcd(p);
if t>1 then Result:=(p[0] div t,p[1] div t)
else Result:=p
end;
function AddSF(a,b:SF):=ReductSF((a[0]*b[1]+a[1]*b[0],a[1]*b[1]));
function SubSF(a,b:SF):=ReductSF((a[0]*b[1]-a[1]*b[0],a[1]*b[1]));
function MultSF(a,b:SF):=ReductSF((a[0]*b[0],a[1]*b[1]));
function DivSF(a,b:SF):=ReductSF((a[0]*b[1],a[1]*b[0]));
end.
Пример работы с модулем
uses ASM;
begin
var a:=(5,24);
var b:=(7,8);
var c:=AddSF(a,b);
Writeln(a[0],'/',a[1],'+',b[0],'/',b[1],'=',c[0],'/',c[1])
end.
Результат
5/24+7/8=13/12
Const
N = 10;
Var
f:text;
S:string;
A:array[1..N] of longint;
i,j,k:integer;
Begin
ClrScr;
WriteLn('Введите имя файла текстового, если он лежит в папке с программой(ВходнойФайл.txt)');
WriteLn('Или введите полное имя файла (C:\...\ВходнойФайл.txt)');
ReadLn(S);
Assign(f,S);
Reset(f);
i:=1;
Repeat
Read(f,A[i]);
i:=i+1;
Until i>N;
Write('Содержимое файла:');
For i:= 1 to N do
Write(' ',A[i]);
WriteLn;
Write('Уникальные элементы:');
For i:= 1 to N do
Begin
k:=1;
For j:= 1 to N do
if i<>j then
if A[i]=A[j] then k:=k+1;
if k=1 then Write(' ',A[i])
End;
ReadLn;
End.
Пример:
Введите имя файла текстового,если он лежит в папке с программой(ВходнойФайл.txt)
Или введите полное имя файла (C:\...\ВходнойФайл.txt)
123.txt
Содержимое файла: 1 2 13 5 2 1 3 17 19 21
Уникальные элементы: 13 5 3 17 19 21