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

كيف استعمل شرط داخل التعليمة case

بدأه medreg في 16 فبراير 2012 · 4 رد · 809 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله تعالى ولركاته

لدي عملية حسابية اجدها معقدة

العملية عبارة عن شروط

إذا كان المبلغ يساوي من 0 الى 1000.00

اذا كان المبلغ يساوي من 1001.00 الى 2000.00

اذا كان المبلغ يساوي 2001.00 فما فوق

المطلب هو

السجلات المعنية بالقاعدة او الشرط الأول يجب ان تحول الى قاعدة البيانات (x)

السجلات المعنية بالقاعدة او الشرط الثاني يجب ان تحول الى قاعدة البيانات (y)

السجلات المعنية بالقاعدة او الشرط الثالث يجب ان تحول الى قاعدة البيانات (z)

لقد عملت محاولة بواسطة التعليمة case ولكن لم افلح

المحاولة

var n,t1,t2,t3:real;
begin
table1.open;
n:=table1.fieldvalues['Montant'];
case n of
0..1000.00 : t1:=n;
1001.00..2000.00 : t2:=n;

وبالنسبة للشرط الثالث المتمثل في (z)

superieur à 2001.00

لا اعرف كيف ادخله في التعليمة case

تم تعديل هذه المشاركة بواسطة medreg في 16 فبراير 2012 في 20:34

#2

وعليكم السلام ورحمة الله وبركاته

مثالك صحيح حالة استخدام متغير Integer

var
  n: Integer;
  t1, t2, t3: real;
begin
  table1.open;
  n := Round(table1.fieldvalues['Montant']);
  case n of
    0..1000: t1 := n;
    1001..2000: t2 := n;
  end;
end;

وإلا الشروط:

  if (n >=0) and (n <=1000) then begin

بالتوفيق.

#3

شكرًا اخي على هذا التوضيح

لكن كيف ادرج الشرط الثالث

يساوي 2001 فما فوق

مع الشرطين الأولين في تعليمة case

#4

السلام عليكم

يجب زيادة عبارة else للحالات المتبقية

var
  n: Integer;
  t1, t2, t3: real;
begin
  table1.open;
  n := Round(table1.fieldvalues['Montant']);
  case n of
    0..1000: t1 := n;
    1001..2000: t2 := n;
    else
   n := t3;
  end;
end;

بالتوفيق

#5

أجل... أو تقارن مع أعلى قيمة يمكن أن يأخذها Integer

...
2001..High(Integer): t3 := n;
end;

بالتوفيق.

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

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

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

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

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