|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
05.02.2020, 02:16 | #21 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
Вы чего вообще хотите?
|
05.02.2020, 19:41 | #22 |
Пользователь
Регистрация: 18.01.2020
Сообщений: 17
|
Окей, я понял что такое @jid, это способ компиляции, который на практике не особо-то помогает.
Числа крутятся, строки мутятся, но они опять работают не пропорционально времени, что не дает вычислять количество символов больше 200 тысяч (10 сек), то есть если ввести больше n или step, то время вычисления вырастает кратно. Таким образом 1000 000 символов вычисляется около 20 минут, что не очень практично для моей задачи. Меня интересует сама последовательность, а не точность, ведь я не использую её в каких либо расчётах, будь-то математических или физических. Я занят проектом, в котором я изучаю иррациональную последовательность и вероятность того или иного события в ряде чисел, также я пытаюсь создать особую формулу, по которой я бы мог вычислить начало определённого ряда чисел из иррациональной последовательности, зная только саму определенную последовательность и подкоренное число. Кстати только из-за этой преисполненную массивными вычислениями задачи я полез в программирование) Последний раз редактировалось DoctorDeathDDrac; 06.02.2020 в 08:37. |
05.02.2020, 22:24 | #23 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Тогда Вам не Python нужен а MathCAD, предположительно.
I am not a wizard, I am just learning.
|
05.02.2020, 23:07 | #24 |
Пользователь
Регистрация: 18.01.2020
Сообщений: 17
|
MathCad не может производить нужный мне поиск, не говоря уже о том, что у него ограничение около 50 символов
|
06.02.2020, 17:16 | #25 | |
Пользователь
Регистрация: 18.01.2020
Сообщений: 17
|
Цитата:
|
|
06.02.2020, 21:55 | #26 |
Пользователь
Регистрация: 18.01.2020
Сообщений: 17
|
Black Fregat, Проще говоря мне нужно просто вычислять корень до n степени со стабильной скоростью, то есть 1 операция - 1 одна секунда (условно) 2 операции - 2 секунды. На данный момент код, хоть и стал гораздо эффективней работать, но происходит так 1 операция 1 секунда, но 2 операции уже примерно 6 секунд. (Операцию в данном примере можно принять за число за количество знаков всего требуемых при вычислении , просто количество символов)
|
07.02.2020, 00:07 | #27 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
Боюсь, что замедление по мере роста количества вычисленных цифр неизбежно
Видимо, какой-то выигрыш Вы получите, перейдя от Python к С |
07.02.2020, 08:08 | #28 |
Пользователь
Регистрация: 18.01.2020
Сообщений: 17
|
Black Fregat, Замедление неизбежно, но с точки зрения логики можно организовать процесс так, чтобы время вычисления было пропорционально количеству операций. Как я уже говорил, что гипотетически можно делать вычисления модулями. Один модуль всегда вычисляется конкретным временем, а два таких модуля таким же только удвоенным временем, сложение этих модулей скорее будет как погрешность.
Текущее замедления, как я уже говорил, не пропорционально, что не логично. Две операции должны быть вычислены двойным временем, а не в 6 раз дольше. Мне +- 60 секунд вообще без проблем, но когда вычисление идет буквально час... Ладно, если больше вариантов нет, тогда спасибо |
07.02.2020, 08:40 | #29 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
Вы, похоже, не до конца понимаете, что основной источник замедления - рост размеров обрабатываемых на каждом шаге чисел. А способа вычислять корень цифру за цифрой, не подтягивая всё ранее вычисленное значение, я не знаю
|
07.02.2020, 15:43 | #30 |
Пользователь
Регистрация: 18.01.2020
Сообщений: 17
|
Black Fregat, Когда я разбирал предыдущую вашу форму, собственно из которой и вычисляется корень, я понял, что на каждом последующем шаге фактически программа получает новые знаки. То есть мы вычислили один знак, а последующий вычисляется по оставшимся знакам, гипотетически можно вбить только эти "оставшиеся знаки" что бы получить нужно число на нужном месте.
Но ладно, ведь можно же вычислять по-одному знаку и вставлять просто в строчку, а остаточные цифры оставлять для вычисления следующей цифры, при этом мы не будем затрагивать предыдущий символ. Если я правильно понял вашу програму, то это должно сработать, если, конечно, дело не в большом объёме остаточных чисел... |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[Python] Дано натуральное число n. Найти все числа меньшие Мр числа Мерсенна. | Джина Ким | Помощь студентам | 0 | 18.05.2018 18:39 |
Delphi. Цикл While. Вывести целые числа от А до В, А вывести 1 раз, число А+1 вывести 2 раза и т.д. | schibeki | Помощь студентам | 4 | 07.02.2014 09:17 |
Множества: Даны целые числа а1,.....,Аn. Вывести на печать сообщение - имеется ли в последовательности х повторяющиеся числа | lialia | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 24.12.2012 21:11 |
Вывести числа, из диапазона от n до m у которых, количество единичных разрядов в двоичном представлении числа нечетно | sheff123 | Помощь студентам | 8 | 05.01.2012 15:35 |
Как числа в двоичном виде вывести в столбик по 4 числа? | Equalizer | Общие вопросы C/C++ | 11 | 27.09.2009 14:15 |