В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
alexeymaksimov
alexeymaksimov
03.06.2023 13:27 •  Информатика

Составить блок-схему алгоритма решения ! ​

Показать ответ
Ответ:
nastialeon
nastialeon
16.05.2021 10:44
Const
  n = 5;

type
  tM = array[1..n, 1..n] of integer;
  tV = array[1..n] of integer;

procedure ProdMV(a: tM; b: tV; var c: tV);
var
  i, j, s: integer;
begin
  for i := 1 to n do
  begin
    s := 0;
    for j := 1 to n do s := s + a[i, j] * b[j];
    c[i] := s;
  end
end;

procedure SumV(a, b: tV; var c: tV);
var
  i: integer;
begin
  for i := 1 to n do c[i] := a[i] + b[i]
end;

procedure InitMatrix(var a: tM; p, q: integer);
{ Инициализация элементов случайными числами на [p;q]}
var
  i, j, k: integer;
begin
  k := q - p + 1;
  for i := 1 to n do
    for j := 1 to n do
      a[i, j] := Random(k) + p
end;

procedure InitVector(var a: tV; p, q: integer);
{ Инициализация элементов случайными числами на [p;q]}
var
  i, k: integer;
begin
  k := q - p + 1;
  for i := 1 to n do
    a[i] := Random(k) + p
end;

procedure DisplayMatrix(a: tM; s: string);
var
  i, j: integer;
begin
  Writeln(s);
  for i := 1 to n do
  begin
    for j := 1 to n do Write(a[i, j]:5);
    Writeln
  end
end;

procedure DisplayVector(a: tV; s: string);
var
  i: integer;
begin
  Writeln(s);
  for i := 1 to n do Write(a[i]:5);
  Writeln
end;

var
  A, B: tM;
  x, y, r, r1, r2: tV;

begin
  Randomize;
  InitMatrix(A, -50, 50);
  DisplayMatrix(A, 'Матрица А');
  InitMatrix(B, -20, 65);
  DisplayMatrix(B, 'Матрица B');
  InitVector(x, -10, 14);
  DisplayVector(x, 'Вектор x');
  InitVector(y, 5, 40);
  DisplayVector(y, 'Вектор y');
  ProdMV(A, x, r1);
  ProdMV(B, y, r2);
    { Для отладки раскомментарить две нижележащие строчки }
  { DisplayVector(r1,'Вектор r1');
    DisplayVector(r2,'Вектор r2'); }
  SumV(r1, r2, r);
  DisplayVector(r, 'Вектор результата')
end.

Тестовое решение:
Матрица А
  -19   27   30   25  -14
   32  -35    9  -38   16
  -39  -36   13   41  -37
    7  -18   -8   35  -10
    1  -48    1  -19   -2
Матрица B
  -15   62  -18   58   62
   32   58   43    3   12
   15   11   39  -20  -16
   47  -10   24   16   55
   -8   46   10    0   45
Вектор x
    2   -6   10    0   -3
Вектор y
   15   14   22   14   15
Вектор результата
 2131 2776 1096 2214 1725
0,0(0 оценок)
Ответ:
настя123456789108
настя123456789108
21.03.2022 05:26
Чтобы квадрат вписался в круг, его диагональ должна быть равна диаметру круга. Если трактовать "уместиться" как "пролезть", то диагональ должна быть меньше диаметра..
Формулы площадей квадрата  S₁ и круга S₂ известны, что легко позволяет нам найти нужное условие.
\displaystyle S_1=a^2 \to a=\sqrt{S_1}; \ d=a \sqrt{2}= \sqrt{2S_1} \\ S_2=\frac{\pi D^2}{4} \to D=\sqrt{\frac{4S_2}{\pi}}; \\ d\ \textless \ D \to \sqrt{2S_1}\ \textless \ \sqrt{\frac{4S_2}{\pi}}; \ 2S_1\ \textless \ \frac{4S_2}{\pi} \ \to \ \boxed{\pi s_1\ \textless \ 2S_2}
Если нужно, чтобы случай, когда квадрат вписан в круг тоже учитывался, строгое неравенство следует заменить нестрогим.

// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
begin
  var s1:=ReadReal('Площадь квадрата');
  var s2:=ReadReal('Площадь круга');
  if pi*s1<2*s2 then Writeln('Квадрат умещается в круге')
  else Writeln('Квадрат не умещается в круге')
end.

Тестовое решение:
Площадь квадрата 24.6
Площадь круга 28.4
Квадрат не умещается в круге
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота