4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441

Теряется точность при вычислении с double

21.08.2015, 08:17. Показов 7853. Ответов 77
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
В процессе решения кубического уравнения, у меня теряется точность переменной типа double. Пробовал использовать TTmath.h результата не прибавило (возможно я её криво использовал).

Короче говоря вещественный корень получается равный:
z0 = 880256255399783.00

В matlab тот же самый алгоритм, так же даёт 880256255399783.00

А должен быть:
z0 = 880256255399784.42497741663615572; - Этот корень получился в matlab с помощью функции solve()

Я так понимаю это произошло из-за переполнение мантиссы double ? Которая для double не может превышать 2^53 - 1;
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.08.2015, 08:17
Ответы с готовыми решениями:

При переводе string в long double теряется дробная часть
Помогите с программой. При переводе string в long double дробная часть становится равной нулю(не зависит от длины числа). #include...

Теряется точность
Видимо в этой проге теряетмя точность. Не проходит только 1 тест. #include <iostream> #include <iomanip> using...

Куда теряется точность?
Для примера, есть формула (a+b)3 - a3. В расчетах с хранением промежуточных результатов и без него получаются разные ответы. #include...

77
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
21.08.2015, 12:53
Студворк — интернет-сервис помощи студентам
Abraziv__, ну это ни рыба, ни мясо. Дай хотя бы начальные значения, в результате вычисления которых получается результат 880256255399783.00.
0
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 13:04  [ТС]
Решение куб уравнения, это промежуточный этап аналитического решения систему нелинейных уравнений.

А практический смысл какой? Если порядок числа переваливает за 10^10, зачем нужна 15я (условно) цифра после запятой?

Такова математика. Вот к примеру:
для точности 880256255399783
получаю значение одной из переменных: -15734422.4491056

для точности 880256255399784
получаю значение одной из переменных: -9084272.68745487


для точности 880256255399784.424
получаю значение одной из переменных: 0.674031173230142

для точности 880256255399784.4
получаю значение одной из переменных: 0.674031173230142

А должно быть 0.

castaway

a3 = 1
b3 = -880256255399764
c3 = -1.79792141373932e+016
d3 = -9.24139523145728e+016

При заданных выше нач условиях, матлаб вычислил: 880256255399784.42497741663615572;
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
21.08.2015, 13:10
Abraziv__, нам нужен код,который можно запустить.Заодно и matlab код приведите.
0
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 13:15  [ТС]
Извините ребята, не посчитайте за предубеждение, но код целиком дать не могу. Мне контора не простит, если всплывёт.

Добавлено через 1 минуту
Хотя вот матлбовский код:
Matlab M
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
x1 = 3291825.45;
y1 = -7473079.35;
z1 = 1;
 
x2 = 0;
y2 = -8000000+1;
z2 = 1;
 
x3 = -2127126.49;
y3 = -7519740.99+1;
z3 = 1;
 
R11 = 0;
R21 = -1847288.7;
R31 = -1055041.77;
L   = 6378137;
 
 
 
% syms x y R z ;
 
 
S = solve('x^2+y^2+z^2 = 6378137^2',...
          '(x-(3291825.45))^2+(y-(-7473079.35+1))^2+(z-(0+1))^2=(R)^2',...
          '(x-(0))^2+(y-(-8000000+1))^2+(z-(0+1))^2=(R+(-1847288.7))^2',...
          '(x-(-2127126.49))^2+(y-(-7519740.99+1))^2+(z-(0+1))^2=(R+(-1055041.77))^2');
 
 S.R
 
 
 for i=1:4
 S.x(i) =   S.x(i) - 1;
 S.y(i) =   S.y(i) - 1;
 S.z(i) =   S.z(i) - 1;
 end
 
 
A1 = 2*(x2-x1);
B1 = 2*(y2-y1);
C1 = 2*(z2-z1);
f1 = x2^2+y2^2+z2^2 - (x1^2+y1^2+z1^2) - R21^2;
g1 = -2*R21;
 
A2 = 2*(x3-x1);
B2 = 2*(y3-y1);
C2 = 2*(z3-z1);
f2 = x3^2+y3^2+z3^2 - (x1^2+y1^2+z1^2) - R31^2;
g2 = -2*R31;
 
