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

С переправить на С++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Пишет function does not take arguments при любых аргументах http://www.cyberforum.ru/cpp-beginners/thread690304.html
Подскажите почему не вызываеться функция, ни g = riadki::kol(); ни j = riadki::revers(char a,int len); ? пишет function does not take arguments при любых аргументах сам вызов внизу находиться riadki::riadki() { cout<<"\nvvedite bukvi : ";
C++ Использование функций Дана непрерывная на отрезке функция f(x). Используя заданный численный метод приближенного вычисления интеграла, вычислите (см. рис1). Для вычисления подынтегральной функции f(x) напишите пользовательскую функцию. Интервал: f(x)=(см рис2) http://www.cyberforum.ru/cpp-beginners/thread690300.html
Определение и вызов функций C++
Здравствуйте. Такая проблема с задачей....Нужно Определить функцию, проверяющую, является ли данное число простым, и функцию, вычисляющую количество нулей в двоичной записи натурального числа. (Считается, что первая цифра двоичного числа всегда 1). Среди простых чисел, не превосходящих n, найти первое такое, в двоичной записи которого максимальное количество нулей. Помогите плиз..( Заранее...
C++ Посимвольная обработка строк
Доброго времени суток всем))) Дано задание.:Дана строка. Сформировать строку, содержащую все символы данной за исклю-чение символов гласных букв. Как реализовать программу в с++ кто знает?
C++ Найти количество изменений знака в последовательности http://www.cyberforum.ru/cpp-beginners/thread690293.html
Задана последовательность целых чисел. Найти количество изменений знака в ней. Нужна программа на с++.помогите пожалуйста! Задана послідовність цілих чисел. Знайти кількість змін знака в ній.потрібна програма на с++.допоможіть будь-ласка!
C++ Функции (массивы) Помогите пожалуйста исправить ошибки в коде. Вот программа (операции над массивами в виде функций): #include<iostream.h> #include<conio.h> #include<math.h> void main(){ const int n=10; float mas; подробнее

Показать сообщение отдельно
Andrey.K
 Аватар для Andrey.K
338 / 259 / 15
Регистрация: 14.11.2010
Сообщений: 480
06.11.2012, 21:17     С переправить на С++
Как бы так, тут нечего менять, по той причине что все операты выполняют матем. действия.
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
83
84
85
86
87
88
89
90
91
92
93
94
#include <cmath>
#include <iostream>
using namespace std;
#define EPSILON 10E-5
 
typedef struct {
    float x;
    float y;
} dot;
 
int getCircleEquation(dot dot1, dot dot2, dot dot3, float *x0, float *y0, float *r, int performTest)
{
    float det = (dot1.x * dot2.y + dot2.x * dot3.y + dot3.x * dot1.y
               - dot1.x * dot3.y - dot2.x * dot1.y - dot3.x * dot2.y);
    if (fabs(det) < EPSILON)
    {
        // Три точки на одной прямой, нельзя построить окружность
        return 0;
    }
 
    // Вычисляем ординату центра
    *y0 = (dot2.x * dot3.x * dot3.x - dot3.x * dot2.x * dot2.x +
           dot1.x * dot1.x * dot3.x - dot1.x * dot3.x * dot3.x +
           dot1.x * dot2.x * dot2.x - dot2.x * dot1.x * dot1.x +
 
           dot2.x * dot3.y * dot3.y - dot1.x * dot3.y * dot3.y +
           dot1.x * dot2.y * dot2.y - dot2.x * dot1.y * dot1.y +
           dot3.x * dot1.y * dot1.y - dot3.x * dot2.y * dot2.y) / (2 * det);
 
    // Вычисляем абциссу центра
    if (fabs(dot1.x - dot2.x) < EPSILON)
    {
        *x0 = (dot3.x * dot3.x + dot3.y * dot3.y
             - dot2.x * dot2.x - dot2.y * dot2.y
             + 2 * *y0 * dot2.y
             - 2 * *y0 * dot3.y) / (2 * (dot3.x - dot2.x));
    } else {
        *x0 = (dot2.x * dot2.x + dot2.y * dot2.y
             - dot1.x * dot1.x - dot1.y * dot1.y
             + 2 * *y0 * dot1.y
             - 2 * *y0 * dot2.y) / (2 * (dot2.x - dot1.x));
    }
 
    // Вычисляем радиус
    *r = sqrt(pow(dot1.x - *x0, 2) + pow(dot1.y - *y0, 2));
 
    // Тестирование
    if (performTest)
    {
        float r2 = sqrt(pow(dot2.x - *x0, 2) + pow(dot2.y - *y0, 2));
        float r3 = sqrt(pow(dot3.x - *x0, 2) + pow(dot3.y - *y0, 2));
 
        if (fabs(*r - r2) > EPSILON || fabs(*r - r3) > EPSILON || fabs(r2 - r3) > EPSILON)
        {
            cout<<"TEST FAIL: ("<<dot1.x<<dot1.y<<")("<<dot2.x<<dot2.y<<")("<<dot3.x<<dot3.y<<")=>("<<*x0<<*y0<<") "<<*r<<r2<<r3<<endl;
 
        }
    }
 
    // Получили уравнение окружности
    return 1;
}
 
int main()
{
    float x0, y0, r;
    for (float x1 = -10.0; x1 < 10.0; x1 += 1)
    {
        for (float y1 = -10.0; y1 < 10.0; y1 += 1)
        {
            for (float x2 = -10.0; x2 < 10.0; x2 += 1)
            {
                for (float y2 = -10.0; y2 < 10.0; y2 += 1)
                {
                    for (float x3 = -10.0; x3 < 10.0; x3 += 1)
                    {
                        for (float y3 = -10.0; y3 < 10.0; y3 += 1)
                        {
                            dot dot1, dot2, dot3;
                            dot1.x = x1; dot1.y = y1;
                            dot2.x = x2; dot2.y = y2;
                            dot3.x = x3; dot3.y = y3;
 
                            if (!getCircleEquation(dot1, dot2, dot3, &x0, &y0, &r, 1))
                            {
                                cout<<"Unable to build ("<<dot1.x<<dot1.y<<")("<<dot2.x<<dot2.y<<")("<<dot3.x<<dot3.y<<")"<<endl;
                            }
                        }
                    }
                }
            }
        }
    }
}
 
Текущее время: 09:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru