Сергій2006SSS
11.09.2020 03:22

По линейному алгоритму решить в c++ на двух кустах сидело 16 птиц со второго куста улетело две птицы, а затем с первого куста на второй перелетели 5 птиц после этого на каждом кусте оказалось одно и тоже число птиц. вопрос, сколько птиц было в начале на каждом кусте?

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Регина56797
08.10.2022 01:36
Var a1, b1, c1, a2, b2, c2, p1, p2, s1, s2: real;
begin
  writeln('Введите строны первого треугольника: ');
  read(a1, b1, c1);
  writeln('Введите стороны второго треугольника: ');
  read(a2, b2, c2);
  p1 := (a1 + b1 + c1) / 2;
  p2 := (a2 + b2 + c2) / 2;
  s1 := sqrt(p1 * (p1 - a1) * (p1 - b1) * (p1 - c1));
  s2 := sqrt(p2 * (p2 - a2) * (p2 - b2) * (p2 - c2));
  if (s1 + 1e-3 > s2) and (s1 < s2 + 1e-3) then writeln('Равновеликие')
                                           else writeln('Неравновеликие');
end.
0,0(0 оценок)
Ответ:
gulsaakamaeva
25.09.2022 15:00

При определении значений подобных функций переменная y вычисляется по-разному (по разным формулам) в зависимости от значения x.

Такие задачи решаются с конструкции условного оператора if - else. Поскольку в данном случае мы имеем три условия (x > 0, x = 0 и x < 0), то потребуется использование еще вложенной конструкции if - else, т. к. в языке Pascal нет оператора множественного ветвления (оператор case в данном случае не подходит).

В языке программирования Паскаль (да и в других тоже) желательно вложенные конструкции if - else помещать во внешнюю ветку else, а не if. Так проще не запутаться.

Таким образом, алгоритм вычисления значения функции может быть таким:

Если x > 0, то у = x - 2

Иначе (ниже идет вложенная конструкция)

Если x = 0, то y = 0

Иначе y = |x|.

В последнем пункте можно опустить оператор if с проверкой, что x < 0, так как если ход выполнения программы дошел до этого пункта, то x уже другим быть и не может (варианты, когда он больше или равен нулю, уже были исключены).

Для определения модуля (абсолютного значения) переменной можно использовать встроенную функцию abs() языка Pascal. В данном случае можно обойтись и без нее: поскольку уже известно, что x отрицателен, то, чтобы получить положительное число (модуль), нужно его умножить на -1.

var

   x, y: integer;

 

begin

   write ('x = ');

   readln (x);

 

   if x > 0 then

       y := x - 2

   else

       if x = 0 then

           y := 0

       else

           y := abs(x);

 

   writeln ('y = ', y);

 

end.

Объяснение:

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