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

دالة حساب نسبة إقتطاع الضمان الإجتماعي من الأجر بالجزائر

بدأه saiddsa3980 في 30 مارس 2008 · 10 رد · 6,635 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

منفضلكم من لديه أويستطيع أن يساعدني في إنجاز دالة تقوم بحساب نسبة إقتطاع الضمان الإجتماعي من الأجر

علماً أن هذه الدالة تقوم بتحويل الرقم (أي تعمل ROUND للعدد ) بالطريقة التالية :

مثال

1 -المبلغ المدخل 11551.30 يحول إلى المبلغ 11550.00 هذا في حالة ما إذا كان الدينار(أي العدد المشار بالأحمر) أصغر من العدد 5 فتحول الأرقام المشار إليها بالأزرق إلى أصفار

2- المبلغ المدخل 11555.00 يحول إلى المبلغ 11550.00 هذا في حالة ما إذا كان الدينار =5 وبعده00 سنتيم

3- المبلغ المدخل 11555.01 يحول إلى المبلغ 11560.00 هذا في حالة ما إذا كان الدينار =5 وبعد حتى 01 سنتيم

4- المبلغ المدخل 11556.00 يحول إلى المبلغ 11560.00 هذا في حالة ما إذا كان الدينار أكبر من 5 مهما يكن عدد السنتيم

وبعد أن تقوم الدالة بتحويل الرقم تضربه *9/100 وبعدها يكون الناتج النهائي

بارك الله فيك وجزاكم الله خيراً وربي يجعلها في ميزان حسناتكم.

قال الحسن البصري : يا إبن آدم إنما أنت أيام إذا ذهب يومك ذهب بعضك

#2

سلام نحن في العون اخي . هل انت من الوادي

يوجد ايضا floor و ceil في ال Math unit

ceil تقوم بالتقريب الى الأعلى

Ceil(2.1) = 3

Ceil(2.9) = 3

floor تقوم بالتقريب الى الاسفل

Floor(2.9) = 2

Floor(2.1) = 2

لا تنسى ان تضيف ال Math في ال uses

تم تعديل هذه المشاركة بواسطة YACIN في 30 مارس 2008 في 21:30

#3

نعم أنا من وادي سوف أخي ياسين وأنت من وين ؟

لكني لم أفهمك جيداً ياريت تعطيني كود تام

تم تعديل هذه المشاركة بواسطة saiddsa3980 في 30 مارس 2008 في 21:46

قال الحسن البصري : يا إبن آدم إنما أنت أيام إذا ذهب يومك ذهب بعضك

#4
saiddsa3980 كتب:
لم أفهمك جيداً ياريت تعطيني كود تام

ضع محاولاتك لكي يمكن مساعدك ولا تنتظر "كود تام" دون محاولة

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

d4baa0.gif
#5

عندي كود عملته من قبل بالفجوال بيسك وهو يعمل بنجاح ياريت تساعدوني في تحويله إلى دلفي وإليكم الكود

Private Function ss(x As String)

Dim y, x1

If Int(x) <> x Then

If Mid(x, Len(x) - 2, 1) = "." Then

x1 = Right(x, 4)

Else

x1 = Right(x, 3)

End If

Else

x1 = Right(x, 1)

End If

If x1 <= 5 Then x = x - x1

If x1 > 5 Then x = x - x1 + 10

ss = Format(x, "##,###0.00")

End Function

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

قال الحسن البصري : يا إبن آدم إنما أنت أيام إذا ذهب يومك ذهب بعضك

#6

السلام عليكم

هده محاولة

Function ss(x :string):string;
 var y, x1 :string;
 BEGIN
	 IF Int(StrToFloat(x)) <> StrToFloat(x) Then
	 BEGIN
		 If MidStr(x, Length(x) - 2, 1) = '.' Then
			 x1 := RightStr(x, 4)
		 Else
			 x1 := RightStr(x, 3)
	  END
	  Else
		  x1 := RightStr(x, 1);


	  If StrToFloat(x1) <=  5 Then
							X := FloatToStr(StrToFloat(x) - StrToFloat(x1));
	  If StrToFloat(x1)   > 5 Then
							X := FloatToStr(StrToFloat(x) - StrToFloat(x1) + 10 );

	  Result:=x;
 end;
 procedure TForm1.Button1Click(Sender: TObject);
 begin
 edit1.Text := ss(edit1.Text);
 //FormatFloat(StrToFloat(x),'##,###0.00');
 end;

فهمت قصدك وساجد الوقت لاعطاءك حل ان شاء الله

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 1 أبريل 2008 في 12:04

#7

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

أستسمح أخي و أستسمح مشرفي المنتدي

1- أضن أخي أن الكود الذي وضعته بالفي بي ليس لك لأن التحول بين اللغات ليس بهذه الصعوبة و لا بهذه الطريقة

و كما قال مشرفنا الغالي ( ولد بلادي كذلك )

اقتباس
ضع محاولاتك لكي يمكن مساعدك ولا تنتظر "كود تام" دون محاولة

2- لحساب الضمان الإجتماعي لا يكون round بل هذه الدالة تستعمل في حساب IRG

شكرا لك من أراد المساعدة فأعضاء المنتدي يكونون أسرة بينهم

جارك من الصحراء

يقول المثل الشعبي الجزائري

( أقري علمك و علما لا تدريه ، و قل ربي زدني علما ، و فوق كل ذى علم عليم )

اللهم زدنا و لا تنقصنا و أعطنا و لا تحرمنا

#8

السلام عليكم

اقتباس
لأن التحول بين اللغات ليس بهذه الصعوبة و لا بهذه الطريقة

التحويل صعب وخاصة من الدلفي الجافا و العكس اما الفي بي نعم ربما هو سهل لكن انا مند انا ان بدأة دوت نت 9 اشهر تقريبا بدأت ادرس الفيبي رعما عني وانا مبتدأ فيه

وكلنا من الصحراء

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 1 أبريل 2008 في 16:53

#9

ونحن بإنتظار الحل النهائي إن شاء الله

قال الحسن البصري : يا إبن آدم إنما أنت أيام إذا ذهب يومك ذهب بعضك

#10

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

إليك يا أخي هذه المحاولة:


begin;
result:=trunc(v);
if(result mod 10)<5 then
result:=result-(result mod 10)
else result:=result+10-(result mod 10);
end;

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var mont :real;
begin
mont:=strtofloat(edit1.text);
edit2.Text:=floattostrf(arrendi(mont),ffnumber,18,2);
end;
FUNCTION arrendi(v:real):integer;

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 2 أبريل 2008 في 10:48

أطلب العم من المهد إلى اللحد

#11

مشكورين جميعاً الدالة الآن تعمل بشكل صحيح

ربي يجازيكم عنا كل الخير

دمتم في فعل الخير ياولاد بلادي

قال الحسن البصري : يا إبن آدم إنما أنت أيام إذا ذهب يومك ذهب بعضك

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

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

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

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

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