تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[vb6.0] تقريب رقم لأقرب رقم صحيح
#1
السلام عليكم

ارغب فى دالة لتقريب نتيجة عملية القسمة " الرقم العشري " للرقم الصحيح بغض النظر عن قيمته على سبيل المثال

10/5 = 2                        نتيجة التقريب ( الدالة ) تكون 2
10/3 = 3.33333             نتيجة التقريب ( الدالة ) تكون 4
10/6 = 1.66666             نتيجة التقريب ( الدالة ) تكون 42

مرفق المثال

جزاكم الله خير


الملفات المرفقة
.rar   1566.rar (الحجم : 1.22 ك ب / التحميلات : 35)
الرد }}}}
تم الشكر بواسطة:
#2
(25-01-15, 01:29 PM)aboezzat84 كتب : السلام عليكم

ارغب فى دالة لتقريب نتيجة عملية القسمة " الرقم العشري " للرقم الصحيح بغض النظر عن قيمته على سبيل المثال

10/5 = 2                        نتيجة التقريب ( الدالة ) تكون 2
10/3 = 3.33333             نتيجة التقريب ( الدالة ) تكون 4
10/6 = 1.66666             نتيجة التقريب ( الدالة ) تكون 42

مرفق المثال

جزاكم الله خير

اخي العزيز
10/5 = 2 لاتحتاج الى تقريب
10/3 =3.3333 يمكن تقريبها الى 3 وليس الى 4
اما 10/6 = 1.66666 كيف يكمن تقريبها الى 42 ؟
لن تجد دالة للتقريب بهذا الشكل ابدا!!!
او اني فهمتك خطا !!
على العموم يمكن استخدام
10\3 = 3 اي استخدم (\) بدل (/) في عملية القسمة ستعطيك رقم صحيح بدون كسور عشرية . وكما قلت سابقا فان هذه العملية تقرب الى اقرب عدد صحيح وليس كما اردت في امثلتك اعلاه .
الرد }}}}
تم الشكر بواسطة:
#3
السلام عليكم

تستعمل الدالة Math.Round للتقريب (لا اعلم ان كانت موجودة في vb6)
الرد }}}}
تم الشكر بواسطة:
#4
fix تحذف الكسور . ومن ثم نقارن لو العدد اكبر بعد حذف الكسور نقوم بزيادة واحد للرقم الموجود بالتكست بوكس .
if val(text1.text) > fix(text1.text) then text1.text = val(text1.text) + 1
الرد }}}}
تم الشكر بواسطة:
#5
كلامك صحيح ولكن ماذا نفعل لهذا المثال 10/6 = 1.66666             نتيجة التقريب ( الدالة ) تكون 42 ؟!! هل توجد دالة لعمل ذلك ؟؟افيدونا جزاكم الله خيرا
الرد }}}}
تم الشكر بواسطة:
#6
السلام عليكم
وجدت هذا السؤال في منتدى المحيط العربي ولم اعرف المقصود منه حقيقة
اخي الشاكي الى الله . . نعم موجودة . .
اتمنى ان يكون الكود الذي في المرفق هو المطلوب

.rar   Division.rar (الحجم : 1.4 ك ب / التحميلات : 69)
سأعود قريباً ان شاء الله

الرد }}}}
تم الشكر بواسطة: kasim alatwani , Ahmed_Mansoor , الشاكي لله
#7
أهلا , هذه دالة التقريب ضع العملية الحسابية بين القوسين :

كود :
Text1.Text = Round(10 / 1.66666)
الرد }}}}
تم الشكر بواسطة:
#8
السلام عليكم
اشكركم جميعا

فى البدايه اعتذر عن الخطأ فى ( 10/6 = 1.66666 نتيجة التقريب ( الدالة ) تكون 42 ) اقصد التقريب لـ 2

اعلم جيدا قواعد التقريب العاديه ولكن هذه حاله خاصة
تم التعامل معها كلآتى :
1- حفظ ناتج القسمة فى متغير وليكن X
2- الغاء الارقام بعد اللامة العشرية وليكن Y
3- المقارنه بين القميه X & Y .

جزاكم الله خير
الرد }}}}
تم الشكر بواسطة:
#9
لم اطلع على المثال

يمكنك استخدام دالة التقريب بالزيادة Ceiling
مثل
TextBox1.Text = Math.Ceiling(1.111)
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [كود] تقريب رقم Ahmed Abdulla 4 146 17-11-16, 04:36 PM
آخر رد: Ahmed Abdulla
  [كود] دالة تقريب الأرقام Ahmed Abdulla 2 135 07-09-16, 05:04 PM
آخر رد: Ahmed Abdulla
  كود البحث بين تاريخين لايعمل بشكل صحيح فاضل الحمود 8 2,752 12-08-16, 07:57 PM
آخر رد: Ahmed tantawy

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم