النتائج 1 إلى 5 من 5
الموضوع: كيف أحول الرقم السالب إلى موجب
- 09-12-2011, 11:19 PM #1
كيف أحول الرقم السالب إلى موجب
السلام عليكم جميــــــــــــــــــــــــــــــع
ما هو الكود او الدالة أو المعادلة اللي يمكن تحويل الرقم السالب إلى موجب
مثال 4 - 6 = -2
- 09-12-2011, 11:34 PM #2
- 10-12-2011, 12:50 AM #3
- 10-12-2011, 03:36 AM #4
في حال كان الإغلاق أكبر من الفتح فهذا يعني أن الطول سيكون موجبا وهو الحالة الصحيحة الأولى.
في حال كان الإغلاق أصغر من الفتح فهذا يعني أن الطول سيصبح سالبا ولذلك يجب تغيير كيفية حساب الطول إلى الفتح ناقص الإغلاق.
طبعا يمكن معالجة هذه الحالة برمجيا بعدة طرق سنستعرض معظمها لزيادة الشرح والفهم.
وأي طريقة منها تعطينا النتيجة الصحيحة فهي صحيحة بالنهاية.
ويعود اختيار أحدها إلى المبرمج نفسه وطريقة تفكيره ومعالجته للأمر.
الطريقة الأولى:
وضع الشرط والحساب في كتلة برمجية واحد تتضمن if و else كالتالي:
كود PHP:
if(Close[i]>Open[i])
{
BufLength2[i]=Close[i]-Open[i];
}
else
{
BufLength2[i]=Open[i]-Close[i];
}
المثال السابق يقول في حال كان الإغلاق أكبر من الفتح فإن طول الشمعة يساوي الإغلاق ناقص الفتح.
وإلا ( else ) في حال عدم تحقق الشرط أي أن الإغلاق أصغر من أو يساوي الفتح فإن طول الشمعة يساوي الفتح ناقص الإغلاق.
وتصبح كتلة الوظيفة start كالتالي:
كود PHP:
int start()
{
//----
for(int i=0;i {
BufLength1[i]=High[i]-Low[i];
if(Close[i]>Open[i])
{
BufLength2[i]=Close[i]-Open[i];
}
else
{
BufLength2[i]=Open[i]-Close[i];
}
}
return(0);
}
الطريقة الثانية:
حساب طول جسم الشمعة دائما على أنه الإغلاق ناقص الفتح وفي حال كان الطول سالبا نضرب النتاتج في -1 ليصبح موجبا ويكون الكود كالتالي:
كود PHP:
LL=Close[i]-Open[i];
if(LL<0)
{
LL=-1*LL;
}
BufLength2[i]=LL;
وتصبح كتلة الوظيفة start كالتالي:
كود PHP:
int start()
{
//----
double LL;
for(int i=0;i {
BufLength1[i]=High[i]-Low[i];
LL=Close[i]-Open[i];
if(LL<0)
{
LL=-1*LL;
}
BufLength2[i]=LL;
}
return(0);
}
الطريقة الثالثة:
في هذه الطريقة سنستخدم الوظائف الحسابية المتوفرة في لغة MQL4 والتي تسهل علينا كثيرا القيام بعمليات حسابية دون الخوض بطريقة عملها الداخلية.
الوظيفة التي سنستخدمها هي الوظيفة MathAbs وهي تعطينا القيمة المطلقة ( الموجبة ) لأي رقم سالب أو موجب.
المدخلات لهذه الوظيفة هي الرقم الذي نريد حساب القيمة المطلقة له.
والمخرجات هي القيمة المطلقة.
مثال:
كود PHP:
Print(MathAbs(-5));
سيتم طباعة 5
كود PHP:
Print(MathAbs(7));
سيتم طباعة 7
وباستخدام الوظيفة MathAbs نكون قد استغنينا عن الشرط الذي وضعناه سابق
وضاح عطار
- 10-12-2011, 03:43 AM #5