0 / 0 / 0
Регистрация: 06.11.2016
Сообщений: 110
1

Дано натуральное число N. Вычислить: (1/sin1)*(1/sin1+sin2)*.*(1/sin1+sin2+.+sinN)

05.12.2017, 22:24. Показов 13576. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано натуральное число N. Вычислить: (1/sin1)*(1/sin1+sin2)*...*(1/sin1+sin2+...+sinN)
Помогите пожалуйста с программой

Pascal
1
2
3
4
5
6
7
8
9
10
var 
s, ssin: real; 
i, n: integer; 
 
begin readln(n);ssin := 0;s := 1; 
for i := 1 to n do 
begin ssin := ssin + sin(i);s := s * 1 / ssin; 
end; 
writeln(s); 
end.
Правильная ли это программа?Незнаю как проверить
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2017, 22:24
Ответы с готовыми решениями:

Не понимаю как составить программу вычисления суммы и произведения ряда sin1, sin2, sin3, ., sinN
Составить программу вычисления суммы и произведения ряда sin1, sin2, sin3, ..., sinN Задачу мне...

Описать функцию Sin1(x, ε)
Описать функцию Sin1(x, ε) вещественного типа (параметры x, ε — вещественные, ε > 0),...

Дано натуральное число n. Вычислить: 1/sin1+1/(sin1+sin2)+.+1/(sin1+sin2+.sinn)
Дано натуральное число n. Вычислить: 1/sin1+1/(sin1+sin2)+...+1/(sin1+sin2+...sinn)

Дано натуральное число n. Вычислить cos1/sin1 x cos1+cos2/sin1+sin2 x....x cos1+...+cos n/sin1+...sin n
2. Дано натуральное число n. Вычислить cos1/sin1 x cos1+cos2/sin1+sin2 x....x cos1+...+cos...

5
Эксперт Pascal/Delphi
6804 / 4563 / 4817
Регистрация: 05.06.2014
Сообщений: 22,438
06.12.2017, 08:02 2
Циклом «пока» вычислить сумму ряда 1/sin 1+1/sin 1+sin 2+...+1/sin 1+...sin n
0
0 / 0 / 0
Регистрация: 06.11.2016
Сообщений: 110
06.12.2017, 21:53  [ТС] 3
это для суммы,а мне надо для произведения
0
Эксперт Pascal/Delphi
6804 / 4563 / 4817
Регистрация: 05.06.2014
Сообщений: 22,438
07.12.2017, 08:10 4
+ замените на *
0
0 / 0 / 0
Регистрация: 06.11.2016
Сообщений: 110
07.12.2017, 13:32  [ТС] 5
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var n,i,j:integer;
    s,t:real;
begin
write('n=');
readln(n);
s:=1;
i:=0;
while i<n do
 begin
  i:=i+1;
  j:=0;
  t:=0;
  while j<i do
   begin
    j:=j+1;
    t:=t+sin(j);
   end;
  s:=s*1/t;
 end;
write('S=',s:0:5);
readln
end.
так??
0
Модератор
9536 / 4862 / 3231
Регистрация: 17.08.2012
Сообщений: 15,213
08.12.2017, 04:12 6
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

Правильно, если только Ваша формула выглядит вот так:

(1/sin1)*(1/(sin1+sin2))*...*(1/(sin1+sin2+...+sinN))

а не так, как Вы её написали. Пока будем считать, что Вы ошиблись.

Единственное замечание: на 1 умножать незачем, так что
Pascal
18
  s:=s/t;
Программа и по ссылке, и переделанная - не оптимальны. Незачем каждый раз вычислять сумму синусов, достаточно к уже вычисленной сумме добавить новый синус.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var n, i: integer;
    p, t: real;
begin
  write('n = ');
  readln(n);
  p := 1;
  i := 0;
  t := 0;
  while i < n do
    begin
      inc(i);
      t := t + sin(i);
      p := p / t
    end;
  write('P = ',p:0:5);
  readln
end.
Для данного алгоритма логично использовать цикл с параметром. Получится программа, которую Вы привели в топике, она правильная. Только *1 убрать и код переформатировать. Вот, то же самое, но написанное по-человечески:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var n, i: integer;
    p, t: real;
begin
  write('n = ');
  readln(n);
  t := 0;
  p := 1;
  for i := 1 to n do
    begin
      t := t + sin(i);
      p := p / t
    end;
  write('P = ', p:0:5);
  readln
end.
Если всё-таки формула выглядит именно так, как Вы её написали:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var n, i: integer;
    p, t: real;
begin
  write('n = ');
  readln(n);
  t := 1 / sin(1);
  p := t;
  for i := 2 to n do
    begin
      t := t + sin(i);
      p := p * t
    end;
  write('P = ', p:0:5);
  readln
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.12.2017, 04:12
Помогаю со студенческими работами здесь

Вычислить y=sin1+sin1.1+sin1.2+...+sin2. Цикл с параметром
Вычислить y=sin1+sin1.1+sin1.2+...+sin2 пожалуйста всю программу напишите)

Вычислить sin1+sin1
Вычислить sin1+sin1.5+...+sin10

Вычислить значение выражения cos2(sin1/z)
Помогите решить срочно, буду очень признателен: 2. cos2(sin1/z) (cos2 - косинус в квадрате,...

вычислить S=(1+sin2)^2+(1-sin3)^2+(1+sin4)^4+...+(1-sin9)^9
Вычислить: S=(1+sin2)^2+(1-sin3)^2+(1+sin4)^4+...+(1-sin9)^9


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru