// PascalABC.NET 3.0, сборка 1076 type Point=record x,y:real end; Line=record A,B:Point end; Triangle=record A,B,C:Point; sa,sb,sc:real; { длины сторон } end;
procedure GetPoint(PointName:char; var M:Point); begin Write('Введите координаты точки ',PointName,'(x,y): '); Read(M.x,M.y) end;
function LineLength(A,B:Point):real; begin LineLength:=sqrt(sqr(B.x-A.x)+sqr(B.y-A.y)) end;
procedure CreateTriangle(var T:Triangle; var l:boolean); begin With T do begin GetPoint('A',A); GetPoint('B',B); GetPoint('C',C); sa:=LineLength(B,C); sb:=LineLength(A,C); sc:=LineLength(A,B); l:=(sa+sb>sc) and (sa+sc>sb) and (sb+sc>sa) end end;
function TriangleIsLikes(T1,T2:Triangle):boolean; var k1,k2,k3:real; begin k1:=T1.sa/T2.sa; k2:=T1.sb/T2.sb; if k1=k2 then begin k3:=T1.sc/T2.sc; TriangleIsLikes:=k1=k3 end else TriangleIsLikes:=False end;
var T1,T2:Triangle; legal:boolean; begin Writeln('*** Первый треугольник ***'); CreateTriangle(T1,legal); if legal then begin Writeln('*** Второй треугольник ***'); CreateTriangle(T2,legal); if legal then if TriangleIsLikes(T1,T2) then Writeln('Треугольники подобны') else Writeln('Треугольники не подобны') else Writeln('Треугольник невозможно построить') end else Writeln('Треугольник невозможно построить') end.
1) Пусть время, за которое передают файл размером 10 Мбайт со скоростью 2 621 440 бит/c, равно X. Следовательно, имеем уравнение: 10 Мбайт / X = 2 621 440 бит/c 10 * 1024 * 1024 * 8 бит / X = 2 621 440 бит/c 83 886 080 бит / x = 2 621 440 бит/c X = 83 886 080 бит / 2 621 440 бит/c = 32 c ответ: За 32 секунды.
2) Пусть наибольший размер файла, который может быть передан через соединение со скоростью 256 000 бит/с за 10 минут, равен X. Следовательно, имеем уравнение: X / 10 мин = 256 000 бит/c X / 10 * 60 с = 256 000 бит/с X / 600 c = 256 000 бит/с X = 256 000 бит/с * 600 с = 153600000 бит = 19200000 байт = 18750 Кбайт ответ: наибольший размер файла – 18750 Кбайт
3) В 2 байтах может уместится 65 536 разных значений, а именно столько разных цветов мы имеем. Значит, для хранения каждого пикселя нам надо 2 байта. 1024x800 = 1024*800 = 819 200 пикселей, а соответственно 2 * 819 200 = 1 638 400 байт. Пусть время, за которое передают файл размером 1 638 400 байт со скоростью 102 400 бит/c, равно X. Следовательно, имеем уравнение: 1 638 400 байт / X = 102 400 бит/c 1 638 400 * 8 бит / X = 102 400 бит/c 13107200 бит / X = 102 400 бит/с X = 13107200 бит / 102 400 бит/с = 128 c ответ: 128 секунд.
type
Point=record
x,y:real
end;
Line=record
A,B:Point
end;
Triangle=record
A,B,C:Point;
sa,sb,sc:real; { длины сторон }
end;
procedure GetPoint(PointName:char; var M:Point);
begin
Write('Введите координаты точки ',PointName,'(x,y): ');
Read(M.x,M.y)
end;
function LineLength(A,B:Point):real;
begin
LineLength:=sqrt(sqr(B.x-A.x)+sqr(B.y-A.y))
end;
procedure CreateTriangle(var T:Triangle; var l:boolean);
begin
With T do begin
GetPoint('A',A);
GetPoint('B',B);
GetPoint('C',C);
sa:=LineLength(B,C);
sb:=LineLength(A,C);
sc:=LineLength(A,B);
l:=(sa+sb>sc) and (sa+sc>sb) and (sb+sc>sa)
end
end;
function TriangleIsLikes(T1,T2:Triangle):boolean;
var
k1,k2,k3:real;
begin
k1:=T1.sa/T2.sa; k2:=T1.sb/T2.sb;
if k1=k2 then begin
k3:=T1.sc/T2.sc;
TriangleIsLikes:=k1=k3
end
else
TriangleIsLikes:=False
end;
var
T1,T2:Triangle;
legal:boolean;
begin
Writeln('*** Первый треугольник ***');
CreateTriangle(T1,legal);
if legal then begin
Writeln('*** Второй треугольник ***');
CreateTriangle(T2,legal);
if legal then
if TriangleIsLikes(T1,T2) then Writeln('Треугольники подобны')
else Writeln('Треугольники не подобны')
else Writeln('Треугольник невозможно построить')
end
else Writeln('Треугольник невозможно построить')
end.
10 Мбайт / X = 2 621 440 бит/c
10 * 1024 * 1024 * 8 бит / X = 2 621 440 бит/c
83 886 080 бит / x = 2 621 440 бит/c
X = 83 886 080 бит / 2 621 440 бит/c = 32 c
ответ: За 32 секунды.
2) Пусть наибольший размер файла, который может быть передан через соединение со скоростью 256 000 бит/с за 10 минут, равен X. Следовательно, имеем уравнение:
X / 10 мин = 256 000 бит/c
X / 10 * 60 с = 256 000 бит/с
X / 600 c = 256 000 бит/с
X = 256 000 бит/с * 600 с = 153600000 бит = 19200000 байт = 18750 Кбайт
ответ: наибольший размер файла – 18750 Кбайт
3) В 2 байтах может уместится 65 536 разных значений, а именно столько разных цветов мы имеем. Значит, для хранения каждого пикселя нам надо 2 байта. 1024x800 = 1024*800 = 819 200 пикселей, а соответственно 2 * 819 200 = 1 638 400 байт.
Пусть время, за которое передают файл размером 1 638 400 байт со скоростью 102 400 бит/c, равно X. Следовательно, имеем уравнение:
1 638 400 байт / X = 102 400 бит/c
1 638 400 * 8 бит / X = 102 400 бит/c
13107200 бит / X = 102 400 бит/с
X = 13107200 бит / 102 400 бит/с = 128 c
ответ: 128 секунд.