Как рассчитать Mod b в калькуляторе Casio fx-991ES


94

Кто-нибудь знает, как рассчитать Mod b в калькуляторе Casio fx-991ES. Благодарность


1
Вам действительно стоит использовать машину Google. Смотрите здесь: thestudentroom.co.uk/showthread.php?t=38469
Blender

7
+1 за вопрос, связанный с калькулятором Casio.
Джон Алексиу

3
Этот вопрос, кажется, не по теме, потому что он не о программировании
bummi

@bummi, почему бы нам не переместить его в math.stackexchange?
Benjamin R

2
Я голосую за то, чтобы закрыть этот вопрос как не по теме, потому что он не о программировании, как это определено в справочном центре .
TylerH

Ответы:


136

В этом калькуляторе нет функции по модулю. Однако есть довольно простой способ вычислить по модулю, используя режим отображения ab/c(вместо традиционного d/c).

Как переключить режим отображения на ab/c:

  • Заходим в настройки ( Shift+ Mode).
  • Нажмите стрелку вниз (для просмотра дополнительных настроек).
  • Выберите ab/c(цифра 1).

Теперь сделайте свой расчет (в режиме компоновки), вроде 50 / 3и вы увидите 16 2/3, значит, мод есть 2. Или попробуйте, 54 / 7какой из них 7 5/7(мод есть 5). Если вы не видите никакой дроби, значит мод 0похож 50 / 5 = 10(мод есть 0).

Остальная часть показана в уменьшенном виде , поэтому в 60 / 8результате будет 7 1/2. Остальное то, 1/2что есть 4/8мод 4.

EDIT: Как правильно указал @lawal, этот метод немного сложен для отрицательных чисел, потому что знак результата будет отрицательным.

Например -121 / 26 = -4 17/26, таким образом, моды , -17который +9в модах 26. В качестве альтернативы вы можете добавить по модулю базы для вычисления для отрицательных чисел: -121 / 26 + 26 = 21 9/26(моды 9).

EDIT2: Как указал @simpatico, этот метод не будет работать для чисел, которые не соответствуют точности калькулятора. Если вы хотите вычислить, скажем 200^5 mod 391, вам понадобятся некоторые уловки из алгебры. Например, используя правило, (A * B) mod C = ((A mod C) * B) mod Cмы можем написать:

200^5 mod 391 = (200^3 * 200^2) mod 391 = ((200^3 mod 391) * 200^2) mod 391 = 98


6
@simpatico, потому что 200 ^ 5 выходит за пределы точности calc, вам нужно использовать некоторые уловки из алгебры. Например: 200 ^ 5 mod 391 = (200 ^ 3 mod 391) * 200 ^ 2 mod 391 = 98 (вы можете использовать мод «в любое время» во время вычислений).
NightElfik

1
Этот результат будет неточным для отрицательных чисел. Например: -121 mod 26 = 9, потому что -121 = -5 * 26 + 9. Но 121 mod 26 = 17, потому что 121 = 4 * 26 + 17.
lawal

А как насчет десятичных чисел. Нравится -1/2 мод 23? Уильям Столлинг (Сетевая безопасность и криптография) говорит, что его 11, но я не понимаю, как это сделать.
Sohaib

@Sohaib Я думаю, это зависит от вашего определения операции по модулю. Я могу представить очень простое расширение операции по модулю на действительные числа, которое определяется аналогично напоминанию после целочисленного деления. В этом случае 3.14159 mod 1.4будет 0.34159( 3.14159 = 2 * 1.4 + 0.34159). Точно так же вы можете сказать, что если напоминание отрицательное, вы превратите его в положительное, чтобы ваш пример -0.5 mod 23был 22.5в моей книге. Но опять же, некоторые приложения могут определять модуль по-другому.
NightElfik 01

1
Кроме того, знаменатель должен быть таким же, как исходная дробь, иначе значение в числителе не будет правильным по модулю.
powersource97 08

49

Насколько мне известно, в этом калькуляторе нет функций мода. Тем не менее, вы можете легко выполнить компьютер вручную. Ex.

(1) 50 мод 3

(2) 50/3 = 16,66666667

(3) 16,66666667 - 16 = 0,66666667

(4) 0,66666667 * 3 = 2

Следовательно, 50 мод 3 = 2

На заметку: в строке 3 мы получили «минус 16», просмотрев результат строки (2) и проигнорировав все, что находится после десятичной дроби. Цифра 3 в строке (4) такая же, как в строке (1).

Надеюсь, что это помогло.

Редактировать В результате некоторых испытаний вы можете получить x.99991, которое затем округлите до числа x + 1.


И как мне преобразовать десятичные разговоры в двоичные с помощью калькулятора, если у меня нет базового механизма в моем калькуляторе?
Файзан

Могу ли я найти модуль негатива, выполнив указанные выше действия? Например -151 мод 26
Рохит Киран

@Faizan это отдельный вопрос / проблема, попробуйте задать свой вопрос (если он еще не существует). Но самый простой способ, который я нашел, - это преобразовать его в шестнадцатеричный, который затем мгновенно преобразуется в двоичный (т.е. Dec 10 = Hex A = Binary 1010). Есть относительно простые методики для перехода между даже очень-очень большими (или очень-очень маленькими!) Экспоненциальными десятичными значениями в шестнадцатеричные, погуглите. Мне пришлось использовать их в одном из вопросов на экзамене по CS в первый год. Если вам когда-нибудь понадобится проверить двоичный код чего-либо, всегда всегда работайте в шестнадцатеричном формате, а не в десятичном.
Benjamin R

@RohitKiran Если вы прибавите (а не вычтите) n кратных от 26 до -151, пока не получите положительное значение x st 0 ≤ x <26, то вы увидите, что -151 ≡ x (mod 26). Или, говоря другими словами, просто используйте вместо -26, а затем следуйте инструкциям шага (2). Что, кстати, слишком медленно и поэтому непрактично. Но это все же стоит знать.
Benjamin R

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

16

Вам нужно 10 ÷ R 3 = 1 Это отобразит как напоминание, так и частное


÷ R

введите описание изображения здесь


7
Какая именно это модель? На моем Casio fx-991ES PLUS нет этой кнопки R :(
Бак Ицик

1
Просто будьте осторожны, в то время как отображаемый остаток верен для одного деления, в более крупных выражениях оператор НЕ будет действовать как оператор по модулю. Из руководства: Если вычисление ÷ R является частью многоступенчатого вычисления, только частное передается следующей операции. например. (2 ÷ R3 + 3 ÷ R3) = 1, однако (2mod3 + 3mod3) = 2
mtone

Думаю, это Casio fx-115ES PLUS.
Rafay

1
спасибо, работает отлично, должно быть выше. У меня есть fx-991sp x II, и он отлично работает. Именно то, что я искал.
JFValdes

14

Есть переключатель a^b/c

Если вы хотите рассчитать

491 mod 12

затем введите 491, нажмите a^b/cзатем введите 12. Тогда вы получите 40, 11, 12. Здесь средний ответ будет 11.

Точно так же, если вы хотите посчитать, 41 mod 12найдите 41 a^b/c12. Вы получите 3, 5, 12 и ответ 5 (средний). modВсегда среднее значение.


почему это не полезно? это не прямой метод .. но мы можем найти ответ
shantocv

4
Я не голосовал против, но в вашем ответе используется та же методология, что и в ответе, получившем наибольшее количество голосов (и вы написали его через 4 месяца). Кроме того, это очень плохо объяснено.
zurfyx 07

1
@Jerry На самом деле, некоторые калькуляторы (Casio) имеют прямую a^b/cкнопку и даже не имеют какой-либо функциональности, соответствующей верхнему ответу, который, как я полагаю, предназначен для калькуляторов TI. Я рыскал в Интернете в a^b/cпоисках простого объяснения того, как использовать для вычисления остатков от целочисленного деления на моем Casio fx-9750GA PLUS, и это было невероятно просто после редактирования Ajoy.
Benjamin R

Однако я должен отметить, что даже при том, что это экономит время, оно все еще несовместимо с большими значениями (например, 10 цифр +)
Benjamin R

2
45 a^b/c6 дает среднее значение 1., тогда как фактический модуль упругости равен 3. Почему?
venkatvb 05

11

Вы можете рассчитать A по модулю B (для положительных чисел), используя это:

Pol (-Rec ( 1 / r , 2π r × A / B ), Y) (π r - Y) B

Затем нажмите [CALC] и введите значения A и B , и любое значение для Y .

/ указывает на использование дробного ключа, а r означает радианы ( [SHIFT] [Ans] [2] )


Функция слишком сложна, я даже не могу ее правильно ввести! В любом случае, что это за надстрочный минус между Pol и Rec ??
Мина Майкл

ой это просто минус! Почему верхний индекс ??
Мина Майкл

3

Все это возвращается к определению модуля: это остаток, например 7 mod 3 = 1. Это потому, что 7 = 3 (2) + 1, в котором 1 - остаток.

Чтобы проделать этот процесс на простом калькуляторе, сделайте следующее: возьмите делимое (7) и разделите на делитель (3), запишите ответ и отбросьте все десятичные дроби -> пример 7/3 = 2,3333333, беспокойтесь только о 2. Теперь умножьте это число на делитель (3) и вычтите полученное число из исходного делимого.

поэтому 2 * 3 = 6 и 7-6 = 1, таким образом, 1 равно 7mod3


1
Ваш метод правильный и очевидный, но непрактичный для большинства условий, когда вам вообще может понадобиться калькулятор. Скажем, на экзамене по дискретной математике, если вы пытаетесь выяснить соответствие очень-очень больших показателей, то этот метод прямо невозможен, а косвенно слишком медленен - ​​вам обычно нужно выполнить немного шифрования / дешифрования RSA на экзамене с помощью рука и без встроенного функционала мода занимает слишком много времени. Об этом говорят даже наши преподаватели. Это не критика вашего ответа, просто стоит указать на практическое ограничение.
Benjamin R

3

формула мода Примечание: математическая ошибка означает, что модуль m = 0


3

Вот как я обычно это делаю. Например, чтобы рассчитать 1717 mod 2:

  • Возьми 1717 / 2. Ответ: 858,5
  • Теперь возьмите 858 и умножьте его на mod ( 2), чтобы получить1716
  • Наконец, вычтите исходное число ( 1717) минус число, полученное на предыдущем шаге ( 1716) - 1717-1716=1.

Так и 1717 mod 2есть 1.

Подводя итог, все, что вам нужно сделать, это умножить числа перед десятичной точкой на мод, а затем вычесть его из исходного числа.


2

сначала введите нормальное деление, а затем введите shift + S-> d


1

Рассчитайте x/y(здесь ваши фактические числа) и нажмите a b/cклавишу, которая является третьей под Shiftклавишей.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.