📄 code.cpp
字号:
/******************************************
* *
* 本程序主要实现模幂算法 *
* 作者:05软件三班 陈海鑫 *
* *
* *
******************************************/
#include "iostream.h"
#include "math.h"
#include "time.h"
#include "Windows.h"
//int iBgn;
void main()
{ int iBgn;
int a,num=0,n;
cout<<"底数: a=";
cin>>a;
cout<<"指数: m=";
cin>>num;
cout<<"模数: n(n不能为0,否则会出错)=";
cin>>n;
// cout<<"输入一个十进制数:";
// cout<<"转化为2进制后为:"<<endl;
int elem[1000];
for(int i=0;i<=1000;i++)
{
elem[i]=(num%2);
num=(int)(num/2);
if(num<1)
{
break;
}
else continue;
}
for(int j=i;j>=0;j--)
{
// cout<<elem[j];
elem[j]=pow(a,elem[j]);
}
int temp=1;
int temp0;
for(int t=i;t>=0;t--)
{
temp=pow(temp,2)*elem[t];
temp=temp%n;
}
cout<<"结果为:"<<temp<<endl;
/*
int t=6;
t=pow(6,2);
cout<<t;
*/
iBgn=GetTickCount();
cout<<"执行时间为"<<iBgn<<"微妙"<<endl;
}
// iBgn=GetTickCount();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -