Giriş
Şu satırı dahil ederiz.
Şöyle yaparız.
Örnek
Şöyle yaparız.
Şöyle yaparız.
İki sayıyı toplayıp aşağı yuvarlamak için şöyle yaparız.
Tam sayı istiyorsak stream'e std::fixed manipulator eklemek gerekir.
Örnek
Şöyle yaparız.
Şöyle yaparız.
rational_cast metodu
Örnek
Şöyle yaparız.
Şöyle yaparız.
Şu satırı dahil ederiz.
#include <boost/rational.hpp>
TanımlamaŞöyle yaparız.
using R = boost::rational<int>;
Şöyle yaparız.using R = boost::rational<int64_t>;
ConstructorÖrnek
Şöyle yaparız.
std::cout << 3 + R(5,9) << "\n";
Çıktı olarak şunu alırız.32/9
ÖrnekŞöyle yaparız.
auto val = boost::rational<int64_t>(499999, 2);
operator + metoduİki sayıyı toplayıp aşağı yuvarlamak için şöyle yaparız.
using R = boost::rational<int64_t>;
R pq = ...;
std::cout << boost::rational_cast<int64_t>(pq + R(1,2));
operator << metoduTam sayı istiyorsak stream'e std::fixed manipulator eklemek gerekir.
Örnek
Şöyle yaparız.
auto val = boost::rational<int64_t>(499999, 2);
std::cout << val << std::endl;
Çıktı olarak şunu alırız499999/2
ÖrnekŞöyle yaparız.
using R = boost::rational<int64_t>;
R pq = ...;
std::cout << pq;
Diğerrational_cast metodu
Örnek
Şöyle yaparız.
auto val = boost::rational<int64_t>(499999, 2);
std::cout << boost::rational_cast<double>(val) << std::endl;
Çıktı olarak şunu alırız.250000
ÖrnekŞöyle yaparız.
R r = ...;
auto i = boost::rational_cast<typename R::int_type>(r);
r'nin değeri 32/9 olsun. i'nin değerini yazdırırsak çıktı olarak şunu alırız. Çünkü 3 + 5/9 = 32/93
Hiç yorum yok:
Yorum Gönder