Дискуссионный математический форумМатематический форум
Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 3 часа [ Летнее время ]
новый онлайн-сервис
число, сумма и дата прописью

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 09:50 
Не в сети
Свет и истина МРК
Аватара пользователя
Зарегистрирован:
06 янв 2015, 22:27
Сообщений: 7006
Откуда: Саратов
Cпасибо сказано: 783
Спасибо получено:
583 раз в 507 сообщениях
Очков репутации: -237

Добавить очки репутацииУменьшить очки репутации
Процедура очень простая.
Задан паттерн
3 2^2.7 5 2.3^2 13^5 *2^5* 3.11^2 2.5^2 7 2^2.3 . 2 3^2.5

Элементы паттерна разделены пробелом.

Надо взять из этого паттерна максимальные степени простых чисел 2, 3, 5, 7, 11, 13 и найти НОК значений этих максимальных степеней.
Для всей группы рассматриваемых паттернов максимальная степень простого числа 2 всегда равна 5.
Поэтому в программке я эту степень сразу задаю постоянным числом 32.

Программка на PARI/GP
{a=2;b=2;c=1;d=2;e=5;
f=32*3^a*5^b*7^c*11^d*13^e;
print(f);}


Для показанного паттерна имеем:
[math]a=2, b=2, c=1, d=2, e=5[/math].

Ввожу в программку эти значения.
Программка выдаёт искомое значение НОК
2264293231200

Всё очень просто, задача школьная.
Однако… у меня 3408 паттернов.
Выполнить процедуру вручную 3408 раз – трупом ляжешь.
А как автоматизировать процедуру?
То есть на входе 3408 паттернов, на выходе 3408 НОК.

Покажу побольше паттернов для наглядности

▼ паттерны
3.13^2 2^2.7 5.11^2 2.3^2 . *2^5* 3 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5.11^2 2.3^2 13^2 *2^5* 3 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5.11^2 2.3^2 13^5 *2^5* 3 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5.11^2 2.3^2 13 *2^5* 3 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5.11^2 2.3^2 . *2^5* 3.13^2 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5.11^2 2.3^2 . *2^5* 3 2.5^2 7.13^2 2^2.3 . 2 3^2.5
3 2^2.7 5.11^2 2.3^2 . *2^5* 3 2.5^2 7 2^2.3 13^2 2 3^2.5
3 2^2.7 5.11^2 2.3^2 . *2^5* 3 2.5^2 7 2^2.3 13^5 2 3^2.5
3 2^2.7 5.11^2 2.3^2 . *2^5* 3 2.5^2 7 2^2.3 13 2 3^2.5
3 2^2.7 5.11^2 2.3^2 . *2^5* 3 2.5^2 7 2^2.3 . 2.13^2 3^2.5
3.13^2 2^2.7 5 2.3^2 11^2 *2^5* 3 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5.13^2 2.3^2 11^2 *2^5* 3 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5 2.3^2 11^2.13 *2^5* 3 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5 2.3^2 11^2 *2^5* 3.13^2 2.5^2 7 2^2.3 . 2 3^2.5
3 2^2.7 5 2.3^2 11^2 *2^5* 3 2.5^2 7.13^2 2^2.3 . 2 3^2.5

На точки в паттерне не обращайте внимания, они означают подставляемые вместо них числа, нам они не нужны.
Звёздочками выделен постоянный элемент паттерна 2^5, этот элемент присутствует во всех паттернах.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 11:37 
Не в сети
Мастер
Зарегистрирован:
19 дек 2022, 04:53
Сообщений: 264
Cпасибо сказано: 3
Спасибо получено:
11 раз в 11 сообщениях
Очков репутации: 4

Добавить очки репутацииУменьшить очки репутации
Nataly-Mak
ну, вы же сами программист. Одинаковое вычисляете один раз.
В матлаб, в один массив a (столбец) длиной 3408 - числа, в другой столбец b - их степени, и возводите одноразово массив в массив (т.е. не в цикле). c=a.^b
Можно в GPU - ускорение счета до 50 раз, ну и т.д.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 12:01 
Не в сети
Свет и истина МРК
Аватара пользователя
Зарегистрирован:
06 янв 2015, 22:27
Сообщений: 7006
Откуда: Саратов
Cпасибо сказано: 783
Спасибо получено:
583 раз в 507 сообщениях
Очков репутации: -237

Добавить очки репутацииУменьшить очки репутации
У меня нет никаких матпакетов.
Мне нужна исполняемая программа.
Или же программа на PARI/GP.
Я не знаю, как в PARI/GP написать программу, чтобы она считывала нужные степени из паттернов.
Если вы знаете, подскажите, пожалуйста.

Если можете вычислить в Матлаб, дам вам все паттерны, вычислите, пожалуйста.

Я прекрасно понимаю, что такое алгоритм.
Но мне надо не рассказывать, а реализовать.

Цитата:
В матлаб, в один массив a (столбец) длиной 3408 - числа, в другой столбец b - их степени...

Вот это надо из паттернов считывать.
Матлаб умеет считывать?
Я глазками умею считывать, и вычислять программкой умею.
Или надо глазками считывать из паттерна, а ручками вводить в Матлаб?

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 12:10 
Не в сети
Мастер
Зарегистрирован:
19 дек 2022, 04:53
Сообщений: 264
Cпасибо сказано: 3
Спасибо получено:
11 раз в 11 сообщениях
Очков репутации: 4

Добавить очки репутацииУменьшить очки репутации
Nataly-Mak
входные данные по любому руками в текстовом виде типа вы и привели.
Матлаб текстовые данные читать умеет. Фортран тоже умеет и тоже псевдоскалярность имеет..
Текст собственно программы уже приведен выше )

Дочитал, извините, шлите данные. В личку - ваш е-адрес

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 12:25 
Не в сети
Свет и истина МРК
Аватара пользователя
Зарегистрирован:
06 янв 2015, 22:27
Сообщений: 7006
Откуда: Саратов
Cпасибо сказано: 783
Спасибо получено:
583 раз в 507 сообщениях
Очков репутации: -237

Добавить очки репутацииУменьшить очки репутации
Список паттернов здесь
https://disk.yandex.ru/d/CQ0T4ywWg2gbXQ

Перед паттерном его имя, если это мешает, можно имена паттернов убрать.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 12:34 
Не в сети
Мастер
Зарегистрирован:
19 дек 2022, 04:53
Сообщений: 264
Cпасибо сказано: 3
Спасибо получено:
11 раз в 11 сообщениях
Очков репутации: 4

Добавить очки репутацииУменьшить очки репутации
Nataly-Mak
ок скачал, ничего сложного, думаю завтра

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 13:51 
Не в сети
Мастер
Зарегистрирован:
19 дек 2022, 04:53
Сообщений: 264
Cпасибо сказано: 3
Спасибо получено:
11 раз в 11 сообщениях
Очков репутации: 4

Добавить очки репутацииУменьшить очки репутации
3097 2 3 2^2 5 2.3^2 7^5 *2^5* 3.13^2 2.5^2 11^5 2^2.3 .
b1133: 13 2^2.3 11^5 2 3.5^2 *2^5* 7^2 2.3^2 . 2^2.5 3 2 .
есть цифры без степени (выделено)
как их читать (интерпретировать)?

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 14:41 
Не в сети
Свет и истина МРК
Аватара пользователя
Зарегистрирован:
06 янв 2015, 22:27
Сообщений: 7006
Откуда: Саратов
Cпасибо сказано: 783
Спасибо получено:
583 раз в 507 сообщениях
Очков репутации: -237

Добавить очки репутацииУменьшить очки репутации
bobinik писал(а):
3097 2 3 2^2 5 2.3^2 7^5 *2^5* 3.13^2 2.5^2 11^5 2^2.3 .
b1133: 13 2^2.3 11^5 2 3.5^2 *2^5* 7^2 2.3^2 . 2^2.5 3 2 .
есть цифры без степени (выделено)
как их читать (интерпретировать)?

Они в первой степени.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 15:10 
Не в сети
Мастер
Зарегистрирован:
19 дек 2022, 04:53
Сообщений: 264
Cпасибо сказано: 3
Спасибо получено:
11 раз в 11 сообщениях
Очков репутации: 4

Добавить очки репутацииУменьшить очки репутации
Nataly-Mak
ок сделаю, предварительный вывод, скажите в каком виде лучше? Ниже:
(номер строки в вашем файле, выражение, основание, степень, результат)
1. 3.13^2, 3.13 2 9.7969
1. 2^2.7, 2 2.7 6.498
1. 5.11^2, 5.11 2 26.1121
1. 2.3^2, 2.3 2 5.29
1. 2^5, 2 5 32
1. 2.5^2, 2.5 2 6.25
1. 2^2.3, 2 2.3 4.9246
1. 3^2.5, 3 2.5 15.5885
2. 2^2.7, 2 2.7 6.498
2. 5.11^2, 5.11 2 26.1121
2. 2.3^2, 2.3 2 5.29
2. 13^2, 13 2 169
2. 2^5, 2 5 32
2. 2.5^2, 2.5 2 6.25
2. 2^2.3, 2 2.3 4.9246
2. 3^2.5, 3 2.5 15.5885
3. 2^2.7, 2 2.7 6.498
3. 5.11^2, 5.11 2 26.1121
3. 2.3^2, 2.3 2 5.29
3. 13^5, 13 5 371293
3. 2^5, 2 5 32
3. 2.5^2, 2.5 2 6.25
3. 2^2.3, 2 2.3 4.9246
3. 3^2.5, 3 2.5 15.5885
4. 2^2.7, 2 2.7 6.498
4. 5.11^2, 5.11 2 26.1121
4. 2.3^2, 2.3 2 5.29
4. 2^5, 2 5 32
4. 2.5^2, 2.5 2 6.25
4. 2^2.3, 2 2.3 4.9246
4. 3^2.5, 3 2.5 15.5885
5. 2^2.7, 2 2.7 6.498
5. 5.11^2, 5.11 2 26.1121
5. 2.3^2, 2.3 2 5.29
5. 2^5, 2 5 32
5. 3.13^2, 3.13 2 9.7969
5. 2.5^2, 2.5 2 6.25
5. 2^2.3, 2 2.3 4.9246
5. 3^2.5, 3 2.5 15.5885
6. 2^2.7, 2 2.7 6.498
6. 5.11^2, 5.11 2 26.1121
6. 2.3^2, 2.3 2 5.29
6. 2^5, 2 5 32
6. 2.5^2, 2.5 2 6.25
6. 7.13^2, 7.13 2 50.8369
6. 2^2.3, 2 2.3 4.9246
6. 3^2.5, 3 2.5 15.5885
7. 2^2.7, 2 2.7 6.498
7. 5.11^2, 5.11 2 26.1121
7. 2.3^2, 2.3 2 5.29
7. 2^5, 2 5 32
7. 2.5^2, 2.5 2 6.25
7. 2^2.3, 2 2.3 4.9246
7. 13^2, 13 2 169
7. 3^2.5, 3 2.5 15.5885
8. 2^2.7, 2 2.7 6.498
8. 5.11^2, 5.11 2 26.1121
8. 2.3^2, 2.3 2 5.29
8. 2^5, 2 5 32
8. 2.5^2, 2.5 2 6.25
8. 2^2.3, 2 2.3 4.9246
8. 13^5, 13 5 371293
8. 3^2.5, 3 2.5 15.5885
9. 2^2.7, 2 2.7 6.498
9. 5.11^2, 5.11 2 26.1121
9. 2.3^2, 2.3 2 5.29
9. 2^5, 2 5 32
9. 2.5^2, 2.5 2 6.25
9. 2^2.3, 2 2.3 4.9246
9. 3^2.5, 3 2.5 15.5885
10. 2^2.7, 2 2.7 6.498

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Автоматизировать процедуру
СообщениеДобавлено: 10 янв 2023, 15:26 
Не в сети
Мастер
Зарегистрирован:
19 дек 2022, 04:53
Сообщений: 264
Cпасибо сказано: 3
Спасибо получено:
11 раз в 11 сообщениях
Очков репутации: 4

Добавить очки репутацииУменьшить очки репутации
Nataly-Mak
сделал, последние строки, только где есть символ степени
'b5737: 2.13^2= 4.5369, 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5738: 3.13^2= 9.7969, 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5739: 2^2.7= 6.498, 5.13^2= 26.3169, 2.3^2= 5.29, 2^5= 32, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5740: 2^2.7= 6.498, 2.3^2= 5.29, 11.13^2= 123.8769, 2^5= 32, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5741: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.13^2= 9.7969, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5742: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, 13^2= 169, '
'b5743: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, 13^5= 371293, '
'b5744: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5745: 13^2= 169, 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5746: 13^5= 371293, 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5747: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5748: 2.13^2= 4.5369, 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5749: 3.13^2= 9.7969, 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5750: 2^2.7= 6.498, 5.13^2= 26.3169, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5751: 2^2.7= 6.498, 2.3^2= 5.29, 13^2= 169, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5752: 2^2.7= 6.498, 2.3^2= 5.29, 13^5= 371293, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5753: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
'b5754: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, 13^2= 169, '
'b5755: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, 13^5= 371293, '
'b5756: 2^2.7= 6.498, 2.3^2= 5.29, 2^5= 32, 3.11^2= 9.6721, 2.5^2= 6.25, 7^5= 16807, 2^2.3= 4.9246, '
время обработки (сек), ti = 2.5201


В общем файл читается и степени вычисляются, ссылка скачивания
https://cloud.mail.ru/public/1y2w/ZHyyXtxHg

Теперь по делу,
1) В вашем пример только целые (?), а в файле - десятичные дроби, или это ошибка файла?
2) что делать с этими числами? в смысле НОК и проч.

Вернуться к началу
 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему    На страницу 1, 2, 3  След.  Страница 1 из 3 [ Сообщений: 29 ]

Часовой пояс: UTC + 3 часа [ Летнее время ]



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2023 MathHelpPlanet.com. All rights reserved