Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 29.09.2019
Сообщений: 29

Выдаёт -nan(ind)

13.01.2020, 19:28. Показов 1513. Ответов 7

Студворк — интернет-сервис помощи студентам
Header.h файл
C++
1
2
3
4
5
6
7
#pragma once
double f(double x);
double h(double a, double b, int n);
double hi(int i, int n, double a, double b);
double xi(int i, int n, double b, double a);
double sigma(int n, double a, double b, int i);
double integral(double a, double E, double b, int i, int n);
main.cpp файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "Header.h"
#include <iostream>
using namespace std;
int main()
{
    int i = 0;
    double n;
    double a, b, E;
    n = 2;
    cout << "input interval [a,b] =" << endl;
    cin >> a;
    cin >> b;
    cout << "input E=" << endl;
    cin >> E;
    cout << "integral is" << integral(a, E, b, n, i) << endl;
}
func.cpp файл
C++
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include "Header.h"
#include <stdio.h>
#include <cmath>
double f(double x)
{
    return x;
}
double h(double a, double b, int n)
{
    return (b - a) / n;
}
double hi(int i, int n, double b, double a)
{
    return i * (b - a) / n;
}
double xi(double a, double b, int i, int n)
{
    return a + hi(i, a, b, n) - h(a, b, n) / 2;
}
double sigma(int n, double a, double b, int i)
{
    double sum = 0;
    for (i = 1; i < n; i++)
    {
        sum += f(xi(a, b, i, n));
    }
    return h(a, b, n) * sum;
}
double integral(double a, double b, double E, int n, int i)
{
    double s1, s2;
    s1 = sigma(n, a, b, i);
    s2 = s1;
    do
    {
        s1 = s2;
        n *= 2;
        s2 = sigma(a, n, b, i);
    } while (fabs(s1 - s2) > E);
    return s2;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.01.2020, 19:28
Ответы с готовыми решениями:

Почему выдает -nan(ind)
#include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int main() { setlocale(LC_ALL, &quot;rus&quot;); int x =...

На выходе выдает -nan(ind)
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;cmath&gt; using namespace std; int main() { long double y, a, c, b; ...

вижуал выдает -nan(ind) как ответ
Здраствуйте, не могли бы вы помочь с проблемой -nan(ind), я знаю что это связано с отрицательным числом, помогите пожалуйста:umnik: ...

7
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
13.01.2020, 19:37
Пользуйтесь отладчиком, добавьте везде, где есть деление, проверку на 0


А зачем вот это?
Цитата Сообщение от Xoluz_1 Посмотреть сообщение
double f(double x)
{
    return x;
}
0
 Аватар для FFPowerMan
2156 / 1236 / 508
Регистрация: 11.10.2018
Сообщений: 6,249
13.01.2020, 19:52
Цитата Сообщение от Xoluz_1 Посмотреть сообщение
C++
1
cout << "integral is" << integral(a, E, b, n, i) << endl;
- вот одна из ошибок. Должно быть integral(a, b, E, n, i).

Добавлено через 1 минуту
Интеграл вообще так не считается: много функций. Все пишется в одном цикле.
0
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
13.01.2020, 20:05
C++
1
2
3
4
5
6
7
8
double hi(int i, int n, double b, double a)
{
    return i * (b - a) / n;
}
double xi(double a, double b, int i, int n)
{
    return a + hi(i, a, b, n) - h(a, b, n) / 2;
}
тут тоже напутаны значения

Добавлено через 31 секунду
C++
1
2
3
4
5
6
7
8
double hi(int i, int n, double b, double a)
{
    return i * (b - a) / n;
}
double xi(double a, double b, int i, int n)
{
    return a + hi(i, n, b, a) - h(a, b, n) / 2;
}
Добавлено через 1 минуту
C++
1
        s2 = sigma(a, n, b, i);
тут тоже напутано
0
 Аватар для FFPowerMan
2156 / 1236 / 508
Регистрация: 11.10.2018
Сообщений: 6,249
13.01.2020, 20:06
Цитата Сообщение от Xoluz_1 Посмотреть сообщение
C++
1
double hi(int i, int n, double a, double b);
- вот 2-ая ошибка. Должно быть так: double hi(int i, double a, double b, int n);
0
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
13.01.2020, 20:06
C++
1
    double n;
хотя везде он int
0
 Аватар для FFPowerMan
2156 / 1236 / 508
Регистрация: 11.10.2018
Сообщений: 6,249
13.01.2020, 20:10
C++
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <iostream>
#include <stdio.h>
#include <cmath>
using namespace std;
 
double f(double x);
double h(double a, double b, int n);
double hi(int i, int n, double a, double b);
double xi(int i, int n, double b, double a);
double sigma(int n, double a, double b, int i);
double integral(double a, double E, double b, int i, int n);
 
int main()
{
    int i = 0;
    double n;
    double a, b, E;
    n = 2;
    cout << "Input interval [a,b] =" << endl;
    cin >> a;
    cin >> b;
    cout << "Input E=" << endl;
    cin >> E;
    cout << "Integral = " << integral(a, b, E, n, i) << endl;
}
 
double f(double x)
{
    return x;
}
double h(double a, double b, int n)
{
    return (b - a) / n;
}
double hi(int i, double a, double b, int n)
{
    return i * (b - a) / n;
}
double xi(double a, double b, int i, int n)
{
    return a + hi(i, a, b, n) - h(a, b, n) / 2;
}
double sigma(int n, double a, double b, int i)
{
    double sum = 0;
    for (i = 1; i < n; i++)
    {
        sum += f(xi(a, b, i, n));
    }
    return h(a, b, n) * sum;
}
double integral(double a, double b, double E, int n, int i)
{
    double s1, s2;
    s1 = sigma(n, a, b, i);
    s2 = s1;
    do
    {
        s1 = s2;
        n *= 2;
        s2 = sigma(n, a, b, i);
    }while(fabs(s1 - s2) > E);
    return s2;
}
0
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
13.01.2020, 20:26
Цитата Сообщение от FFPowerMan Посмотреть сообщение
double n;
Мне кажется целесообразнее будет использовать int
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.01.2020, 20:26
Помогаю со студенческими работами здесь

Ошибка -nan(ind) и nan
Доброго времени суток форумчане! Решаю задачу, в которой необходимо найти площадь треугольника по координатам его вершин. Все значения не...

-nan(ind)
нужно вычислить значение функции, вроде сделал все проверки, но все равно при вводе отрицательного float (например: -0.25) выводит...

-nan(ind)
Что такое -nan(ind) и как это исправить? #define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;fstream&gt; #include...

Ошибка nan(ind)
Помогите, пожалуйста. Что за ошибка nan(ind) в момент когда y должен быть равен 0 #include &quot;stdafx.h&quot; #include...

Ошибка -nan<ind>
#include &quot;pch.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int main() { setlocale(LC_ALL, &quot;Russian&quot;); ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru