Найти максимум числового выражения 205.03.2017, 10:08. Показов 1483. Ответов 7
Метки нет (Все метки)
ТС предлагает вам решить эту задачу. Она принесет
вам счастье и радость грядущего лета... Введем обозначение. sin = s. Дано числовое выражение s1*s2 +...+ sk*s(k+1)*s(k+2) +...+ s200*s201 тут всего 201 функция sin. От sin(1) до sin(201) (обозначено кратко s1, ..., s201) Все синусы попарно в порядке очереди перемножаются. и потом суммируются НО ЕСТЬ ОДНО НО. Есть одно слагаемое состоящее из Трёх синусов При этом это слагаемое может быть в любой месте нашего выражения (быть первый, в середине, в конце) Требуется определить максимум этого выражения (найти число k - положение тройки синусов) и вывести результат на экран.
0
|
||||||
| 05.03.2017, 10:08 | |
|
Ответы с готовыми решениями:
7
|
| 06.03.2017, 09:56 | ||||||
Сообщение было отмечено echs как решение
Решение
не четко сформулирована задача, как правильно должно быть?
s1*s2 + s2*s3 + s3*s4 + ... или s1*s2 + s3*s4 + s5*s6 + ... Если второй вариант, то задача решена не верно в 13й и 17й строках должно быть указано Step 2 строка 10 - лишняя в 27й строке нужно выводить Max, а не S к тому же код не рациональный, потребуется очень много времени, если, например, нужно считать не до 201, а до 10000 Задача имеет сложность О(N), а не O(N^2), как реализовано в Вашем решении:
1
|
||||||
| 06.03.2017, 11:09 [ТС] | |
|
m-ch
СПАСИБО! Вы правы я пропустил ключевое слово STEP 2. ... m-ch Но мне ваш код что-то непонятен. Кажется (!!) там что-то либо лишнее, либо пропущено... Такое ощущение... ведь слагаемое с тремя синусами должно разрывать на части этот ряд. Ибо две части (две суммы) имеют разное начало и конец суммирования...
0
|
|
| 06.03.2017, 14:14 [ТС] | |
|
m-ch
Спасибо еще раз! Однако честно говоря, код очень мудрёный. Даже сейчас я понимаю, что зная его, я его не сумею повторить. Но все-равно спасибо!! Для меня это недоступная вершина... Добавлено через 1 минуту m-ch А нельзя ли в трёх словах описать алгоритм? Наверное я скорее пойму.
0
|
|
| 06.03.2017, 15:12 | ||||||
Сообщение было отмечено echs как решение
Решение
По переменным:
в S1 храним сумму произведений синусов до i-го элемента: sin1*sin2 + sin3*sin4 + ... + sin(i-2)*sin(i-1) в переменной S2 храним сумму произведений оставшихся синусов после i+2 sin(i+3)*sin(i+4) + sin(i+5)*sin(i+6) + ... + sin200*sin201 для этого мы вначале вычисляем s2 для всего ряда (строки 3-5) далее в цикле (строки 6-11) на каждом шаге вычисляем текущее значение s1 и s2 в 8й строке вычисляем значение суммы ряда, где три синуса вычисляются для i-го значения, а переменные s1 и s2 вычисляются накопительным итогом от предыдущих вычислений. если сложность алгоритма приравнять к количеству, сколько раз вызывается функция Sin, то в моем варианте количество вызовов изменяется линейно от n: K = (n-1)/2*9 В Вашем же алгоритме - квадратичная зависимость: K = (((n-1)/2)^2+1)*3-n поэтому с ростом N, Ваш алгоритм будет сильно тормозить. Добавлено через 4 минуты Мой код можно немного сократить по количеству вычислений (используя только один цикл):
1
|
||||||
| 07.03.2017, 08:08 | ||||||
|
В предыдущем коде, функция Sin вызывалась (n-1)/2*7 = 700 раз
на самом деле необходимо вычисления делать только n (201) раз, все остальные вычисления синусов - дублируются. Учитывая, что тригонометрические функции не очень быстрые, можно свести к минимуму их вызов:
1
|
||||||
| 07.03.2017, 08:08 | |
|
Помогаю со студенческими работами здесь
8
Найти сумму числового ряда
Найти локальный максимум Найти минимум и максимум в массивах чисел и вычислить значение выражения
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|