Форум программистов, компьютерный форум, киберфорум
Наши страницы

QBasic

Войти
Регистрация
Восстановить пароль
 
echs
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
#1

Решение кубического уравнения - QBasic

09.01.2017, 11:49. Просмотров 114. Ответов 0
Метки нет (Все метки)

Решить кубическое уравнение x^3 + px + q = 0
решение
1. Сначала вычисляется дискриминант этого уравнения D по
формуле D = (p/3)^3 + (q/2)^2
2. Если D >= 0 , то уравнение имеет один корень, который
вычисляется по формуле Кардано http://www.cyberforum.ru/cgi-bin/latex.cgi?\sqrt[3]{-\frac q2+\sqrt{(\frac{q}{2})^2+(\frac{p}{3})^3}}+\sqrt[3]{{-\frac q2-\sqrt{(\frac{q}{2})^2+(\frac{p}{3})^3}
(комплексные корни нас не интересуют)
3. Если D < 0 , то уравнение имеет три вещественных корня.
Они (все три) вычисляются по формулам, выведенным из
формулы Кардано (смотрите программу)

QBasic/QuickBASIC
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
REM
REM  x^3 + px + q = 0
REM
REM  D = (p/3)^3 + (q/2)^2
REM
 
DECLARE FUNCTION ARCCOS! (x!)
DECLARE FUNCTION SQR3! (x!)
 
CLS
CONST pi = 3.141593
CONST p23 = 2 / 3 * pi
CONST n = .3333333333333333#
 
INPUT "P,Q = "; p, q
 
D = (p / 3) ^ 3 + (q / 2) ^ 2
 
IF D < 0 THEN
   A = 2 * SQR(-p / 3)
   u = ARCCOS(-q / 2 * (3 / -p) ^ 1.5)
 
   x1 = A * COS(u / 3)
   x2 = A * COS(u / 3 + p23)
   x3 = A * COS(u / 3 - p23)
 
   PRINT "x1 ="; x1
   PRINT "x2 ="; x2
   PRINT "x3 ="; x3
ELSE
   z1 = -q / 2 + SQR(D)
   z2 = -q / 2 - SQR(D)
   x = SQR3(z1) + SQR3(z2)
   PRINT "x ="; x
END IF
END
 
FUNCTION ARCCOS (x)
   IF ABS(x) < 1 THEN
      ARCCOS = pi / 2 - ATN(x / SQR(1 - x ^ 2))
   ELSE
      ARCCOS = pi / 2 * (1 - SGN(x))
   END IF
END FUNCTION
 
FUNCTION SQR3 (x)
   IF x >= 0 THEN
      SQR3 = x ^ n
   ELSE
      SQR3 = -(-x) ^ n
   END IF
END FUNCTION
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.01.2017, 11:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Решение кубического уравнения (QBasic):

Решение уравнения [x^3] + [y^3] = [z^3] - QBasic
Решить уравнение + = в натуральных числах при условии x &lt;= y. примечание: функция y= эквивалентна функции y=INT(x) Программа...

Решение уравнения x^2 + y^2 = z^5 - QBasic
Решить в натуральных числах уравнение x^2 + y^2 = z^5 Решение не найдено. Либо их вовсе нет. Либо.... REM REM x^2 + y^2 = z^5 ...

Решение уравнения x^2 + y^3 = z^3 - QBasic
Решить уравнение x^2 + y^3 = z^3 в натуральных числах при условии, что y и z - простые числа. программа нашла одно решение (588, 23,...

Решение уравнения x + y + z = 3xyz - QBasic
Решить в натуральных числах уравнение x + y + z = 3xyz программа нашла одно решение (1, 1, 1), других нет. REM REM x + y + z...

Решение уравнения x^2 + y^2 + z^2 = 3xyz - QBasic
Решить в натуральных числах уравнение x^2 + y^2 + z^2 = 3xyz Виду симметрии уравнений симметричные решения считать за одно. ...

Решение трансцендентного уравнения - QBasic
Решить уравнение x * log(x) = 1000000 где log(x) - логарифм по основанию 2. решение очевидно, что x число большое, поэтому есть ...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.01.2017, 11:49
Привет! Вот еще темы с ответами:

Решение уравнения Пуассона - QBasic
у меня вариант 20.

Решение иррационального уравнения - QBasic
Решить уравнение (x + 242) ^ .2 - SQR(17 - x) = -1 Решать можно по разному. В данном случае программа стала искать интервал на котором ...

Решение уравнения 2 ^ m - 2 ^ n = 1984 - QBasic
Решить в натуральных числах уравнение 2 ^ m - 2 ^ n = 1984 решение Очевидно, что m &gt; m Кроме того n не может быть равно или больше 11...

Решение уравнения в простых числах - QBasic
Дано уравнение 19 * x + 22 * y + 29 * z = 700 Требуется решить его в простых числах. Собственно программа решала его в натуральных...


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

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

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