Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- double MonteCarloRule::calculate(double xStart, double xEnd, int quantity) {
- std::default_random_engine generator;
- std::uniform_real_distribution<double> distribution(xStart, xEnd);
- double sum{0};
- for (int i = 0; i < quantity; ++i) {
- sum += Function::value(distribution(generator));
- }
- return sum/quantity;
- }
- //----------------------------------------------------------------------------
- double TrapezoidalRule::calculate(double xStart, double xEnd, int quantity) {
- double sum, dx;
- sum = 0;
- dx = (xEnd - xStart) / quantity;
- for (int i = 1; i < quantity; ++i) {
- sum += Function::value(xStart + i * dx);
- }
- sum = (sum + (Function::value(xStart)+Function::value(xEnd)/2))*dx;
- return sum;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement