2013-05-04 4 views
-1

У меня сложены математический вопрос с php!bcmod найти другую переменную

Давайте говорить, что мы имеем:

$first = "3707682248186045564102137590742467172304310498516787723642221858460240158712832"; 
$second = "23846232839228381"; 
$result = bcmod($first,$second); 

echo $result; 
// $result = 3433268; 

Как рассчитать $ первую переменный (если мы не знаем), если только мы $ результата и $ второго значения?

На самом деле не точное значение, но должно быть близко к нему, так что при выполнении

bcmod($first, $second); 

это даст значение результата $ равное

Да,

bcmod('3433268',$second); 

также дает 3433268!

Я ценю всю вашу помощь, спасибо вам, ребята!

+3

Итак, вы берете остаток 'a/b' как' c' и ожидаете найти 'a' заданы только' b' и 'c'? Это будет сложно. – Ryan

+0

Почему вы пытаетесь это сделать? – user1937198

+0

@rynah Да, точно, но 'a' может быть близкой, а не точной. –

ответ

5

Любое число номеров могло бы дать этот результат. Восстановление числа из его остатка при делении на что-то невозможно.

+0

Невозможно, просто не отчетливо. Например.'$ first = $ second + $ result;' или просто '$ first = $ result;' :) – hakre

+0

@hakre: Восстановление * a * число: D – Ryan

+1

Грубо заставлять его тогда: – hakre

0

проблема заключается в следующем: ... мод функция не биективным ... другими словами, не существует обратная функция ...

скажем мы вычислим 10 мод 7 мы получаем 3 ... (10 конгруэнтно 3 мод 7)
если мы вычислим 17 мод 7 мы также получаем 3 ... (17 также конгруэнтны 3 мод 7)
24 мод 7 ... 3

так .. Если я дам вам 3 и 7 ... и скажу, что операция была «мод» ... какой номер я хочу услышать от вас? ... 10? ... 17? ... 24?

все эти числа принадлежат одному и тому же классу остатков ... но над телом действительных чисел каждый класс остатка имеет бесконечное количество членов ... поэтому, если вы хотите отменить «mod 7», бесконечное количество возможных функций, которые являются кандидатами на обратную операцию, которую вы хотите отменить ... но у вас нет информации, какой из них будет правильным ...

путем сокращения числа до его остаточного класса (функция mod делает именно это), информация теряется ... нет способа получить эту информацию обратно ...

Смежные вопросы