alakhverdov138
?>

Вариант 3 Составьте программу рисования узора. Начальное положение Робота отмечено символом 6. Использовать линейный алгоритм Робот движется коль стены от начального положения (0) до конца стены Стена располагается по диагонали от правого верхнего к девому никнему углу поля, Необходимо якрасить все внутренние углы стены, как показано на приѕtере Ромеры стены могут быть произвольны. Необходимо перевести Робота із начального положения (0точку А, закрашивая при том указанные клетки пола. Размеры стен и расстояние между произвольны СПОРЧНООО

Информатика

Ответы

pechyclava
// PascalABC.NET 3.2, сборка 1389 от 01.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var xa,ya,xb,yb,xc,yc:real;
  Write('Введите координаты точки А: '); Read(xa,ya);
  Write('Введите координаты точки B: '); Read(xb,yb);
  Write('Введите координаты точки C: '); Read(xc,yc);
  var xd:=(xb+xc)/2;
  var yd:=(yb+yc)/2;
  var ma:=sqrt(sqr(xd-xa)+sqr(yd-ya));
  Writeln('ma=',ma:0:5);
  var AB:=sqrt(sqr(xb-xa)+sqr(yb-ya));
  var AC:=sqrt(sqr(xc-xa)+sqr(yc-ya));
  var BC:=sqrt(sqr(xc-xb)+sqr(yc-yb));
  var Wb:=sqrt(AB*BC*(sqr(AB+BC)-AC*AC))/(AB+BC);
  Writeln('Wb=',Wb:0:5)
end.

Результат
Введите координаты точки А: 0 0
Введите координаты точки B: 2 1
Введите координаты точки C: -2 3
ma=2.00000
Wb=2.66667

Pascal. записать листинг программы на языке паскаль: треугольник задан координатами вершин а(0; 0),
rpforma71189
Function Sq(a,b,c:real):real;
Var p:real;
Begin
p:=(a+b+c)/2;
result:=Sqrt(p*(p-a)*(p-b)*(p-c))
End;

Function Tr(a,b,c:real):boolean;
Begin
result:=(a+b>c)and(a+c>b)and(b+c>a)
End;

Var
a,b,c,k1,k2,h,t,s,r1,r2:real;
Begin
writeln(' найти радиус или площадь треугольника? если радиус,то нажмите 1. Если площадь, то нажмите 2 ');
readln(k1);
if k1=1 then 

 begin 
 writeln('окружность вписанная(нажмите 1) или описанная(нажмите 2)?');
 readln(k2);

 write('сторона а = ');
 readln(a);
 write('сторона b = ');
 readln(b);
 write('сторона с = ');
 readln(c);
 if Tr(a,b,c) then
  begin
  s:=Sq(a,b,c);

  if k2=1 then 
  begin
  r1:=(a+b+c)/(2*s);
  writeln('радиус вписанной окружности = ' , r1);
  end;

  if k2=2 then 
  begin
  r2:=a*b*c/(4*s);
  writeln('радиус описанной окружности = ', r2);
  end;
  end else WriteLn('Треугольник не существует');
 end
else

 if k1=2 then
 begin
 writeln('что вам известно? если а и h, то нажмите 1. если а,b,с то нажмите 2' );
 readln(k2);
 if k2=1 then
  begin
  write('высота = ');
  readln(h);
  write('cторона = ');
  readln(t);
  s:=1/2*h*t;
  writeln('площадь = ',s);
  end;

  if k2=2 then
  begin
  Write('a = ');
  ReadLn(a);
  Write('b = ');
  ReadLn(b);
  Write('c = ');
  ReadLn(c);
  if Tr(a,b,c) then
   begin
   s:=Sq(a,b,c);
   writeln('площадь = ',s) ;
   end else WriteLn('Треугольник не существует');
  end;
 end;
end.

Пример:
 найти радиус или площадь треугольника? если радиус,то нажмите 1. Если площадь, то нажмите 2 
2
что вам известно? если а и h, то нажмите 1. если а,b,с то нажмите 2
1
высота = 3
cторона = 4
площадь = 6

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Вариант 3 Составьте программу рисования узора. Начальное положение Робота отмечено символом 6. Использовать линейный алгоритм Робот движется коль стены от начального положения (0) до конца стены Стена располагается по диагонали от правого верхнего к девому никнему углу поля, Необходимо якрасить все внутренние углы стены, как показано на приѕtере Ромеры стены могут быть произвольны. Необходимо перевести Робота із начального положения (0точку А, закрашивая при том указанные клетки пола. Размеры стен и расстояние между произвольны СПОРЧНООО
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Ольга тимур
Анна егорович526
lsuvorova1987
Vitalevich
Оксана Анна
Татьяна-Мария
sveta1864
ambiente-deco516
endyurans2ooo
zloshop9
gelena03
khar4550
twisty20075004
Kalashnikova
ka-shop