|
|
zadach218.PAS |
|
{* Задача 218 *}Unit ZADACH218;Interface Implementation Begin writeln('Используя вспомогательное нахождения функции sin(x)=x-x**3/3!+x**5/5!-x**7/7!+... процесс суммирования остановить, если очередной член станет меньше 0.001. Вычислить для заданного N значение выражение: 1/sin1+1/(sin1+sin2)+1/(sin1+sin2+sin3)+...'); End. Program zadach218; Uses zadach218.pas; {* Эту строку можно удалить *} Uses crt; {* Подключаем внешние файлы *} Var {* Объявление переменных *} s : real; z : real; i : longint; n : longint; Function sinus( x : real ); Var {* Объявление переменных *} ot : real; dr : real; ch : real; zn : longint; k : longint; Begin ot := 0; dr := x; zn := 1; k := 1; While abs(dr) > 0.001 Do Begin ot := ot + dr; ch := - dr * x * x; zn := zn * (k + 1) * (k + 2); k := k + 2; dr := ch / zn; End; sinus := ot; End; Begin clrscr; {* Очистка экрана *} write('n='); readln(n); s := 0; z := 0; For i := 1 To n Do {* Увеличиваем i от 1 до n с шагом 1 *} Begin z := z + sinus(i); If z = 0 Then halt; s := s + 1 / z; End; writeln('Ответ:', s : 5 : 4); readln; {* Приостановка программы. Ожидание Enter *} End. 07.08.2014 - Breakpoint - точка остановки 07.08.2014 - Топ-10 самых популярных приложений в Facebook 18.11.2013 - Панель управления и персонализация системы. Windows Vista 18.11.2013 - Логические и физические диски. Windows Vista 18.11.2013 - Удаление файлов и папок 01.11.2013 - Программирование дисковых подсистем: возможности 31.10.2013 - Windows8 или Windows7? 31.10.2013 - Windows8, игры |
|
Non-commercial fansite
|