A3 = 2*x1;
B3 = 2*y1;
C3 = 2*z1;
f3 = (x1^2+y1^2+z1^2) + L^2;
g3 = -1;
 
D1 = (A1*(B2*C3 - B3*C2) + A2*(B3*C1 - B1*C3) + A3*(B1*C2 - B2*C1));
D2 = D1^2;
 
m4_1 = (A1*B2*g3-A2*B1*g3)^2;
m4_2 = (A1*C2*g3-A2*C1*g3)^2;
m4_3 = (B1*C2*g3-B2*C1*g3)^2;
 
m3_1 = 2*(A1*B2*g3-A2*B1*g3)*(A1*B3*g2-A2*B3*g1-A3*B1*g2+A3*B2*g1);
m3_2 = 2*(A1*C2*g3-A2*C1*g3)*(A1*C3*g2-A2*C3*g1-A3*C1*g2+A3*C2*g1);
m3_3 = 2*(B1*C2*g3-B2*C1*g3)*(B1*C3*g2-B2*C3*g1-B3*C1*g2+B3*C2*g1);
 
m2_1 = (B1*C3*g2-B2*C3*g1-B3*C1*g2+B3*C2*g1)^2;
m2_2 = 2*(B1*C2*g3-B2*C1*g3)*(B1*C2*f3-B1*C3*f2-B2*C1*f3+B2*C3*f1+B3*C1*f2-...
        B3*C2*f1);
m2_3 = (A1*C3*g2-A2*C3*g1-A3*C1*g2+A3*C2*g1)^2;
m2_4 = 2*(A1*C2*g3-A2*C1*g3)*(A1*C2*f3-A1*C3*f2-A2*C1*f3+A2*C3*f1+A3*C1*f2-...
        A3*C2*f1);
m2_5 = (A1*B3*g2-A2*B3*g1-A3*B1*g2+A3*B2*g1)^2;
m2_6 = 2*(A1*B2*g3-A2*B1*g3)*(A1*B2*f3-A1*B3*f2-A2*B1*f3+A2*B3*f1+...
        A3*B1*f2-A3*B2*f1);
    
m1_1 = 2*(A1*C3*g2-A2*C3*g1-A3*C1*g2+A3*C2*g1)*(A1*C2*f3-A1*C3*f2-A2*C1*f3+...
        A2*C3*f1+A3*C1*f2-A3*C2*f1);
m1_2 = 2*(B1*C3*g2-B2*C3*g1-B3*C1*g2+B3*C2*g1)*(B1*C2*f3-B1*C3*f2-B2*C1*f3+...
        B2*C3*f1+B3*C1*f2-B3*C2*f1);
m1_3 = 2*(A1*B3*g2-A2*B3*g1-A3*B1*g2+A3*B2*g1)*(A1*B2*f3-A1*B3*f2-A2*B1*f3+...
        A2*B3*f1+A3*B1*f2-A3*B2*f1);
 
m0_1 = (A1*B2*f3-A1*B3*f2-A2*B1*f3+A2*B3*f1+A3*B1*f2-A3*B2*f1)^2;
m0_2 = (A1*C2*f3-A1*C3*f2-A2*C1*f3+A2*C3*f1+A3*C1*f2-A3*C2*f1)^2;
m0_3 = (B1*C2*f3-B1*C3*f2-B2*C1*f3+B2*C3*f1+B3*C1*f2-B3*C2*f1)^2;
m0_4 = L^2;
 
a = (m4_1 + m4_2 + m4_3)/D2;
b = (-m3_1 - m3_2 - m3_3)/D2;
c = (m2_6 + m2_5 + m2_4 + m2_3 + m2_2 + m2_1)/D2;
d = (-m1_1 - m1_2 - m1_3)/D2;
e = (m0_1 + m0_2 + m0_3)/D2 - m0_4;
 
