М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
2MaRiIa2
2MaRiIa2
02.01.2020 19:51 •  Информатика

Вычислить корень кубический суммы двух заданных вещественных чисел a и b.

👇
Ответ:
kudryavcevanat
kudryavcevanat
02.01.2020
Тут имеется один "подвох" и на него часто ловятся.
Можно воспользоваться функций Power для возведения в степень 1/3, либо применить известную формулу \displaystyle a^x=e^{x\ln a}
Но в обоих случаях используется (явно или скрыто) вычисление логарифма. А мы помним, что логарифм определен только для положительного аргумента.
По заданию нужно найти кубический корень из a+b. И этот корень определен для любого вещественного числа, в отличии от логарифма.
Вспоминаем:
\displaystyle \sqrt [3]x=\left. \left\{\begin{matrix}
-\sqrt[3]{|x|}, &x\ \textless \ 0\\ 0, & x=0 \\ \sqrt [3]x, &x\ \textgreater \ 0 \end{matrix}\right.
\right| \qquad \sqrt [3]x=sign(x)\times\sqrt[3]{|x|}

И только теперь можно писать программу.

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

begin
  var a,b,c:real; Read(a,b);
  c:=a+b;
  Writeln(sign(c)*power(abs(c),1/3))
end.

Примеры
14.283 -32.17
-2.61524573390822

13.183 -13.183
0
4,4(95 оценок)
Открыть все ответы
Ответ:
// PascalABC.NET 3.1, сборка 1201 от 18.03.2016
begin
  var k:=0;
  var n:=ReadInteger();
  var nmax:=0;
  while n<>0 do begin
    Inc(k);
    if n mod 10 = 0 then
      if n>nmax then nmax:=n;
    n:=ReadInteger()  
    end;
  var cntrl:=ReadInteger();
  Writeln('Получено ',k,' чисел');
  Writeln('Полученное контрольное значение: ',cntrl);
  Writeln('Вычисленное контрольное значение: ',nmax);
  if cntrl=nmax then Writeln('Контроль пройден')
  else Writeln('Контроль не пройден')
end.

Тестовое решение:
53
16
40
9
10
32
74
0
40
Получено 7 чисел
Полученное контрольное значение: 40
Вычисленное контрольное значение: 40
Контроль пройден
4,6(87 оценок)
Ответ:
nataliinfp0co9o
nataliinfp0co9o
02.01.2020
Если считать отрицательные трехзначные, то сумма таких чисел в диапазонах от -999 до -100 и от 100 до 999 будет равна 0. Для только положительных:

//c циклом for
var s,i:integer;
begin
  for i:=100 to 999 do
    if i mod 77 = 0 then s:=s+i;
  writeln('Сумма трехзначных кратных 77: ',s);
end.

Тестовое решение:
Сумма трехзначных кратных 77: 5929

// с циклом while
var s,i:integer;
begin
  i:=100;
  while i<=999 do begin
    if i mod 77 = 0 then s:=s+i;
    i:=i+1;
  end;
  writeln('Сумма трехзначных кратных 77: ',s);
end.
4,5(22 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