;3MD
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.
دخول

لقد نسيت كلمة السر

مجموعة المنتدى
مجموعات Google
اشتراك في 3MD-IT Group
البريد الإلكتروني:
زيارة هذه المجموعة
المتواجدون الآن ؟
ككل هناك 1 عُضو حالياً في هذا المنتدى :: 0 عضو مُسجل, 0 عُضو مُختفي و 1 زائر

لا أحد

[ مُعاينة اللائحة بأكملها ]


أكبر عدد للأعضاء المتواجدين في هذا المنتدى في نفس الوقت كان 14 بتاريخ 8/1/2013, 10:57 am
أفضل 10 أعضاء في هذا المنتدى
Sniper - 201
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
M.Y.T - 184
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
STEEV - 94
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
*شمس الإسلام* - 67
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
MhdSyrwan - 51
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
حنيني للجنة - 36
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
ايمــــ عزي ــــاني - 32
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
Karam - 23
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
VIRUS - 21
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 
kenan.t - 21
دورات VB.net : الدرس الرابع Vote_rcapدورات VB.net : الدرس الرابع Voting_barدورات VB.net : الدرس الرابع Vote_lcap 

بحـث
 
 

نتائج البحث
 


Rechercher بحث متقدم


دورات VB.net : الدرس الرابع

اذهب الى الأسفل

دورات VB.net : الدرس الرابع Empty دورات VB.net : الدرس الرابع

مُساهمة من طرف Sniper 1/8/2010, 6:33 am

دورات VB.net : الدرس الرابع Salamy

الدرس الرابع :
سنأخذ في هذا الدرس :
1- Loop
أ‌- For Each
2- Switch
3- تعريف التوابع
4- تعريف الإجرائيات


1- Loop
أ‌- For Each

وهي حلقة نستطيع من خلالها الدوران على كل شيء يمكن الدوران عليه مثل الـ Objects فمثلا إذا اردنا الدوران على كل عناصر المصفوفة

الكود:
For Each i As Integer In arr
    Console.WriteLine)i)
Next

اذا فرضنا أن arr هي المصفوفة لدينا _ سنأخذ لا حقا كيف نعرف المصفوفات _
وبالإمكان فعل هذا في ال for العادية أيضاً
مثال ثاني :
اذا كان لدينا Class عبارة عن موظفين أي فيه عدد من الموظفين
نريد أن ندور عليهم كلهم فإذا فرضنا أن أسم الـ Class هو employee وفرضنا أن هناك Class ثاني اسمه users فيه الموظفين فنكتب :


الكود:
For Each e As employee In emp

Next

أتمنى أن تكون الفكرة قد وضحت وان شاء الله سيكون لنا شغل معها وسنتعرف عليها أكثر



2- Select
وهي نفسها Case في الباسكال فكنا نكتب :

الكود:
Case x of
 1 : writeln('Number is 1') ;
  2 : writeln('Number is 2');
end;

أما في الـ VB.net نكتب :

الكود:
    Select Case x
    Case 1
        Console.WriteLine("Number is 1")
    Case 2
        Console.WriteLine("Number is 2")
    End Select

والفرق واضح جداً وهو لا وجود للـ of ونكتب قبل الـ (Case) Select وكل اختيار نكتب قبله Case كما هو واضح
واذا اردنا أن نكتب أكثر من تعليمة داخل الـ Case كنا نكتب في الباسكال


الكود:
Case x of
 1 :  begin
        writeln('Number ') ;
        writeln('is 1');
      end;
  2 :  begin
        writeln('Number ') ;
        writeln('is 2');
      end;
end;

فكان يجب علينا كتابة begin و end
أما في الـ VB.net يمكننا أن نكتب أكثر من سطر داخل Case نفسها بدون أي شيء
أي نكتب كالتالي :


الكود:
        Case 1
            Console.Write("Number ")
            Console.WriteLine("is 1")
        Case 2
            Console.WriteLine("Number is 2")
            Console.WriteLine("is 1")
End Select



3- تعريف التوابع
كنا نكتب في الباسكال

الكود:
Function sum( x : integer ; y : integer)  : integer ;
  Begin
      Sum := x + y ;
  end;

أما في الـ VB.net نقوم بكتابة التالي :

الكود:
Function sum (x As integer , y As integer) As integer
  Return x+y
End Function

نلاحظ أننا بعد كتابة التابع أعلاه نجد أنه يتغير ليصبح بدل

الكود:
Function sum (x As integer , y As integer) As integer
بـ
الكود:
Function sum (ByVal x As integer , ByVal y As integer) As integer

و (ByVal) تعني By Value أي عندما نمرر لهذا التابع المتحول x أو y لا تتغير قيمته داخل التابع
أي في الباسكال كنا نكتبها بدون var فيعمل التابع السابق بدون var فإذا أردنا أن يقوم التابع بتغيير قيمة المتحول بعد خروجه من التابع نكتب


الكود:
Function sum (ByRef x As integer , ByRef y As integer) As integer

معنى (ByRef) هو By Refrance وهي كما قلنا مكان الـ var في الباسكال
فكنا نكتب في الباسكال


الكود:
Function sum(var x : integer ;var y : integer)  : integer ;

ونرى أيضاً إننا إذا أردنا أن يرد التابع قيمة ما نكتب في الباسكال إسم التابع ثم (:=) ثم القيمة المراد ردها
أما في الـ VB.net يمكننا أن نفعل هذا بكتابة إسم التابع ثم (=) ثم القيمة أي

Sum = x + y
ويمكننا أيضاً رد القيمة بـ return ثم القيمة المراد ردها
أما إستدعاء التابع فهو نفسه في الباسكال أي

Dim s As Integer = Sum( x , y )
وأيضاً يمكننا كما في الباسكال وضع ارقام بدل المتحولات مباشرة أي
Dim s As Integer = Sum( 2 , 3 )
ويمكننا أيضاً طباعة التابع مباشرة
Console.Write(Sum( x , y ))
فيطبع الناتج مباشرة
وأيضا اذا اردنا تعريف متحولات خاصة بالتابع كنا نكتب في الباسكال

الكود:
Function sum( x : integer ; y : integer)  : integer ;
  Var Res : integer ;
  Begin
      Res := x + y ;
      Sum := Res ;
  end;
أما في الـ VB.netفنعرفه في أي مكان في التابع كما في الـ Main
أي

الكود:
Function sum (x As integer , y As integer) As integer
  Dim Res As integer = x + y
  Return Res
End Function



4- تعريف الإجرائيات
كنا نكتب بالباسكال

الكود:
Procedure Print ( x : integer )
  Begin
    Writeln( x ) ;
  End;

في الـ VB.net نكتب

الكود:
Sub Print (ByVal x As integer)
              Console.WriteLine( x )
End Sub

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


الكود:
Sub [Sub] (ByRef x As integer)
              x = x - 5
End Sub

أي نكتبها ونضعها بين قوسين كبيرين [ ]

وسنستفاد من شيء مهم لا حقاً هو Private و Public
فاذا اردنا أن نعرف تابع أو إجرائية خاصة بهذا الـ Class ولا يراه سواه نعرفه Private بالطريقة التالية :

Private Sub Print (ByVal x As integer)
أي نكتب قبل أن نعرف إن كان تابع أو إجرائية
أما اذا اردنا أن نكتب تابع أو إجرائية نستطيع مشاهدتها في Class آخر نقوم بتعريفه Public كما في الشكل

Public Sub Print (ByVal x As integer)
واذا لم تفهموا هذا فسنعود له مرة أخرى إن شاء الله عند البدء في الـ Class


أتمنى أن يكون الدرس مفيداً
ولأي استفسارات أو أسئلة ادخلو على الرابط التالي :
https://3md-it.yoo7.com/montada-f12/topic-t20.htm

لا تنسونا من صالح الدعاء
Sniper
Sniper
مدير المنتدى
مدير المنتدى

عدد المساهمات : 201
نقاط : 153311
السٌّمعَة : 1
تاريخ التسجيل : 06/06/2010
العمر : 32

https://3md-it.yoo7.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

دورات VB.net : الدرس الرابع Empty تحميل الدرس

مُساهمة من طرف Sniper 1/8/2010, 6:39 am

لتحميل الدرس
تجدونه في المرفقات أو على الرابط التالي
http://www.multiupload.com/C7DWMDZPXY
وإن شاء الله أن تستفيدوا منه
المرفقات
دورات VB.net : الدرس الرابع Attachment
الدرس الرابع.zip لا تتوفر على صلاحيات كافية لتحميل هذه المرفقات.(278 Ko) عدد مرات التنزيل 0
Sniper
Sniper
مدير المنتدى
مدير المنتدى

عدد المساهمات : 201
نقاط : 153311
السٌّمعَة : 1
تاريخ التسجيل : 06/06/2010
العمر : 32

https://3md-it.yoo7.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

دورات VB.net : الدرس الرابع Empty الوظيفة

مُساهمة من طرف Sniper 1/8/2010, 6:47 am

كما عرفت لا أحد قام بالوظيفة السابقة
ولكن اقوم بواجبي وأضع لكم وظيفة جديدة
1- تابع يرد عاملي عدد
2- تابع يرد قوة عدد
3- بنامج يحتوي
أ - تابع يقوم بقراءة سلسلة محارف نصية
ب - إجرائية حساب عدد الأحرف , عدد الارقام , عدد المحارف
جـ - إجرائية طباعة السلسلة المحرفية بعد تحويل كل حرف كبير الى حرف صغير

الوظيفة لكم وتفيدكم انتم
لذلك لاتتركوها
Sniper
Sniper
مدير المنتدى
مدير المنتدى

عدد المساهمات : 201
نقاط : 153311
السٌّمعَة : 1
تاريخ التسجيل : 06/06/2010
العمر : 32

https://3md-it.yoo7.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

- مواضيع مماثلة

 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى