С Новым годом! Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1104 / 480 / 33
Регистрация: 05.07.2018
Сообщений: 1,870
Записей в блоге: 7

Решение уравнения x^7 = 1

05.11.2018, 09:28. Показов 1152. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача
требуется решить уравнение x7 = 1. То есть найти все 7 корней этого уравнения.
Решение
1. очевидно, что первый корень равен 1, а остальные корни комплексные
2. из теории чисел следует, что все корни подобного уравнения расположены
на окружности радиуса 1.
3. будем искать корни на этой окружности
4. итак, полагаем, что корень имеет вид x + y*i (i - мнимая единица)
5. в прилагаемой программе задается цикл, где икс изменяется от -1 до 1
поскольку уравнение окружности x2 + y2 = 1, то игрек вычисляется по формуле https://www.cyberforum.ru/cgi-bin/latex.cgi?y=\pm\sqrt{1-x^2}
6. Как определить что комплексное число - корень нашего уравнения?
7. я ввел функцию f(x, y). Эта функция возводит число x + y*i в седьмую степень и вычитает 1.
и если это число - корень нашего уравнения то мы должны получить число 0. Однако все
вычисления ведутся приближенно и мы получаем некоторое комплексное число, близость
которого к 0 определяется выражением SQR(x^2 + y^2). Именно это значение и получает
функция f(x, y)
8. с первого взгляда вроде бы всё верно. НО
программа никак не может вычислить самый простой корень равный 1. Это и неудивительно
при икс по модулю близком к 1, окружность вертикально пересекает ось абсцисс. То есть
велика погрешность вычисления числа y.
9. В общем надо либо модифицировать алгоритм, либо менять его на новый.
10. Короче, надо как-то "пройти" по окружности и проверить все числа на предмет быть корнем
нашего уравнения.
11. В общем решал я решал ... что-то решил ... может кто-то предложит иной алгоритм.
буду рад любой подсказке.
12. Ну не находит программа корень равный 1. Значит что-то неверно. Или всё неверно?

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
REM          x^7 = 1  
REM  x1 = 1
REM  x2 = -0.9010 + 0.4338i
REM  x3 = -0.9010 - 0.4338i
REM  x4 = -0.2224 + 0.9749i
REM  x5 = -0.2224 - 0.9749i  
REM  x6 =  0.6235 + 0.7817i 
REM  x7 =  0.6235 - 0.7817i
REM
 
DECLARE FUNCTION f! (x!, y!)
CLS
 
FOR x = -1 TO 1 STEP .0002
   y1 = SQR(1 - x ^ 2)
   IF f(x, y1) < .001 THEN PRINT x; y1
 
   y2 = -y1
   IF f(x, y2) < .001 THEN PRINT x; y2
NEXT
END
 
FUNCTION f (x, y)
   p = x
   q = y
 
   FOR i = 1 TO 6
      p1 = p
      p = p1 * x - q * y
      q = p1 * y + q * x
   NEXT
 
   p = p - 1
   f = SQR(p ^ 2 + q ^ 2)
END FUNCTION
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.11.2018, 09:28
Ответы с готовыми решениями:

Определить тип уравнения, указать метод решения, общее решение дифференциального уравнения
дано дифференциальное уравнение первого порядка: (x+y+1)dx+(x-y2+3)dy=0. Определить тип уравнения, указать метод решения, общее решение...

Алгоритмизация решения уравнения для банковского IT-шника (или просто решение уравнения)
Добрый день. Нужна помощь (в идеале) с алгоритмизацией решения уравнения или (тоже отлично) способом численного решения уравнения для...

Найти общее решение или частное решение уравнения первого порядка
Помогите решить: 2*x*sqrt(1-y^2)=y' * (1+x^2). Я не понимаю как решить это, т.к. dx и dy получаются в знаменателе...

1
1104 / 480 / 33
Регистрация: 05.07.2018
Сообщений: 1,870
Записей в блоге: 7
07.11.2018, 08:33  [ТС]
Задача оказалась намного проще, чем я предполагал. Просто надо извлечь
корень седьмой степени из единицы и распечатать все семь решений.
Программа прилагается.

примечание
небольшое изменение программы позволит извлекать из 1 корень любой степени.

QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
REM          x^7 = 1
REM  x1 =  1 + 0 * i
REM  x2 =  0.62349 + 0.78183*i
REM  x3 = -0.22252 + 0.97492*i
REM  x4 = -0.90096 + 0.43388*i
REM  x5 = -0.90096 - 0.43388*i
REM  x6 = -0.22252 - 0.97492*i
REM  x7 =  0.62349 - 0.78183*i
REM
 
CONST pi = 3.141593
CLS
 
FOR i = 0 TO 6
   u = (2 * pi * i) / 7
   PRINT COS(u); SIN(u); "* i"
NEXT
END
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.11.2018, 08:33
Помогаю со студенческими работами здесь

Найти решение уравнения, изоклинную и интегральную кривые, решение задачи Коши
Помогите пожалуйста! а) Найти решение вида: x=a,y=b,y=kx+b y'=\frac{y^2-4}{xy},\\ y'=x-y+2 б) Какая кривая является одновременно...

Найти общее решение дифференциального уравнения I порядка и частное решение.
помогите пожалуйста!!!! Найти общее решение дифференциального уравнения I порядка и частное решение, удовлетворяющее указанным начальным...

Найти общее решение дифференциального уравнения II порядка и частное решение.
помоги пожалуйста!!! Найти общее решение дифференциального уравнения II порядка и частное решение, удовлетворяющее указанным начальным...

Найти общее решение дифференциального уравнения и частное решение, удовлетворяющее начальному условию
y={y}_{0} при x={x}_{0},y(0)=1 y'-3x^2y={e}^{2x+x^3} y=uv y'=u'v+uv' u'v+uv'-3x^2uv={e}^{2x+3}

Найти общее решение дифференциального уравнения и частное решение.
Найти общее решение дифференциального уравнения и частное решение, удовлетворяющее начальным условиям. y''-6y'+9y=9x^2-12x+2, y(0)=1;...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru