cd ~
mkdir folder1
cd folder1
touch file1
touch file2
touch file3
touch file4
tar cvf archive.tar *
mkdir ../folder2
cd ../folder2
touch new_file
cp ../folder1/archive.tar .
tar rvf archive.tar new_file
tar vf archive.tar --delete file3
tar vf archive.tar --list > list1
tar vf ../folder1/archive.tar --list > list2
diff list1 list2
#Разъединение выполнить не получится, потому что все файлы пустые, но если засовывать не пустые, то
split -b 10M archive.tar "part" # вместо 10M нужный размер
cat part* > joined_archive.tar
tar vf archive.tar --list
tar vf joined_archive.tar --list
tar czvf final_archive.tar archive.tar ../folder1/archive.tar joined_archive.tar
procedure Polar(x, y: real; var r, f: real);
begin
r := sqrt(sqr(x) + sqr(y));
if x = 0 then
if y = 0 then f := 0
else
if y > 0 then f := Pi / 2 else f := -Pi / 2
else begin
f := arctan(y / x);
if x < 0 then
if y >= 0 then f := f + Pi else f := f - Pi
end
end;
{ тестовое решение }
var
R, Fi: real;
begin
Polar(1, 1, R, Fi);
Writeln('(+1;+1) -> (', R, ';', Fi, ')');
Polar(1, -1, R, Fi);
Writeln('(+1;-1) -> (', R, ';', Fi, ')');
Polar(-1, 1, R, Fi);
Writeln('(-1;+1) -> (', R, ';', Fi, ')');
Polar(-1, -1, R, Fi);
Writeln('(-1;-1) -> (', R, ';', Fi, ')');
Polar(0, 1, R, Fi);
Writeln('(0;+1) -> (', R, ';', Fi, ')');
Polar(0, -1, R, Fi);
Writeln('(0;-1) -> (', R, ';', Fi, ')');
Polar(0, 0, R, Fi);
Writeln('(0;0) -> (', R, ';', Fi, ')');
end.
Тестовое решение:
(+1;+1) -> (1.4142135623731;0.785398163397448)
(+1;-1) -> (1.4142135623731;-0.785398163397448)
(-1;+1) -> (1.4142135623731;2.35619449019234)
(-1;-1) -> (1.4142135623731;-2.35619449019234)
(0;+1) -> (1;1.5707963267949)
(0;-1) -> (1;-1.5707963267949)
(0;0) -> (0;0)