السلام عليكم ورحمة الله وبركاته ...
أخواني سؤالي هو هل باقي القسمة خاصة فقط باالاعداد الصحيحة intget أو يمكن أنت يكون الخرج حقيقي float .....
لاني حاولة إعادة توصيف المعامل % في class فإذا كان الاعداد صحيحة قبل البرنامج وعمل على مايرام واذا كان الخرج حقيقي يظهر عندي خطأن وهو يطالب بأن الطرف الايسر float فما هو العمل ...
هذا هو الرنامج مع ملاحظة اذا الغيت التعليقات سيكون البرنامج صحيح واذا لم تلغها ستظهر المشكلة التي اريد حلها ...ز
#include
//operator%
//ÅÚÇÏÉ ÊæÕíÝ ãÚÇãá ÈÇÞí ÇáÞÓãÉ
class Counter
{
public:
Counter ():X(0) { }
Counter( float x /*int x*/){ X=x; }
~Counter ( ) { }
void SetX(/*int x*/ float x) { X = x; }
// int GetX () const { return X; }
Counter operator% (const Counter & );
float GetX() const { return X; }
private:
// int X;
float X;
};
Counter Counter::operator% (const Counter &rhs)
{
return ( X % rhs.GetX() );
}
int main()
{
Counter C1,C2,C3;
//int x,y;
float x,y;
cout<<"n Enter Tow number : ";
cin >> x >> y;
C1.SetX(x);
C2.SetX(y);
C3 = C1 % C2;
cout << "n" << x << " % " << y << " = " << C3.GetX() << "n";
return 0;
}