亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rr.h

?? 一個比較通用的大數運算庫
?? H
?? 第 1 頁 / 共 2 頁
字號:
#ifndef NTL_RR__H
#define NTL_RR__H

#include <NTL/ZZ.h>
#include <NTL/xdouble.h>
#include <NTL/quad_float.h>

NTL_OPEN_NNS


class RR {

public:

ZZ x;
long e;

RR() {  e = 0; }

inline RR(INIT_VAL_TYPE, const ZZ& a);
inline RR(INIT_VAL_TYPE, int a);
inline RR(INIT_VAL_TYPE, long a);
inline RR(INIT_VAL_TYPE, unsigned int a);
inline RR(INIT_VAL_TYPE, unsigned long a);
inline RR(INIT_VAL_TYPE, float a);
inline RR(INIT_VAL_TYPE, double a);
inline RR(INIT_VAL_TYPE, const xdouble& a);
inline RR(INIT_VAL_TYPE, const quad_float& a);
inline RR(INIT_VAL_TYPE, const char *a);  // read from string
inline RR(INIT_VAL_TYPE, const RR& a);


inline RR& operator=(double a);

RR(RR& z, INIT_TRANS_TYPE) : x(z.x, INIT_TRANS), e(z.e) { } 





~RR() { }

const ZZ& mantissa() const { return x; }
long exponent() const { return e; }

static long prec;
static void SetPrecision(long p);
static long precision() { return prec; }

static long oprec;
static void SetOutputPrecision(long p);
static long OutputPrecision() { return oprec; }

#ifdef NTL_TRANSITION
private:
RR& operator=(const RR&);
RR(const RR&);
#endif

};


long IsZero(const RR& a);
long IsOne(const RR& a);
long sign(const RR& a);
void clear(RR& z);
void set(RR& z);
void swap(RR& a, RR& b);

void add(RR& z, const RR& a, const RR& b);

void add(RR& z, const RR& a, double b);
inline void add(RR& z, double a, const RR& b) { add(z, b, a); }



void sub(RR& z, const RR& a, const RR& b);

void sub(RR& z, const RR& a, double b);
void sub(RR& z, double a, const RR& b);

void negate(RR& z, const RR& a);

void abs(RR& z, const RR& a);
inline RR abs(const RR& a)
   { RR z; abs(z, a); NTL_OPT_RETURN(RR, z); }
inline RR fabs(const RR& a)
   { RR z; abs(z, a); NTL_OPT_RETURN(RR, z); }

void mul(RR& z, const RR& a, const RR& b);

void mul(RR& z, const RR& a, double b);
inline void mul(RR& z, double a, const RR& b) { mul(z, b, a); }

void sqr(RR& z, const RR& a);
inline RR sqr(const RR& a)
   { RR z; sqr(z, a); NTL_OPT_RETURN(RR, z); }

void div(RR& z, const RR& a, const RR& b);

void div(RR& z, const RR& a, double b);
void div(RR& z, double a, const RR& b);

void inv(RR& z, const RR& a);
inline RR inv(const RR& a)
   { RR z; inv(z, a); NTL_OPT_RETURN(RR, z); }

// operator notation:

inline RR operator+(const RR& a, const RR& b)
   { RR x; add(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR operator+(const RR& a, double b)
   { RR x; add(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR operator+(double a, const RR& b)
   { RR x; add(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR& operator+=(RR& x, const RR& b)
   { add(x, x, b); return x; } 

inline RR& operator+=(RR& x, double b)
   { add(x, x, b); return x; } 



inline RR operator-(const RR& a, const RR& b)
   { RR x; sub(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR operator-(const RR& a, double b)
   { RR x; sub(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR operator-(double a, const RR& b)
   { RR x; sub(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR& operator-=(RR& x, const RR& b)
   { sub(x, x, b); return x; } 

inline RR& operator-=(RR& x, double b)
   { sub(x, x, b); return x; } 



inline RR operator*(const RR& a, const RR& b)
   { RR x; mul(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR operator*(const RR& a, double b)
   { RR x; mul(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR operator*(double a, const RR& b)
   { RR x; mul(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR& operator*=(RR& x, const RR& b)
   { mul(x, x, b); return x; } 

inline RR& operator*=(RR& x, double b)
   { mul(x, x, b); return x; } 


inline RR operator/(const RR& a, const RR& b)
   { RR x; div(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR operator/(const RR& a, double b)
   { RR x; div(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR operator/(double a, const RR& b)
   { RR x; div(x, a, b); NTL_OPT_RETURN(RR, x); }

inline RR& operator/=(RR& x, const RR& b)
   { div(x, x, b); return x; } 

inline RR& operator/=(RR& x, double b)
   { div(x, x, b); return x; } 


inline RR operator-(const RR& a)
   { RR x; negate(x, a); NTL_OPT_RETURN(RR, x); }


inline RR& operator++(RR& x) { add(x, x, 1); return x; }
inline void operator++(RR& x, int) { add(x, x, 1); }
inline RR& operator--(RR& x) { sub(x, x, 1); return x; }
inline void operator--(RR& x, int) { sub(x, x, 1); }



long compare(const RR& a, const RR& b);

long compare(const RR& a, double b);
inline long compare(double a, const RR& b) { return -compare(b, a); }


long operator==(const RR& a, const RR& b);
inline long operator!=(const RR& a, const RR& b) { return !(a == b); }
inline long operator<=(const RR& a, const RR& b) { return compare(a, b) <= 0; }
inline long operator>=(const RR& a, const RR& b) { return compare(a, b) >= 0; }
inline long operator <(const RR& a, const RR& b) { return compare(a, b)  < 0; }
inline long operator >(const RR& a, const RR& b) { return compare(a, b)  > 0; }

long operator==(const RR& a, double b);
inline long operator!=(const RR& a, double b) { return !(a == b); }
inline long operator<=(const RR& a, double b) { return compare(a, b) <= 0; }
inline long operator>=(const RR& a, double b) { return compare(a, b) >= 0; }
inline long operator <(const RR& a, double b) { return compare(a, b)  < 0; }
inline long operator >(const RR& a, double b) { return compare(a, b)  > 0; }

inline long operator==(double a, const RR& b) { return (b == a); }
inline long operator!=(double a, const RR& b) { return !(a == b); }
inline long operator<=(double a, const RR& b) { return compare(a, b) <= 0; }
inline long operator>=(double a, const RR& b) { return compare(a, b) >= 0; }
inline long operator <(double a, const RR& b) { return compare(a, b)  < 0; }
inline long operator >(double a, const RR& b) { return compare(a, b)  > 0; }

void ceil(RR& z, const RR& a);
inline RR ceil(const RR& a)
   { RR z; ceil(z, a); NTL_OPT_RETURN(RR, z); }

void floor(RR& z, const RR& a);
inline RR floor(const RR& a)
   { RR z; floor(z, a); NTL_OPT_RETURN(RR, z); }

void trunc(RR& z, const RR& a);
inline RR trunc(const RR& a)
   { RR z; trunc(z, a); NTL_OPT_RETURN(RR, z); }

void round(RR& z, const RR& a);
inline RR round(const RR& a)
   { RR z; round(z, a); NTL_OPT_RETURN(RR, z); }

void RoundToPrecision(RR& z, const RR& a, long p);
inline RR RoundToPrecision(const RR& a, long p)
   { RR z; RoundToPrecision(z, a, p); NTL_OPT_RETURN(RR, z); }


// routines with a precision parameter

void ConvPrec(RR& z, const RR& a, long p);
inline RR ConvPrec(const RR& a, long p)
   { RR z; ConvPrec(z, a, p); NTL_OPT_RETURN(RR, z); }

void AddPrec(RR& z, const RR& a, const RR& b, long p);
inline RR AddPrec(const RR& a, const RR& b, long p)
   { RR z; AddPrec(z, a, b, p); NTL_OPT_RETURN(RR, z); }

void SubPrec(RR& z, const RR& a, const RR& b, long p);
inline RR SubPrec(const RR& a, const RR& b, long p)
   { RR z; SubPrec(z, a, b, p); NTL_OPT_RETURN(RR, z); }

void NegatePrec(RR& z, const RR& a, long p);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产美国国产综合一区二区| 久久欧美一区二区| 岛国精品在线观看| 美女爽到高潮91| 久久精品国产**网站演员| 日本女人一区二区三区| 日本成人中文字幕在线视频| 五月天一区二区三区| 亚洲成av人影院| 日韩电影在线一区二区三区| 全国精品久久少妇| 国产精品一二三在| 成人久久18免费网站麻豆| 成人黄色小视频| 懂色av一区二区三区蜜臀| 国产白丝精品91爽爽久久| 不卡在线观看av| 91论坛在线播放| 欧美丰满嫩嫩电影| 欧美www视频| 国产午夜亚洲精品羞羞网站| 国产日韩欧美麻豆| 中文字幕一区视频| 日韩国产精品久久久久久亚洲| 久久爱另类一区二区小说| 成人做爰69片免费看网站| 色综合天天综合网天天狠天天| 欧美日韩一二区| 精品女同一区二区| 亚洲色图一区二区三区| 日本sm残虐另类| 国产99久久久久| 欧美在线观看一区| 久久婷婷久久一区二区三区| 亚洲精品免费一二三区| 轻轻草成人在线| 91网站视频在线观看| 88在线观看91蜜桃国自产| 国产精品视频yy9299一区| 五月婷婷久久综合| 成人黄色国产精品网站大全在线免费观看 | 91精品福利视频| 精品久久久久久久久久久久包黑料| 国产三级精品在线| 日韩**一区毛片| 色婷婷综合久久久久中文一区二区| 日韩精品一区二区三区在线观看 | 日韩二区三区四区| 成人亚洲一区二区一| 精品污污网站免费看| 国产视频一区二区在线| 日韩高清电影一区| 色又黄又爽网站www久久| 国产色产综合色产在线视频| 蜜桃一区二区三区四区| 色综合天天综合狠狠| 国产日韩在线不卡| 另类小说色综合网站| 欧美精品久久天天躁| 免费人成精品欧美精品| 91香蕉视频污| 丁香五精品蜜臀久久久久99网站 | 国产成人免费在线视频| 日韩欧美国产综合在线一区二区三区| 亚洲精品视频观看| 972aa.com艺术欧美| 国产精品视频看| 国产 日韩 欧美大片| 久久久精品欧美丰满| 国产麻豆午夜三级精品| 日韩欧美一区中文| 日韩精品乱码免费| 欧美色涩在线第一页| 亚洲国产人成综合网站| 欧美日韩精品是欧美日韩精品| 亚洲精品视频一区二区| 欧美亚洲综合色| 天天综合色天天综合色h| 欧美日韩国产另类一区| 日韩高清国产一区在线| 欧美一区三区二区| 捆绑紧缚一区二区三区视频| 精品久久久久久久久久久久久久久久久 | 亚洲成人av资源| 91精品国产全国免费观看 | 中文字幕一区二区三区av| 成人app在线| 亚洲午夜久久久久久久久电影网| 91久久精品一区二区三区| 夜夜夜精品看看| 日韩一区二区电影| 国产伦精品一区二区三区免费迷| 国产亚洲人成网站| 91捆绑美女网站| 亚洲福利视频一区二区| 日韩欧美国产wwwww| 国产一区二区成人久久免费影院 | 亚洲天堂中文字幕| 欧美日韩视频专区在线播放| 日本aⅴ免费视频一区二区三区 | 亚洲欧美国产三级| 91精品国产综合久久久久久久久久 | 亚洲一区二区三区三| 在线观看91av| 国产伦精品一区二区三区在线观看| 中文字幕一区二区三区在线播放| 欧美日免费三级在线| 极品少妇xxxx偷拍精品少妇| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 欧美色精品在线视频| 久草这里只有精品视频| 亚洲丝袜自拍清纯另类| 日韩欧美另类在线| 在线精品视频免费播放| 国产一区二区三区综合| 亚洲综合色噜噜狠狠| 久久亚洲精华国产精华液 | 亚洲欧洲日韩综合一区二区| 678五月天丁香亚洲综合网| 成人免费视频app| 日韩av一区二| 亚洲一区在线观看视频| 日本一区二区高清| 精品国产第一区二区三区观看体验| 成人avav影音| 国产精品白丝jk黑袜喷水| 偷拍一区二区三区四区| 亚洲色图清纯唯美| 欧美极品美女视频| 精品成人一区二区| 日韩欧美久久久| 欧美日韩亚洲综合一区二区三区| 不卡av电影在线播放| 国产裸体歌舞团一区二区| 免费观看日韩电影| 午夜亚洲福利老司机| 亚洲精品国产第一综合99久久 | 国产成人av一区二区三区在线观看| 亚洲国产人成综合网站| 亚洲精品少妇30p| 亚洲欧洲成人av每日更新| 久久久精品欧美丰满| 精品国产乱码久久久久久免费| 91精品国产入口| 91精品国产综合久久久久久久| 欧美日韩一区 二区 三区 久久精品| 91丨porny丨中文| 972aa.com艺术欧美| 91丨porny丨首页| 99re免费视频精品全部| 99久久精品费精品国产一区二区| 国产91清纯白嫩初高中在线观看 | 东方aⅴ免费观看久久av| 国产一区二区三区四区五区入口| 青青草精品视频| 麻豆国产精品一区二区三区 | 精品少妇一区二区| www日韩大片| 久久美女高清视频| 欧美激情一区三区| 亚洲人亚洲人成电影网站色| 成人欧美一区二区三区白人 | 国产精品久线观看视频| 国产精品久久久久久久久免费桃花 | 18涩涩午夜精品.www| 中文字幕一区二区三区视频| 亚洲另类一区二区| 日韩国产精品大片| 精品无人码麻豆乱码1区2区| 国产大片一区二区| 日本乱码高清不卡字幕| 91精品国产91久久久久久最新毛片| 91精品国产福利| 国产欧美一区二区精品忘忧草 | 99视频国产精品| 欧美色图激情小说| 精品久久久久久无| 中文字幕在线观看一区二区| 亚洲图片欧美一区| 久久国产精品无码网站| 粉嫩嫩av羞羞动漫久久久| 欧美做爰猛烈大尺度电影无法无天| 日韩视频一区在线观看| 国产精品美女久久久久久久| 亚洲高清视频的网址| 国产精品一区一区三区| 一本到不卡精品视频在线观看 | 国产精品女主播在线观看| 亚洲伦理在线精品| 久久99久久99精品免视看婷婷| 国产激情一区二区三区| 欧美日韩一区二区三区四区 | 日韩视频在线一区二区| 国产精品妹子av| 蜜桃av噜噜一区二区三区小说| 成人免费三级在线| 日韩精品在线网站| 午夜伊人狠狠久久| 99久久精品免费看国产免费软件| 日韩一级高清毛片|