⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sl_1.cpp

📁 超长整数类及演示程序
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "sl_1.h"
#include "slnum.cpp"

//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
slnum a,b,c;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

//---------------从string类中取出字符串转换为VC++的char * 类型-------------------------------
char * strtoa(String ss)
{
     char *sa;
     sa=new char[strlen(ss.c_str())+1];
     strcpy(sa,ss.c_str() );
     return sa;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Label3->Caption="c=a+b  的运算结果如下:";
c=a+b;
Memo1->Lines->Text= c.getval() ;
char *s;
s=new char[strlen(c.soure )+1];
Label3->Caption =Label3->Caption+"  (数据为" +ltoa(strlen(c.soure ),s,10)+"位)";
delete s;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit1Exit(TObject *Sender)
{
Label1->Caption="数值a  ";
char *s;
a.setval(strtoa(Edit1->Text) );
s=new char[strlen(a.soure )+1];
Label1->Caption =Label1->Caption+" (数据为" + ltoa(strlen(a.soure ),s,10)+"位)";
delete s;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit2Exit(TObject *Sender)
{
Label2->Caption="数值b  ";
char *s;
b.setval(strtoa(Edit2->Text) );
s=new char[strlen(b.soure )+1];
Label2->Caption =Label2->Caption+"  (数据为" +ltoa(strlen(b.soure ),s,10)+"位)";
delete s;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Label3->Caption="c=a-b  的运算结果如下:";
c=a-b;
Memo1->Lines->Text= c.getval() ;
char *s;
s=new char[strlen(c.soure )+1];
Label3->Caption =Label3->Caption+"  (数据为" +ltoa(strlen(c.soure ),s,10)+"位)";
delete s;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
Label3->Caption="c=a*b  的运算结果如下:";
c=a*b;
Memo1->Lines->Text= c.getval() ;
char *s;
s=new char[strlen(c.soure )+1];
Label3->Caption =Label3->Caption+"  (数据为" +ltoa(strlen(c.soure ),s,10)+"位)";
delete s;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button5Click(TObject *Sender)
{
Label3->Caption="c=a/b  的整除运算结果如下:";
c=a/b;
Memo1->Lines->Text= c.getval() ;
char *s;
s=new char[strlen(c.soure )+1];
Label3->Caption =Label3->Caption+"  (数据为" +ltoa(strlen(c.soure ),s,10)+"位)";
delete s;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Label3->Caption="c=a%b  的运算结果如下:";
c=a%b;
Memo1->Lines->Text= c.getval() ;
char *s;
s=new char[strlen(c.soure )+1];
Label3->Caption =Label3->Caption+"  (数据为" +ltoa(strlen(c.soure ),s,10)+"位)";
delete s;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button6Click(TObject *Sender)
{
Label3->Caption=Edit1->Text +"!  阶乘的运算结果如下:";
c=1; int i=1;
int N;
N= atol(a.soure);
for(i=1;i<=N;i++)c=c*i;
Memo1->Lines->Text= c.getval() ;
char *s;
s=new char[strlen(c.soure )+1];
Label3->Caption =Label3->Caption+"(数据为" +ltoa(strlen(c.soure ),s,10)+"位)";
delete s;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button7Click(TObject *Sender)
{
exit(0);
}

void __fastcall TForm1::Button8Click(TObject *Sender)
{
Label3->Caption="a^b的运算结果如下:";
c=1; int i=1;
int N;
N= atol(b.soure);
for(i=1;i<=N;i++)c=c*a;
Memo1->Lines->Text= c.getval() ;
char *s;
s=new char[strlen(c.soure )+1];
Label3->Caption =Label3->Caption+"(数据为" +ltoa(strlen(c.soure ),s,10)+"位)";
delete s;

}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -