本文整理汇总了C++中Rational::toString方法的典型用法代码示例。如果您正苦于以下问题:C++ Rational::toString方法的具体用法?C++ Rational::toString怎么用?C++ Rational::toString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Rational
的用法示例。
在下文中一共展示了Rational::toString方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: printRational
void TheoryArith::printRational(ExprStream& os, const Rational& r,
bool printAsReal)
{
// Print rational
if (r.isInteger()) {
if (r < 0) {
if (os.lang() == SPASS_LANG) {
os << "-" << (-r).toString();
if (printAsReal) os << ".0";
} else {
os << "(" << push;
if (os.lang() == SMTLIB_LANG) {
os << "~";
}
else {
os << "-";
}
os << space << (-r).toString();
if (printAsReal) os << ".0";
os << push << ")";
}
}
else {
os << r.toString();
if (printAsReal) os << ".0";
}
}
else {
os << "(" << push << "/ ";
Rational tmp = r.getNumerator();
if (tmp < 0) {
if (os.lang() == SPASS_LANG) {
os << "-" << (-tmp).toString();
if (printAsReal) os << ".0";
} else {
os << "(" << push;
if (os.lang() == SMTLIB_LANG) {
os << "~";
}
else {
os << "-";
}
os << space << (-tmp).toString();
if (printAsReal) os << ".0";
os << push << ")";
}
}
else {
os << tmp.toString();
if (printAsReal) os << ".0";
}
os << space;
tmp = r.getDenominator();
DebugAssert(tmp > 0 && tmp.isInteger(), "Unexpected rational denominator");
os << tmp.toString();
if (printAsReal) os << ".0";
os << push << ")";
}
}
示例2: checkInt
static void checkInt(const Rational& n, const string& funName) {
DebugAssert(n.isInteger(),
("CVC3::Rational::" + funName
+ ": argument is not an integer: " + n.toString()).c_str());
}