p = (8*a*c - 3*b^2)/(8*a^2);
q = (8*a^2*d+b^3-4*a*b*c)/(8*a^3);
r = (16*a*b^2*c-64*a^2*b*d-3*b^4+256*a^3*e)/(256*a^4);
 
 
if q ~= 0
    
       
    a33 = 1
    b33 = p
    c33 = (p^2-4*r)/4
    d33 = - q^2/8
    
    T = solve('t^3 -880256255399764*t^2 -1.79792141373932e+016*t -9.24139523145728e+016 = 0')
    ff = double(T(1))
    p33 = (3*a33*c33-b33^2)/(3*a33^2);
    q33 = (2*b33^3-9*a33*b33*c33+27*a33^2*d33)/(27*a33^3)
        
    delta = (q33/2)^2 + (p33/3)^3
     
    if delta > 0                   
       y0 = (-q33/2 + sqrt(delta))^(1/3) + (-q33/2 - sqrt(delta))^(1/3);
    
    else        
        
        if delta < 0
            
            if q33 < 0
                fi = atan2(-sqrt(delta),-q33/2);
            else
                if q33 > 0
                    fi = atan2(-sqrt(delta),-q33/2) + pi;
                else
                    fi = pi / 2;
                end
            y0 = 2*sqrt(-p33/2)*cos(fi/3);
            end
             
        else
            y0 = 2*(-q33/2)^(1/3);
        end
 
    end
   
    z0 =  y0 - b33 / (3.0*a33)
    z0 = 880256255399784.4;
    
    
    y_1 = (sqrt(2*z0) - sqrt(2*z0-4*(p/2+z0 + q / (2*sqrt(2*z0)) ) ) )/2;    
    
    y_2 = (sqrt(2*z0) + sqrt(2*z0-4*(p/2+z0 + q / (2*sqrt(2*z0)) ) ) )/2;    
    
    y_3 = (-sqrt(2*z0) - sqrt(2*z0-4*(p/2+z0 - q / (2*sqrt(2*z0)) ) ) )/2;    
    
    y_4 = (-sqrt(2*z0) + sqrt(2*z0-4*(p/2+z0 - q / (2*sqrt(2*z0)) ) ) )/2;
            
else
    
    y_1 =  sqrt((-p-sqrt(p^2-4*r))/2);
    y_2 = -sqrt((-p-sqrt(p^2-4*r))/2);
    y_3 =  sqrt((-p+sqrt(p^2-4*r))/2);
    y_4 = -sqrt((-p+sqrt(p^2-4*r))/2);
    
end
 
R1 = y_1 - b/(4*a);
R2 = y_2 - b/(4*a);
R3 = y_3 - b/(4*a);
R4 = y_4 - b/(4*a);
R = [R1 R2 R3 R4];
 
 
for i = 1:4
    
    if R(i)  > 0
        
        R(i) 
    
        x = ((B1*C2*g3-B2*C1*g3)*R(i)^2 - (B1*C3*g2-B2*C3*g1-B3*C1*g2+B3*C2*g1)*R(i) +...
             (B1*C2*f3-B1*C3*f2-B2*C1*f3+B2*C3*f1+B3*C1*f2-B3*C2*f1))/D1
 
        y = (-(A1*C2*g3-A2*C1*g3)*R(i)^2 + (A1*C3*g2-A2*C3*g1-A3*C1*g2+A3*C2*g1)*R(i) -...
            (A1*C2*f3-A1*C3*f2-A2*C1*f3+A2*C3*f1+A3*C1*f2-A3*C2*f1))/D1
 
        z = ((A1*B2*g3-A2*B1*g3)*R(i)^2+(-A1*B3*g2+A2*B3*g1+A3*B1*g2-A3*B2*g1)*R(i)+...
            (A1*B2*f3-A1*B3*f2-A2*B1*f3+A2*B3*f1+A3*B1*f2-A3*B2*f1))/D1
    end
    
end
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
21.08.2015, 13:24
Abraziv__, нам не нужен код целиком.Просто маленький кусок,демонстрирующий проблему.
Хорошо,запустил matlab код.Получил ряд значений,какое из них соответствует(не соответствует) C++-аналогу(требуемому значению).
0
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 13:31  [ТС]
Я вас уверяю, на полюсах тоже самое, я проверял там везде дабл. Можете сампосмотреть в матлабе и в режиме отладки посмотреть
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
21.08.2015, 13:34
Цитата Сообщение от S_el Посмотреть сообщение
Abraziv__, нам не нужен код целиком.Просто маленький кусок,демонстрирующий проблему.
Вот простой код.
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <iomanip>
#include <limits>
#include <cmath>
 
int main() {
    const double pi = 3.1415926535897932384626433832795;
 
    double a3 = 1.0;
    double b3 = -880256255399764;
    double c3 = -1.79792141373932e+016;
    double d3 = -9.24139523145728e+016;
 
    double p3 = (3.0 * a3 * c3 - b3 * b3) / (3 * a3 * a3);
    double q3 = (2.0 * b3 * b3 * b3 - 9 * a3 * b3 * c3 + 27 * a3 * a3 * d3) / (27 * a3 * a3 * a3);
    double delta = pow( q3 / 2, 2 ) + pow( p3 / 3, 3 );
 
    double fi, y0;
    if ( delta > 0 ) {
        y0 = pow( -q3 / 2 + sqrt( delta ), 1 / 3. ) +
             pow( -q3 / 2 - sqrt( delta ), 1 / 3. );
    } else {
        if ( delta < 0 ) {
            if ( q3 < 0 ) {
                fi = atan2( -sqrt( delta ), -q3 / 2 );
            } else {
                if ( q3 > 0 ) {
                    fi = atan2( -sqrt( delta ), -q3 / 2 ) + pi;
                } else {
                    fi = pi / 2;
                }
            }
            y0 = 2 * sqrt( -p3 / 2 ) * cos( fi / 3 );
        } else {
            y0 = 2 * pow( -q3 / 2, 1 / 3. );
        }
    }
 
    std::cout << std::setprecision( std::numeric_limits<double>::digits10 + 1 );
    std::cout << y0 - b3 / 3 << std::endl;
    std::cout << "880256255399783.00\n";
    std::cout << "880256255399784.42497741663615572\n";
}
Я предполагал что проблема может быть при выводе, оказалось что нет.
0
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 13:36  [ТС]
Да я про тоже, надо библиотеку длин арифметики подымать.
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
21.08.2015, 13:37
Abraziv__, ...
я вас не об этом спрашиваю.Вы говорите,что расчетное значение одно,хотя требуется получить другое и что решатель matlab solve - подходит.
Вы привели один код,но не прокомментировали его .Я так понимаю, приведенный код - полный аналог C++ кода,хорошо. Нужен другой,правильный код с solve.Чтобы форумчане могли запустить,сравнить и понять в чем именно проблема.
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
21.08.2015, 13:44
Надо попробовать прикрутить GMP. Если получится - чуть позже выложу код.
0
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 13:47  [ТС]
В приведенном выше коде есть функция solve решения куб уравнения. Интересующий код дублирует код на c++, точнее наоборот. Я повторюсь, матлаб код работает аналогично плюсовому, я проверял все. В матлабе легче разобраться, но я знаю что не так. Инициал данные слишком длинные, так получается просто, так надо.

Добавлено через 1 минуту
castaway, если получится сможете поделиться либами?
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
21.08.2015, 13:55
Цитата Сообщение от Abraziv__ Посмотреть сообщение
castaway, если получится сможете поделиться либами?
Не вопрос.
Но придётся подождать часок-другой.
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
21.08.2015, 13:55
Abraziv__,все понял.
Вот это - решение вашего уравнения:
Matlab M
1
T = solve('t^3 -880256255399764*t^2 -1.79792141373932e+016*t -9.24139523145728e+016 = 0')
Сейчас тоже попробую что-то поискать.
0
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 13:59  [ТС]
Спасибо всем. Я весь день сегодня кодил, температура снизилась, пойду 11 км пробегу.
0
21.08.2015, 14:02

Не по теме:

Цитата Сообщение от Abraziv__ Посмотреть сообщение
Мне контора не простит, если всплывёт.
Хм.. А контора выдаст премию если ты решишь эту проблему?)

0
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 14:03  [ТС]
castaway, эмм. Лучше не стоит тогда тратить время. Я сам справлюсь, просто посидеть надо ещё. Извините если что не так.
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
21.08.2015, 14:56

Не по теме:

Abraziv__, это была шутка. Не зря я смайлик в конце поставил.



