Volodka
?>

Кто понимает информатику, ответьте Які властивості елементу Button (середовище Lazarus) відповідають за її розміри та розміщення на формі?

Информатика

Ответы

ВостриковаСтародубцева1980

11001101₂ = 315₈

100000011₂ = 403₈

110110110₂ = 666₈

1237₈ = 29F₁₆

3210₈ = 688₁₆

41562₈ = 4372₁₆

Объяснение:

Таблица триад:

0 - 000

1 - 001

2 - 010

3 - 011

4 - 100

5 - 101

6 - 110

7 - 111

11001101₂ = 315₈

Разбиваем число на триады (отделяем по 3 символа, начиная справа, если символов не хватает, дописываем 0 слева)

Переводим числа используя таблицу триад

Записываем снизу вверх

101 - 5

001 - 1

011 - 3

100000011₂ = 403₈

011 - 3

000 - 0

100 - 4

110110110₂ = 666₈

110 - 6

110 - 6

110 - 6

Таблица тетрад:

0 - 0000

1 - 0001

2 - 0010

3 - 0011

4 - 0100

5 - 0101

6 - 0110

7 - 0111

8 - 1000

9 - 1001

10 - 1010

11 - 1011

12 - 1100

13 - 1101

14 - 1110

15 - 1111

1237₈ = 29F₁₆

Переведём каждую цифру в триаду

1 - 001

2 - 010

3 - 011

7 - 111

Запишем их в строку и переформируем в тетрады (отделяем по 4 символа, начиная справа, если символов не хватает, дописываем 0 слева)

001 010 011 111

Переводим числа используя таблицу триад

Записываем снизу вверх

1111 - 15

1001 - 9

0010 - 2

3210₈ = 688₁₆

3 - 011

2 - 010

1 - 001

0 - 000

011 010 001 000

1000 - 8

1000 - 8

0110 - 6

41562₈ = 4372₁₆

4 - 100

1 - 001

5 - 101

6 - 110

2 - 010

100 001 101 110 010

0010 - 2

0111 - 7

0011 - 3

0100 - 4

В качестве цифр шестнадцатеричной системы счисления обычно используются цифры от 0 до 9 и латинские буквы от A до F.

A₁₆ = 10₁₀   B₁₆ = 11₁₀   C₁₆ = 12₁₀   D₁₆ = 13₁₀   E₁₆ = 14₁₀   F₁₆ = 15₁₀  

Таблицы триад и тетрад - это перевод первых чисел 10 системы счисления в двоичную с дописыванием 0 слева

nuralievelsh
Известно уравнение прямой, проходящей через две точки A(x₁,y₁) и B(x₂,y₂). Если третья точка C(x₃,y₃) лежит на этой же прямой, то после подстановки её координат уравнение обращается в тождество
\displaystyle \frac{x-x_1}{x_2-x_1}= \frac{y-y_1}{y_2-y_1} \to \frac{x_3-x_1}{x_2-x_1} \equiv \frac{y_3-y_1}{y_2-y_1}
Следовательно, нужно проверить, выполняется ли это тождество для заданных координат.
В этом тождестве есть одна неприятная вещь: если y₂=y₁ и/или x₂=x₁, то в знаменателе получается ноль, чему компьютер уж точно не обрадуется. Поэтому такой случай надо рассмотреть отдельно, исходя из геометрического смысла.
Если же y₂≠y₁ и x₂≠x₁, можно привести тождество к более удобному виду:
\displaystyle \frac{x_3-x_1}{x_2-x_1} \equiv \frac{y_3-y_1}{y_2-y_1} \to (x_3-x_1)(y_2-y_1)\equiv (y_3-y_1)(x_2-x_1); \\ p_1=(x_3-x_1)(y_2-y_1), \ p_2=(y_3-y_1)(x_2-x_1), \ p_1\equiv p_2
Поскольку координаты могут быть и не целыми, а такие нецелые ("вещественные") числа представляются в компьютере с ограниченной точностью, тождество может оказаться ложным по причине такой неточности. Для обхода такого случая будем полагать, что два значения равны друг-другу, если их разность по модулю не превышает некоторой малой величины, т.е.:
|p_1-p_2|\leq \epsilon, \ \epsilon=10^{-8}

Вернемся к случаю y₂=y₁. В этом случае прямая параллельна оси Х, т.е. тогда условием принадлежности третьей точки данной прямой будет y₃=y₁ при любом х. То же можно сказать и про случай х₂=х₁, когда следует проверить, что х₃=х₁.

Если все три точки лежат на одной прямой, то у средней из них значение любой из координат должно находиться между значениями двух одноименных координат крайних точек.

// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
var
  x1,y1,x2,y2,x3,y3,p1,p2:real;
  on_line:boolean;
begin
  // Без проверки считаем, что у двух любых точек
  // не может быть одинаковых координат
  Write('Координаты точки А: '); Read(x1,y1);
  Write('Координаты точки B: '); Read(x2,y2);
  Write('Координаты точки C: '); Read(x3,y3);
  if x3=x1 then on_line:=(x2=x1);
  if (not on_line) then
    if y3=y1 then on_line:=(y2=y1);
  if not on_line then begin
    p1:=(x3-x1)/(x2-x1); p2:=(y3-y1)/(y2-y1);
    on_line:=(abs(p1-p2)<1e-8)
    end;
  if on_line then begin
    Writeln('Точки лежат на одной прямой');
    if (x2>x1) and (x2<x3) or (x2>x3) and (x2<x1)
    then Writeln('Точка B внутри')
    else
      if (x3>x1) and (x3<x2) or (x3>x2) and (x3<x1)
      then Writeln('Точка C внутри')
      else
        Writeln('Точка A внутри')
    end
  else
    Writeln('Точки не лежат на одной прямой')
end.

Тестовое решение:
Координаты точки А: 1 2.5
Координаты точки B: 3 3.5
Координаты точки C: -4 0
Точки лежат на одной прямой
Точка A внутри

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

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

Кто понимает информатику, ответьте Які властивості елементу Button (середовище Lazarus) відповідають за її розміри та розміщення на формі?
Ваше имя (никнейм)*
Email*
Комментарий*

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

Станислав Валерий1696
kristal1
gordeevadesign2986
mixtabak2
kodim4
serov555zaq5
smileystyle
ivstigres65
Bogataya Vladimir318
Андреевна
nikv568734
zsv073625
bd201188
Кочугурова
serebrennikova99