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

Мат. функция - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ как создавать динамическое число объектов http://www.cyberforum.ru/cpp-beginners/thread261062.html
Помогите: как создавать динамическое число объектов, напишите, пожалуйста программу, в которой создается N объектов
C++ if else здрасте! не могу понять один момент #include <string> #include <sys/wait.h> #include <iostream> using namespace std; int main(int argc, char *argv) { string command, *parameters; while (true) { int status; http://www.cyberforum.ru/cpp-beginners/thread261044.html
C++ Файловый ввод / вывод
Помогите пожалуйста с задачей: Записать в файл F последовательного доступа n натуральных чисел. Получить в другом файле последовательного доступа все компоненты файла F, кроме тех, которые кратны K.
C++ вектор упорядочить по возрастанию и сформировать из него матрицу
День добрые Уважаемые. Нужна ваше помощь . Функии в СИ не могу понять , надо вот . Дан вектор А. Если в векторе есть одинаковые элементы, то из положительных элементов матрицы, умноженных на Amin сформировать матрицу B, дополнив недостающие элементы элементом Amax . Иначе вектор упорядочить по возрастанию и сформировать из него матрицу C.
C++ Почему не выводит m? http://www.cyberforum.ru/cpp-beginners/thread260994.html
С начала суток прошло N секунд (N — целое). Найти количество полных минут, прошедших с начала суток. #include <iostream> #include <math.h> #include <conio.h> using namespace std; int main() { int n,m;
C++ Лабораторная робота! 1)Написати програму, яка обчислює середню (за тиждень) температуру повітря. Початкові дані повинні вводитися під час роботи програми. Вид екрану, який рекомендується, приведений нижче (дані, введені користувачем, виділені напівжирним шрифтом). Введіть температуру повітря за тиждень. Понеділок -> 12 Вівторок -> 10 Середа -> 16 Четвер -> 18 П'ятниця -> 17 Субота -> 16 Неділя -> 14 Середня... подробнее

Показать сообщение отдельно
dubfire
1 / 1 / 0
Регистрация: 22.02.2011
Сообщений: 27
21.03.2011, 11:16     Мат. функция
Мат. функция
Вот мне кидали решение, я только начал недавно и нифига не вьехал, народ помогите с решением более простым, или обьясните плиз ,моё решение( с коментами к строкам если не сложно), а то препод по каждой строчке дрючет...,зарание огромное спасибо.
вот само решение
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
 
#include "stdafx.h"
#include "iostream"
using namespace std;
 
double foo(double x0, double a, int p, double e, int &count);
double foo2(double a, int b);
 
int main ()
{
        int count = 0;
        double a = 0.;
        double x0 = 0.;
        int p = 0;
        double e = 0.;
 
        cout << "Enter a = ";
        cin >> a;
        cout << "Enter p = ";
        cin >> p;
        cout << "Enter e = ";
        cin >> e;
        
        if (a != 0. && p > 0) {
                if (a < 0 && (p % 2 == 0)) {
                        cout << "Uncorrect data" << endl;
                } else {
                        x0 = a; 
                        double t = foo(x0, a, p, e, count);
                        cout << "Result = " << t << endl;
                        cout << "Count of iterations = " << count << endl;
                }
        } else {
                cout << "Uncorrect data";
        }
        
}
 
double foo(double x0, double a, int p, double e, int &count) {
        
 
        double x = 0;
        double xp = 0;
        xp = foo2(x0, p - 1);
        x  = 1. / p * ((p - 1) * x0 + a /xp);
        ++count; 
        if ((a > 0 ? (x0 - x) : (x - x0) )<= e) {
                return x;
        } else {
                return foo(x, a, p, e, count);
        }
}
double foo2(double a, int b){
        double res = 1.;
        if (a == 0) {
                res = 0;
        } else {
                res = 1.;
                int t = 0;
                b > 0 ? t = b : t = -b;
                for (size_t i = 0; i < t; ++i) {
                        res *= a;
                }
                if (b < 0) res = 1 / res;
        }
 
        return res;
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 05:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru