📄 getremainder.java
字号:
import java.io.*;
public class GetRemainder
{
static long result;
public static void main(String args[])
{
String input="";
long dishu,zhishu,model;
try{
BufferedReader in=new BufferedReader(
new InputStreamReader(System.in) );
System.out.println("请输入底数:");
input=in.readLine();
dishu=Integer.parseInt(input);
System.out.println("请输入指数:");
input=in.readLine();
zhishu=Integer.parseInt(input);
System.out.println("请输入模:");
input=in.readLine();
model=Integer.parseInt(input);
result=get_remainder(dishu,zhishu,model);
System.out.println();
System.out.println(dishu+" 的 "+zhishu+" 次方对 "+model+" 求余所得的结果为: "+result);
}catch (IOException e){System.out.println(e);}
}
public static long get_remainder(long dishu,long zhishu,long model)
{
System.out.println("运算过程如下:");
result=1;
String string_zhishu="";
Long long_zhishu=new Long(zhishu);
string_zhishu=long_zhishu.toBinaryString(zhishu);
int length=string_zhishu.length();
for(int i=0;i<length;i++)
{
if(string_zhishu.charAt(i)=='1')
{
System.out.print("1: ( "+result+" * "+result+" )* "+dishu+" mod( "+model+" )= ");
result=(result*result*dishu)%model;
System.out.println(result);
// System.out.println();
}
else
{
System.out.print("0: ( "+result+" * "+result+" ) "+" mod "+model+" = ");
result=(result*result)%model;
System.out.println(result);
//System.out.println();
}
}
return result;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -