![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 08.04.2010
Сообщений: 45
|
![]()
Дано действительное x. Вычислить. [Pascal]
(x-1)(x-3)(x-7)...(x-63) (x-2)(x-4)(x-8)...(x-64) Буду благодарен, если будут решения похожиx задач. |
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
![]()
Если x нецелое - то ничего интересного..
А если оно целое, то начинается самое интересное.. Давайте скажем, мол если в некоторый момент x-smt принимает отрицательное значение, мы подсчитаем - и если что потом умножим ответ на -1.. А пока будем брать натуральные x, больше 64 Вот.. Давайте бахнем так : опишем некую функцию, которая будет принимать массив, и некое число Массив будем структурка.. Там будет два поля.. Ключ и значение.. В нашем случае : ключ = простой множитель, значение - кол-во Давайте делать так.. Будем раскладывать число на множители.. И увеличивать\уменьшать кол-во этих множителей в массиве Вот.. Можно отсортировать ключи.. и тогда будем искать бинарным поиском.. Правда иногда нужно будет вставлять простые множители.. а это будет у нас неэффективно.. Поэтому этот вопрос спорный.. Можно написать какое-нить дерево.. Чтобы искать, добавлять за log N.. Вот.. А еще чтобы описать одну и туже процедурку для числителя и знаменателя, будем использовать 3-ий параметр, равный +1 или -1 Вот В конце у нас останутся простые множители.. Мы их красиво перемножим, предварительно возведя в степень, которую будет показывать значение ключа.. Вот.. Ляпота! Я бы так шпарил Последний раз редактировалось Poma][a; 25.01.2015 в 18:15. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 08.04.2010
Сообщений: 45
|
![]()
Я не совсем понимаю как это все сделать.
|
![]() |
![]() |
![]() |
#4 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
![]()
Вот.. Так должно быть понятнее
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 08.04.2010
Сообщений: 45
|
![]() Код:
|
![]() |
![]() |
![]() |
#6 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
![]()
А.. Ну ясно.. Я малясь перегнул..
Косяк в i := 1 to 6.. Там другое что-то надо |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 08.04.2010
Сообщений: 45
|
![]()
Там в цикле 2 возводится в степень от 1 до 6, так 2^6 это и есть 64
Там все в поряде думаю |
![]() |
![]() |
![]() |
#8 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
![]()
Да. Пардон. Был уверен, что там x-1, x-3, x-5, x-7 и т.д
А почему Вы думаете, что где-то ошибка? |
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 22.02.2010
Сообщений: 912
|
![]()
Верно все... вычисляет не правильно?
Последний раз редактировалось kta87; 25.01.2015 в 19:09. |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 08.04.2010
Сообщений: 45
|
![]()
Я попробовал его выполнить, у меня не выходит правильно.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Pascal Дано действительное число х. Вычислить | yzen | Помощь студентам | 3 | 28.10.2012 11:14 |
Дано действительное число а. Вычислить f(a) для функции f(x) | Artem1987 | Помощь студентам | 11 | 11.11.2010 09:51 |
Дано действительное число x. Вычислить | hewlett | Помощь студентам | 2 | 26.06.2010 08:30 |
Дано действительное число x | ttjke | Помощь студентам | 3 | 30.11.2009 23:33 |
Дано действительное число х. Вычислить | Incognitoal | Помощь студентам | 7 | 09.03.2009 12:27 |