Добавлено через 50 минут
Эмм.. Кто-нибудь знает как возвести в вещественную степень переменную в GMP?
0
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 15:45  [ТС]
Эммм. Ща буду гуглить.

Добавлено через 15 минут
Хм..
Можно схитрить:
x = a^b;
тогда справедливо:
x=exp(b*ln(a), где a > 0
1
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
21.08.2015, 15:58
Хм...
880256255399783.33978459940285716
880256255399784.42497741663615572
Результат работы GMP + MPFR + MPFR C++ (Pavel Holoborodko, homepage) сильно отличается от эталонного...
Abraziv__, у тебя точно одинаковы методы вычисления в C++ и Mathlab?

Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <iomanip>
#include "mpreal.h"
 
int main() {
    mpfr::mpreal::set_default_prec( mpfr::digits2bits( 100 ) );
 
    mpfr::mpreal pi = 3.1415926535897932384626433832795;
    mpfr::mpreal a3 = 1.0;
    mpfr::mpreal b3 = -880256255399764;
    mpfr::mpreal c3 = -1.79792141373932e+016;
    mpfr::mpreal d3 = -9.24139523145728e+016;
 
    mpfr::mpreal p3 = (3. * a3 * c3 - b3 * b3) / (3. * a3 * a3);
    mpfr::mpreal q3 = (2. * b3 * b3 * b3 - 9 * a3 * b3 * c3 + 27 * a3 * a3 * d3) / (27. * a3 * a3 * a3);
    mpfr::mpreal delta = pow( q3 / 2., 2. ) + pow( p3 / 3., 3. );
 
    mpfr::mpreal fi, y0;
    if ( delta > 0 ) {
        y0 = mpfr::pow( -q3 / 2. + mpfr::sqrt( delta ), 1 / 3. ) +
             mpfr::pow( -q3 / 2. - mpfr::sqrt( delta ), 1 / 3. );
    } else {
        if ( delta < 0 ) {
            if ( q3 < 0 ) {
                fi = mpfr::atan2( -mpfr::sqrt( delta ), -q3 / 2. );
            } else {
                if ( q3 > 0 ) {
                    fi = mpfr::atan2( -mpfr::sqrt( delta ), -q3 / 2. ) + pi;
                } else {
                    fi = pi / 2.;
                }
            }
            y0 = 2 * mpfr::sqrt( -p3 / 2. ) * mpfr::cos( fi / 3. );
        } else {
            y0 = 2 * mpfr::pow( -q3 / 2., 1 / 3. );
        }
    }
 
    std::cout << std::setprecision( 32 );
    std::cout << y0 - b3 / 3 << std::endl;
    std::cout << "880256255399784.42497741663615572\n";
}

Не по теме:

Abraziv__, за сколько 11 км пробегаешь?

1
4 / 4 / 2
Регистрация: 05.02.2013
Сообщений: 441
21.08.2015, 16:02  [ТС]
castaway, Спасибо за то что помогаете, глядишь, как нибудь и я вам помогу.
Код "идентичен", сейчас ещё раз всё проверю, возможно исходные данные не те.
11 км, сильно не перенапрягаясь примерно за 50 минут (+-).
Спасибо за ссылку, сейчас всё проверю и отпишусь.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.08.2015, 16:02

Теряется точность в сравнении с exel
Точность измерений на С++ меньше чем на exel. Нужно это исправить. Код проги #include &lt;iostream&gt; #include &lt;cmath&gt; ...

Точность в double
Добрый день Мне задали сделать проект в универе - Калькулятор с великой точностю. Я уже почти его сделал, но у меня возникла...

Точность вычислений у double
Дана задача: &quot;Определить, на сколько нулей заканчивается факториал числа n&quot;. Пример: вводим &quot;25&quot;, на выходе должны получить...

Точность.Тип double
Вопрос такой. Пишу программу, в которой имеется цикл: double t=0, dt = 0.000001; t = t + dt; cout &lt;&lt; &quot;t --&gt;...

Точность типа double
Всем привет! У меня такой код,точность как видите страдает,так как мне нужно с точностью до 20 знака #include&lt;iostream&gt; ...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Опции темы

Новые блоги и статьи
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru