Вычислить через for и repeat в паскале (1+sin⁡0,1 )(1+sin⁡0,2 )…(1+sin⁡10)

динакоровина динакоровина    3   26.09.2019 19:30    5

Ответы
Kseniaghl Kseniaghl  08.10.2020 20:55
PascalABC.NET 3.4.0, сборка 1672 от 10.06.2018
Внимание! Если программа не работает, обновите версию!

Цикл for

begin
  var p:=1.0;
  for var i:=1 to 100 do p*=(1+Sin(i/10));
  Writeln(p)
end.

Результат
1.72984094681772E-14

Цикл repeat

begin
  var (p,i):=(1.0,0.1);
  repeat
    p*=(1+Sin(i));
    i+=0.1
  until i>10;
  Writeln(p)
end.

Результат
1.72984094681773E-14

Контрольное решение с точностью 20 цифр приведено во вложении. В соответствии с ним верные цифры в результатах подчеркнуты.

Вычислить через for и repeat в паскале (1+sin⁡0,1 )(1+sin⁡0,2 )…(1+sin⁡10)
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика