Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Аня658
0 / 0 / 0
Регистрация: 13.11.2011
Сообщений: 12
#1

Решения кратного интеграла методом Монте Карло на С++ - C++

13.11.2012, 23:46. Просмотров 1565. Ответов 3
Метки нет (Все метки)

Помогите пожалуста решить тройной интеграл методом Монте Карло.... Нужно написать програму на С


Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2012, 23:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Решения кратного интеграла методом Монте Карло на С++ (C++):

Процедура вычисления кратного интеграла методом Монте-Карло - C++
Создать функцию для вычисления кратных интегралов методом Монте Карло. Помогите написать рабочий код. Укажите на ошибки. #include...

Вычисление интеграла методом Монте-Карло - C++
Нужно вычислить интеграл, как показано на первой картинке внизу темы. На второй картинке сам интеграл. Написал программу, но она выдает это...

Вычисление интеграла методом Монте-Карло - C++
Здравствуйте! Задача такая: пользователь в текстовом файле задает координаты точек (любое количество точек), программа считывает...

Вычисление интеграла геометрическим методом Монте-Карло - C++
Всем доброго времени суток. В универе дали задание: вычислить интеграл \int_{0}^{1}dx\int_{0}^{1-x}(1-x-y)dy геометрическим методом...

Решение определенного интеграла методом Монте Карло - C++
Доброго времени суток ! Столкнулся с такой проблемой, что реализовал вроде бы правильно, а результат не верный, совсем зашел в тупик....

Рассчет определенного интеграла методом Монте-Карло. - C++
Не могли бы вы посмотреть, я неправильно понимаю метод Монте Карло для нахождения определенного интеграла или неправильно его реализую? ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Аня658
0 / 0 / 0
Регистрация: 13.11.2011
Сообщений: 12
16.11.2012, 23:44  [ТС] #2
програма работает без модуля как зделать чтобы с модулём она работала???
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
 
#include <stdio.h>
#include <time.h>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
 
double func(double a, double b, double c)
{
    return (4.5*(a-b)*sqrt(c));
}
 
int debug(int x)
{
    if((x>-32768) && (x<32767));
    else
   {
    printf("\n \t \t Vy vveli nevernyj simvol. \n \t \t Neobhodimo bylo vvesti celoe chislo. \n \n");
    getch();
    exit(1);
    }
    return 0;
}
 
void main()
{
    double x, y, z;
   double a, b, c;
   unsigned int n;
   int i;
   double sum=0;
   double S=0;
   double min=0;
 
   srand(time(NULL));
    printf("\n \t Vvediteniz. granicu integrirovanija (x): ");
    scanf("%lf",&x);
   debug(x);
 
    printf("\t Vvedite granicu integrirovanija (y): ");
    scanf("%lf",&y);
   debug(y);
 
   printf("\t Vvedite  granicu integrirovanija (z): ");
    scanf("%lf",&z);
   debug(z);
 
 
    inv: printf("\n \t Vvedite chislio ispytanij \n");
    printf("\t N = ");
    scanf("%d",&n);
   if((n<0) || (n>65535))
   {
    printf("\n \t Vy vveli nepravilnoe chislo, kolichestvo mozhet byt ot 0 do 65535 \n");
    goto inv;
   }
 
 
    printf("\n \t / / / \n");
    printf("\t | | | (x*y*z)/sqr(pow(x,2)+pow(y,2)+pow(z,2))dxdydz \n");
    printf("\t / / / \n");
   printf("\t   D   \n");
 
   // âû÷èñëåГ*ГЁГї äâîéГ*îãî ГЁГ*ГІГҐГЈГ°Г*Г«Г*
   for(i=0;i<n;i++)
   {
 
    a=x*rand()/RAND_MAX;//ГЈГҐГ*åðèðóåì x Гў ГЁГ*òåðâГ*ëå
      b=y*rand()/RAND_MAX;//ГЈГҐГ*åðèðóåì y Гў ГЁГ*òåðâГ*ëå
      c=z*rand()/RAND_MAX;//ГЈГҐГ*åðèðóåì z Гў ГЁГ*òåðâГ*ëå
 
      if (sqrt(c)<=1)
    {
           sum+=func(a, b, c);
        }
         printf("\n \n \t a,b,c = %8.3lf %8.3lf %8.3lf\n", a,b,c);
   }
   S=(((x-0)*(y-0)*(z-0))/n)*sum;
   printf("\n \n \t Integral = %8.3lf \n", S);
 
   getch();
}
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
16.11.2012, 23:57 #3
Цитата Сообщение от Аня658 Посмотреть сообщение
if((x>-32768) && (x<32767));
Цитата Сообщение от Аня658 Посмотреть сообщение
if((n<0) || (n>65535))
Это зачем? Ты сильно сомневаешься, что переменная не 4 байта?
Аня658
0 / 0 / 0
Регистрация: 13.11.2011
Сообщений: 12
17.11.2012, 00:05  [ТС] #4
та нет просто так написала... я в програмирование полный 0... что нужно переделай толька чтоб она работала...

Добавлено через 3 минуты
та нет просто так написала... я в програмирование полный 0... что нужно переделай толька чтоб она работала...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.11.2012, 00:05
Привет! Вот еще темы с ответами:

Нужно составить программу решения задачи оптимального выбора методом случайного тпоиска(монте-карло) - C++
Задана таблица из 10 элементов. Вес 16 11 12 13 14 15 16 17 18 19 Цена 18 20 17 19 22 21 27 23 25 24 Нужно составить...

Вычислить методом Монте-Карло - C++
Помогите Вычислить методом Монте-Карло: а)площадь фигуры, ограниченной половиной синусоиды; б)площадь фигуры, ограниченной квадратной...

Интегрирование методом Монте-Карло - C++
доброго времени суток форумчане, была поставлена задача написать программу которая будет вычислять интеграл методом Монте-Карло вот что я...

Вычисление числа Пи методом Монте-Карло - C++
Всем доброго время суток. Написать программу для вычисления значения \pi с помощью метода Монте-Карло. Для этого рассмотреть квадрат с...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.11.2012, 00:05
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru