![]() |
|
||||||||||
|
|||||
|
[+1 25.04.11]
|
Допустим есть число 100. Его надо разбить на 10 частей, что бы с каждой часть число было больше, а сумма этих числе получилось ровно 100. Никак не могу додуматься как такое сделать...
Есть число 100, я указываю нужно число (уже не 10, а то которое надо, допустим 35), как теперь разбить число 100 на 35 частей с приростом каждого числа (равномерный прирост)? Конечный результат 100. (Даже не обязательно 100, любое указанное число). |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
|
Любой класс из пакета fl.transitions.* кроме Elastic и Back (они в какой-то момент будет выходить за заданные пределы, но в итоге к ним придут) может это сделать. Все зависит от величины изменений.
|
|
|||||
|
Цитата:
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Цитата:
пример 100/10=10 100 = 10+(10+10)+(10+10+10)+(10+10+10+10) - здесь только 4 части, хотя по твоему утверждению должно быть 10 Последний раз редактировалось FlashRus; 27.10.2010 в 21:01. |
|
|||||
|
[+1 25.04.11]
|
Цитата:
Есть какие то методы? AS 2.0ы |
|
|||||
|
Думаю здесь подойдет простая арифметическая прогрессия, в википедии всё есть
Sn = a1 + d * n * (n-1) / 2 где Sn - сумма (100), d - прирост(его надо найти), a1 - стартовое число(его надо выбрать), n - количество слагаемых |
|
|||||
|
Цитата:
Да, арифмитическая прогрессия. Почитайте в википедии. Вам нужна формула для суммы. Короче всё то, что сказал f.g.programmer, я просто отметиться)
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Регистрация: Dec 2009
Сообщений: 428
|
Решение в лоб
function prog(total_sum, start_val, members_count) { var tmp = 0; var tmp_sum = 0; for(var i = 0; i < members_count; i++) { tmp += i; tmp_sum += start_val; } var step = (total_sum-tmp_sum)/tmp; trace('step',step); var total = 0; for(var i=0; i < members_count; i++) { var t = start_val + i*step; trace(t); total += t; } trace('total',total); } prog(100, 0, 10)
__________________
Скажи мне кто твой друг и я скажу тебе кто твой друг |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:16. |
|
|
« Предыдущая тема | Следующая тема » |
|
|