2015-02-28 5 views
0

Я нахожусь в курсе «Модульное усиление», и теперь я должен написать код, чтобы свести эти два вместе, в рамках программы калькулятора в моем VB 2013.Учим модульную экспансионизацию, теперь нужно написать код, но искать некоторые указатели, пожалуйста?

Однако, поскольку я очень и очень к этому отношусь но мои исследования полагаются на этот модуль, я надеюсь, что некоторые добрые души могут дать мне несколько указателей/рекомендаций.

Я создал легкую часть дизайна формы;

http://s2.postimg.org/ppyvvx9q1/mod_vb_design.jpg

Теперь мне нужно написать функцию для оценки Modular Экспоненты, используя ниже, однако гипотетический пользователь должен иметь возможность выбрать любую цифру «власть», даже если бы они были, чтобы выбрать номер мощности выше для ниже примера 1-4.

NextPow = 1  Solution = 13 * 1 mod 53 = 13 
NextPow = 2  Solution = 13 * 13 mod 53 = 10 
NextPow = 3  Solution = 13 * 10 mod 53 = 24 
NextPow = 4  Solution = 13 * 24 mod 53 = 47 

Я немного потерял, и надеясь, что кто-то может предложить мне некоторые рекомендации, я смотрел так много видео и исследовал, что многие сайты R.E. modulo, но я думаю, что я просто смутил себя.

Если у вас есть какой-либо другой аспект вышеизложенного, который неправильно объясняется мной в вашем уме, то, пожалуйста, не стесняйтесь, дайте мне знать, и я попробую уточнить.

+0

ли база всегда 13? – KSFT

+0

Привет, KSFT, спасибо, что ответ получил высокую оценку. В этом конкретном случае это всегда 13. – PhoenixUK

+0

Вам нужно использовать эффективный модульный метод возведения в степень или вы можете просто вычислить результат возведения в степень, а затем взять его по модулю другого числа? – KSFT

ответ

0

В VB, ^ оператор возведения в степень (https://msdn.microsoft.com/en-us/library/zh100ckf.aspx) и Mod оператор по модулю (https://msdn.microsoft.com/en-us/library/se0w9esz.aspx), так что вы должны быть в состоянии просто сделать что-то вроде этого:

Solution = 13^exponent Mod modulo 
+0

KSFT, хорошо, так что теперь у меня это сузилось до вашего решения, могу ли я спросить, в какой части моей формы я помещаю это, чтобы затем ввести выбранную «Enter Power» и вывести в текстовое поле Divisor и Calculate the Remainder, наконец, положив результаты в список? * в соответствии с связанным изображением моей формы * Спасибо – PhoenixUK

+0

Я не знаю, как использовать формы в VB (или действительно что-нибудь в VB), но вы должны получить ввод, калибровать результат (ы) и вывести его.Вы должны поместить этот код в метод/функцию/процедуру события/все, что вызывается при нажатии кнопки. – KSFT

+0

@PhoenixUK Упс, я забыл использовать «@PhoenixUK» в этом последнем комментарии. Работает ли мой ответ? – KSFT