Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 25.05.2017
Сообщений: 21

Вместо суммы выдаёт NaN

06.03.2019, 17:08. Показов 1187. Ответов 2

Студворк — интернет-сервис помощи студентам
Задача: вычислить значение суммы https://www.cyberforum.ru/cgi-bin/latex.cgi?\sum_{n=1}^{N}{a}_{n}(x) при изменении аргумента в диапазоне https://www.cyberforum.ru/cgi-bin/latex.cgi?h = \frac{b-a}{10}. Сумма приблизительно равна функции https://www.cyberforum.ru/cgi-bin/latex.cgi?y = f(x), поэтому при вычислении суммы для сравнения необходимо вычислить и эту функцию. (Сумма равна https://www.cyberforum.ru/cgi-bin/latex.cgi?-\frac{{(2x)}^{2}}{2}+...+{(-1)}^{n} \cdot \frac{{(2x)}^{2n}}{(2n)!}, https://www.cyberforum.ru/cgi-bin/latex.cgi?0.1 \leq x \leq 1, https://www.cyberforum.ru/cgi-bin/latex.cgi?n = 15, https://www.cyberforum.ru/cgi-bin/latex.cgi?y = 2({cos}^{2}(x)-1)).
Код программы:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
var
  a, b, h, s, an, x: real;
  n, k, p, i, j: integer;
 
begin
  writeln('Введите a и b');
  read(a, b); // Входные данные 1 2
  h := (b - a) / 10;
  n := 15;
  x := 0.1;
  while x <= 1 do
  begin
    k := 0;
    s := 0;
    for i := 1 to n do
    begin
      k := (k + 1) * 2;
      p := 1;
      for j := 1 to k do
        p := p * j;
      if i mod 2 = 0 then an := exp(ln(2 * x) * 2 * i) / p else an := -exp(ln(2 * x) * 2 * i) / p;
      s := s + an;
    end;
    writeln('x = ', x, ', сумма = ', s, ', F(x) = ', 2 * (cos(x) * cos(x) - 1));
    x := x + h;
  end;
end.
Вместо суммы выдаёт NaN. Что не так?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.03.2019, 17:08
Ответы с готовыми решениями:

Вместо числа выходит NaN
Написал вот такую вот программку а в результате выдает NAN вместо ответа никак не могу исправить, помогите пожалуйста. Задание приложил...

Real выдаёт nan
program ecol; uses crt; var Xn, X, M, Ct, Vt, Vt1, V, Xcr, Ch, chisl, znam: real; menu: integer; begin

Ища корень методом итераций выдает nan
Мне надо найти корень уравнения методом итераций. Что на С++, что на Паскале результат выходит Not a number. Когда решаю с помощью этих...

2
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
06.03.2019, 17:23
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var
  a, b, h, s, an, x: real;
  n,i: integer;
begin
  a:=0.1;
  b:=1;
  h := (b-a)/10;
  n := 15;
  x := a;
  while x <= b do
   begin
    an:=1;
    s:=0;
    for i:=1 to n do
     begin
      an:=-an*sqr(2*x)/(2*i)/(2*i-1);
      s:=s+an;11
    end;
    writeln('x=',x:3:1,'  сумма=',s:6:3,' F(x)=',2*(cos(x)*cos(x)-1):6:3);
    x := x + h;
  end;
end.
0
 Аватар для Sun Serega
2355 / 1458 / 526
Регистрация: 07.04.2017
Сообщений: 4,798
06.03.2019, 17:45
NaN (Not a Number, НеЧисло) - это результат неправильной арифметической операции. Как деление 0/0.
У вас из выражений который могут вернуть NaN вроде только exp(ln(2 * x) * 2 * i).

Вообще, для возведения в степень есть специальная функция: Power(2*x, 2*i)
И оператор**: (2*x) ** (2*i)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.03.2019, 17:45
Помогаю со студенческими работами здесь

Вычисление суммы дает результат NaN
Написать программу и составить блок-схему для вычисления таблицы значений функции F(x)=\frac{\sin \left(\sqrt{x-3}...

После выполнения программы, в файле выдает значение NAN
Запускаю эту программу var f, g: Text; fi, result: Double; begin Assign(f, 'f.txt'); Reset(f); Assign(g,...

Выдаёт NaN вместо ответа, при этом цикл проходит 144 , в задаче используется 3 цикла, while, for, dowhile
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace WindowsFormsApplication10 { ...

Вместо суммы выдает формулу
Случилась проблема, в файле Excel вместо суммы, выводится сама формула. Изначально формат ячеек был текстовый, изменил на числовой и общий,...

Выдает NaN
Помогите пожалуйста, в чем ошибка. using System; using System.Collections.Generic; using System.Linq; using System.Text; using...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru