الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

خطأ في العمليات الحسابية بسبب الكسور

مغلق
بدأه zeidan في 17 ديسمبر 2003 · 5 رد · 946 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اخواني الكرام وفقهم الله

لدي برنامج رواتب ولكن برزت لي مشكلة مفادها انه عند اتمام عملية الضرف والقسمة بينن الحقول فبسبب الخانات العديدة بعد الفاصلة يكون الناتج خاطئا بفرق هلل مثال:

معلم استحقاقه عن الحصة الواحدة 72.597222222 هكذا مثلا تظهر بعد قسمة نصف راتبه على عدد الحصص الفعلية وعند التقريب في التقرير يصبح استحقاقه عن الحصة 72.60 فعند ضرب استحقاقه عن الحصة بعدد حصص البالغ 23 حصة يجب ان يكون الناتج 1669.8 في حين يظهر لي في التقرير هكذا 1669.73 على اعتبار اصل الناتج وهو 72.597222222222 .

فالمطلوب بارك الله فيكم امر التقريب الى خانتين فقط دون اعتبار للخانة الثالثة اي عندما اعطي امر في التقرير او الاستعلام للمثال السابق يكون استحقاق المعلم عن الحصة 72.59 فقط ولا يعتبر السبعة التي بعد التسعة ليزيد 1 لان ذلك يترتب عليه امو ر كثيرة وهو سكون بنا ء عليه خطأ في المجموع النهائي

شاكرا لكل من يقوم بالردسلفا

#2

أخي الكريم ،،،، تحية طيبة وبعد ،،،، إذهب إلى هذه الحقول الرقمية طبعا وغير في خصائصها التالية :

خاصية ( حجم الحقل ) : غيرها إلى ( مزدوج )

خاصية ( تنسيق ) : غيرها إلى ( ثابت )

خاصية ( المنازل العشرية ) : غيرها إلى ( 2 )

غير ذلك في الجداول و في النموذج أيضا ,,,, وسوف يتم العرض كما تريد أن شاء الله تعالى

في حال أنك تريد منزلة عشرية واحدة فقط قم بوضع الرقم ( 1 ) في خاصية ( المنازل العشرية ) ....

شاكر الزين

المسلم من سلم الناس من لسانه ويده

#3

السلام عليكم

و بإمكانك استخدام وظيفة ROUND لتحصل على عدد الخانات العشريه المطلوبه بالظبط .

وشكرا لخبيرنا شاكر الزين لتفضله بالرد على هذه المشاركه .

صورة
صورة

حسابي في الفيس بوك
http://goo.gl/XIzwL

حسابي في تويتر
http://goo.gl/6p4e3

 

 
 
#4

شكرا اخواني الكرام

بالنسبة للحل الأول وهو ثابت ومزدوج لم تفلح العملية لانني احصل على خانتين ولكن اريد الخانات كما هي دون جبر اي دون النظر الا الخانة الثالثة فمثلا اذا الرقم 72.597666666666 فان الناتج يكون 72.60 ولكنني اريده 72.59 علما بان كل العمليات الحسابية التي اتعامل معها في استعلامات وليست في الجداول والجداول الرئيسية تحوي البيانات الاساسية .

اما بالنسبة لرد الاخ فيصل الحربي فلو تكرمت اخي شرح كيفية الاستفادة من rouns حيث لم يسبق لي وتعاملت مع الدالات.

شاكرا لكما وسدد الله خطاكما

#5

اخي العزيز

اذا افترضنا ان الرقم الاصلي اسمه num1 والنتيجة التي تريدها اسمها num2 وتريد إظهارها في الاستعلام كما قلت أكتب مايلي:

num2:Int([num1])+left([num1]-Int([num1]);4)

وستحصل على النتيجة كما تريد إن شاء الله...مع تحياتي

#6

شكرا اخي الكريم منتصر

اين اكتب السطر الذي ارسلته وهل بالامكان ارسال مثال على ذلك مع الشكر الجزيل

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…