السلام عليكم
تحية طيبة
كيف يكمن كتابة الكسور الاعتيادية (غير العشرية) في ++c على صيغة بسط على مقام ويكون الناتج بسط ومقام أيضا.!!
السلام عليكم
تحية طيبة
كيف يكمن كتابة الكسور الاعتيادية (غير العشرية) في ++c على صيغة بسط على مقام ويكون الناتج بسط ومقام أيضا.!!
يمكنك استخدام مكتبة Boost.Rational للقيام بهذا الأمر:
#include <iostream>
#include <boost/rational.hpp>
using namespace std;
using namespace boost;
int main()
{
typedef boost::rational<long> fraction_t;
// f1 = 1/10, f2 = 2/3;
fraction_t f1(1, 10), f2(2, 3), f3;
std::cin >> f3; // enter 1/5
std::cout << f1*f2*f3; // 1/75
}تحياتي...
تم تعديل هذه المشاركة بواسطة Khaled.Alshaya في 9 ديسمبر 2010 في 11:28
اشكرك اخي الكريم على الرد السريع....
وجاري المحاولة ..تحياتي
أخي الكريم ..
قمت بتحميل مكتبة boost وثبتها حسب التعليمات المرفقة من موقع المكتبة وعند تطبيق البرنامج تظهر رسالة الخطأ التالية
c:\program files\boost\boost_1_45_0\boost\iterator.hpp(57) : fatal error C1903: unable to recover from previous error(s); stopping compilation
أرجو المساعدة
كيف قمت بتثبيت المكتبة؟
انظر هنا للفائدة إن كنت تستخدم Visula Studio على وندوز: قم ببناء Boost خطوة بخطوة
قمت باتباع ارشاداتك استاذي القدير وتم بناء المكتبة بنجاح وعند تطبيق البرنامج تظهر الرسالة نفسها
c:\program files\boost\boost_1_45_0\boost\iterator.hpp(57) : fatal error C1903: unable to recover from previous error(s); stopping compilation
لا أدري أين الخطأ ..علما أني أعمل على
( Microsoft Visual Studio 6.0 ( Visual C++ 6.0 ........
وآسف إذا اتعبتك معي...!!
اقتباسلا أدري أين الخطأ ..علما أني أعمل على( Microsoft Visual Studio 6.0 ( Visual C++ 6.0 ........
للأسف المترجم الملحق بـ VC6 قدييييييييييييييم جداً, ربما منذ 12 سنة! الحل هو استعمال VC2010 express في هذه الحالة. حسب موقع Boost فإنهم يدعمون المترجمات و المنصات التالية بشكل رسمي:
Compilers Tested
Boost's primary test compilers are:
*
Linux:
o
GCC: 3.4.6, 4.2.4, 4.3.4, 4.4.3, 4.4.5, 4.5.1.
o
GCC, C++0x mode: 4.3.4, 4.4.3, 4.5.0.
o
Intel: 10.1, 11.0, 11.1
o
Pathscale: 3.2.
*
OS X:
o
GCC: 4.0.1, 4.2.1, 4.4
o
GCC, C++0x mode: 4.4.
o
Intel: 11.1
*
Windows:
o
Visual C++: 7.1, 8.0, 9.0 and 10.0.
o
GCC, mingw: 4.3.3.
*
FreeBSD:
o
GCC: 4.2.1, 32 bit.
o
GCC: 4.2.1, 64 bit.
Boost's additional test compilers include:
*
Linux:
o
GCC: 3.4.6, 4.2.4, 4.3.4, 4.4.3, 4.4.5, 4.5.0, 4.6.0 (dev version).
o
GCC, C++0x mode: 4.3.4, 4.4.3, 4.5.0.
o
Intel: 10.1, 11.0, 11.1.
o
pgCC 10.1.
o
PathScale: 3.2.
o
Clang from subversion.
*
OS X:
o
Intel C++ Compiler: 10.1, 11.0, 11.1.
o
GCC: 4.0.1, 4.2.1, 4.4.4
o
GCC, C++0x mode: 4.4.4
o
Clang from subversion.
*
Windows:
o
Borland: 5.9.3, 6.1.3 (2009), 6.2.1 (2010), 6.3.0
o
GCC, mingw: 4.3.3, 4.4.5, 4.5.1
o
GCC, mingw, C++0x mode: 4.5.1
o
Visual C++: 7.1, 8.0, 9.0, 10.0
*
AIX:
o
IBM XL C/C++ Enterprise Edition, V11.1.0.0.
*
FreeBSD:
o
GCC 4.2.1, 64 bit.
*
Solaris:
o
Sun C++: 5.10.تحياتي..