91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-14
  • 語言: C/C++
  • 標(biāo)簽: C++??大整數(shù)??bigint??

資源簡介

自定義的C++有符號大整數(shù)類型bigint

資源截圖

代碼片段和文件信息

#include?“bigint.h“
using?namespace?std;

//////////////////////////////////////////////////////////////
void?bigint::format()
{
????int?len?=?strlen(arr);
????arr[len]?=?0;
????for(int?i=len-1;?i>0;?i--){
????????arr[MAX_LEN-len+i]?=?arr[i]-48;?//?數(shù)字字符轉(zhuǎn)轉(zhuǎn)為數(shù)值?
????????arr[i]?=?0;
????}??
????if(arr[0]==‘-‘)?arr[0]?=?1;
????else?if(arr[0]==‘+‘)?arr[0]?=?0;
????else{
????????arr[MAX_LEN-len]?=?arr[0]-48;
????????arr[0]?=?0;
????}
}

bigint::bigint(int?a)
{
????bzero();
????itoa(a?arr?10);????
????format();
}

bigint::bigint(const?char?*str)
{
????bzero();
????const?char?*c?=?str;
????char?*p?=?arr;
????if(*c?==?‘+‘?||?*c?==?‘-‘)
????????*p++?=?*c++;
????while(*c)
????{
????????if(*c>=‘0‘?&&?*c<=‘9‘)
????????????*p++?=?*c++;
????????else?break;
????}
????*p?=?‘\0‘;
????format();
}

bigint::bigint(const?bigint?&obj)
{
????for(int?i=0;?i????????arr[i]?=?obj.arr[i];
}

bigint&?bigint::operator=(const?bigint?&obj)
{
????if(this?==?&obj)?return?*this;
????for(int?i=0;?i????????arr[i]?=?obj.arr[i];
????return?*this;
}

//////////////////////////////////////////////////////////////////////
bigint&?bigint::operator++()
{
????int?jw?len?=?length();
????if(arr[0]?==?0){????????
????????for(int?i=MAX_LEN-1;?i>MAX_LEN-len-2;?i--)
????????{
????????????++arr[i];
????????????if(arr[i]>9)
????????????????arr[i]?=?arr[i]?%?10;
????????????else?break;
????????}
????}
????else{
????????for(int?i=MAX_LEN-1;?i>MAX_LEN-len-2;?i--)
????????{
????????????--arr[i];
????????????if(arr[i]>9)
????????????????arr[i]?=?arr[i]?%?10;
????????????else?break;
????????}
????}
????return?*this;????
}

bigint?bigint::operator++(int)
{
????bigint?ret(*this);
????++*this;
????return?ret;
}
bigint&?bigint::operator--()
{
????int?jw?len?=?length();
????if(arr[0]?==?0){????????
????????for(int?i=MAX_LEN-1;?i>MAX_LEN-len-2;?i--)
????????{
????????????--arr[i];
????????????if(arr[i]>9)
????????????????arr[i]?=?arr[i]?%?10;
????????????else?break;
????????}
????}
????else{
????????for(int?i=MAX_LEN-1;?i>MAX_LEN-len-2;?i--)
????????{
????????????++arr[i];
????????????if(arr[i]>9)
????????????????arr[i]?=?arr[i]?%?10;
????????????else?break;
????????}
????}
????return?*this;?
}

bigint?bigint::operator--(int)
{
????bigint?ret(*this);
????--*this;
????return?ret;
}

bigint?bigint::operator-()?const
{
????bigint?ret?=?*this;
????ret.arr[0]?=?1-ret.arr[0];
????return?ret;????
}

bigint?bigint::abs()?const
{
????bigint?ret?=?*this;
????ret.arr[0]?=?0;
????return?ret;????
}
///////////////////////////////////////////////////////////////////
bool?bigint::absbigger(const?bigint?&obj)?const
{
????for(int?i=1;?i????????if(arr[i]?>?obj.arr[i])
????????????return?true;
????????else?if(arr[i]?????????????return?false;
????}
????return?false;
}?
bool?bigint::abssmaller(const?bigint?&obj)?const
{
????fo

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-03-23?15:05??bigint\
?????文件????????5464??2012-03-23?14:56??bigint\bigint.cpp
?????文件????????2395??2012-03-23?14:48??bigint\bigint.h
?????文件????????2901??2012-03-23?14:44??bigint\bigint_operator.cpp
?????文件????????3923??2012-03-23?14:52??bigint\main.cpp
?????文件??????????80??2012-03-23?15:07??bigint\readme.txt

評論

共有 條評論