- 注册时间
- 2008-6-15
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 361
- 在线时间
- 小时
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?欢迎注册
×
下面程序是求下一个素数的程序,经验证,成功运行。但是有2个问题:
一:红色部分如果写成hugePrime=100000000000000000000000000000000000000000000000000000000就编辑不过,如何解决?
二:用hugePrime.DecLShift( 99 );来实现程序,结果会有<HugeCalc>的字符串插入,能否去掉?
#include <iostream.h>
#include <string.h>//可以使用string类型
#include "../../../HugeCalc_API/CppAPI/Include/HugeCalc.h" // 公共接口
#include "../../../HugeCalc_API/CppAPI/Include/HugeInt.h" // 10进制系统
#include "../../../HugeCalc_API/CppAPI/Include/HugeIntX.h" // 16进制系统
#pragma message( "automatic link to ../../../HugeCalc_API/CppAPI/Lib/HugeCalc.lib" )
#pragma comment( lib, "../../../HugeCalc_API/CppAPI/Lib/HugeCalc.lib" )
#if 1
#define _Test_HI
#define integer CHugeInt
#else
#define _Test_HX
#define integer CHugeIntX
#endif
//以上是一部分预处理程序
int main(int argc, char* argv[])
{
int i;
char c;//准备存取最后1位
cout << endl << "下面将生成前 100 个百位素数(十进制下)。。。" << endl << endl;
system( "pause" );//屏幕显示“按任何键继续”
cout << endl;
CHugeInt hugePrime((UINT32) 1 );
hugePrime=10000;//设初值
// hugePrime.DecLShift( 5 ); // 6位数
//下面是输出1000个素数
/* for ( UINT32 i=0; i<1000; ++i )
{
cout << (LPCTSTR)hugePrime.NextPrime( hugePrime )<<endl ;
}*/
//下面是输出下1个素数
// cout << (LPCTSTR)hugePrime.NextPrime( hugePrime )<<endl ;
cout << (LPCTSTR)hugePrime.NextPrime(hugePrime)<<endl ;
//判断素数的长度 cout<<strlen(hugePrime)<<endl;
//以下是对结果的简单处理
/* i=strlen(hugePrime);
cout <<i<< endl;
c=hugePrime[i-1];
cout <<c<< endl;
cout << endl;*/
return 0;
} |
|