تقييم الموضوع :
  • 2 أصوات - بمعدل 5
  • 1
  • 2
  • 3
  • 4
  • 5
الفصل(2):الثوابت والمتغيرات وخصائصها....نظرة مفصلة
#1
Smile 

إقتباس : هذا الدرس منقول من المنتدى القديم طبقاً لموافقة صاحب الموضوع Big Grin

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




عند فتح الفيجوال بيسك 2008 ستظهر لنا هذه النافذة هنا ويمكنك من خلالها تحديد اللغة
التي ستبرمج بها والية العمل التي تريدها داخل البرنامج والصورة توضح :_



الدرس الثالث :_ الثوابت والمتغيرات .

اولاً الثوابت :-

تنقسم الثوابت في لغة الفيجوال بسيك 2008 إلى ثلاثة اقسام رئيسية وهي نصية او رقمية ومنطقية
ويمكننا تعريف ثابت في البرنامج من خلال الكلمة المحجوزة



كود :
const

ولاحظ هنا اخي الكريم في الفيجوال بيسك 2008 لا يمكنك تعريف ثابت إلا من خلال المبدأ التالي

كود :
Const   name  as  type  =  value

كود :
Const   اسم الثابت  as  قيمته =   نوعه

ولاحظ هنا عند كتابة الثابت لا يمكنك نسب قيمة له إلا في نفس السطر الذي قمت بكتابة الثابت فيه .



اي انه لايمكنك ان تكتب الثابت في سطر وقيمة الثابت في سطر اخر
وهذا من الاشياء التي تميز المتغير عن الثابت
امثلة على تعريف ثوابت جديدة لاستخدامها في البرنامج :-

اي انه لايمكنك ان تكتب الثابت في سطر وقيمة الثابت في سطر اخر
وهذا من الاشياء التي تميز المتغير عن الثابت
امثلة على تعريف ثوابت جديدة لاستخدامها في البرنامج :-

كود :
' ثابت من نوع نص
Const name As String = "mohammed"


كود :
' ثابت من نوع عدد صحيح
Const age As Integer = 22



كود :
' ثابت من نوع قيمة منطقية
Const marry As Boolean = False

الطرق التي من خلالها تستطيع تعريف ثوابت لبرنامج :-

1 - الطريقة التقليدية تعريف ثابت ونسب قيمة له مثل

كود :
Const name As String = "ali"



2 - كتابة الثابت بدون تحديد نوع له مثل :-

كود :
Const name = "lo2i"  



3 - كتابة اكثر من ثابت مع تحديد القيمة لها في سطر واحد :- مثل



كود :
Const name As String = "mohammed", age As Integer = 22


4 - كتابة اكثر من ثابت بودن تحديد نوع الثابت مثل


كود :
Const name = "mohammed", age = 33, marry = False


لاحظ هنا اننا لم نستخدم كلمة تعريف الثابت إلا في بداية الجملة فقط

فوائد الثوابت في البرنامج :_

1- تسهيل البرمجة عندما تريد التعويض بقيمة ثابتة لعدد غير معين من المتغيرات.

فمثلاً اذا اردت ان ان تعٌرف ثابت لعمر اعضاء في المنتدى
اسماؤهم كالتالي :_ أحمد و محمد و لؤي
ونريد اعطاء عمر واحد لكل الاعضاء

كود :
Const age As Integer = 20
Dim person1 As String = "ahmad"
Dim person2 As String = "mohammed"
Dim person3 As String = "lo2i"
MsgBox(person1 & " = " & age & vbCrLf & person2 & " = " & age & vbCrLf & person3 & " = " & age) 


ووظيفة الدالة VBCRLF

هي كالتالي :-
الدالة تعمل على اعطاء سطر جديد في الرسالة ويمكن ايضاً استخدامها في اكثر من مجال
في التيكست وفي اللابيل وفي اكثر من اداة
وضيغتها كالتالي :_ & VBCRLF &


****************************


- انها تتعامل مع المصفوفات بكل يسر وسهولة ويمكنها الوصول إلى مصفوفة معينة


================================================== ==========

الاخطاء المتوقعة حدوثها عند تعاملك مع الثوابت :-

اولاً :-
تغيير قيمة الثابت في البرنامج او اثناء التشغيل مثال لذلك :-

كود :
Const age As Integer = 20
        age = 22


ثانياً:-
تعريف الثابت في سطر ونسب القيمة له في سطر اخر كما قلنا سابقاً .
مثال لذلك ..


كود :
Const age As Integer 
        age = 18 


ملاحظة هامة جداً جداً :- عند تعاملنا مع الثوابت يجب علينا ادخال القيمة للثابت في نفس جملة تعريف الثابت .


ولا حظ هنا انا الفرق بين النقطة الاولى والثانية هي ماسيوضحه هذا الشكل




وهي ان الكود الاول اعطى قيمة للثابت في تعريف الثابت
وفي الخطوة الثانية حاول تغيير القيمة وهنا هو الخطأ قما قلنا سابقاً الثابت لا يمكن تغييره في وقت تنفيذ البرنامج.


------------------------------------
الكود الثاني الخطأ فيه هنا انه لم يعطي قيمة للثابت في التعريف
واقصد بالتعريف هنا اي تعريف الثابت باستخدام الكلمة المحجوزة واعطاه قيمة في سطر جديد .



---------------------------------------------------------------------------------------------------
ملاحظة يمكنك عمل ثابت بالبرنامج
بدون تحديد نوعه اي نصي او حرفي مثل


كود :
Const a = "lo2i"
كود :
Const s = 123 

كود :
Const x = true 
ولكن في هذه الحالة يمكنك اعطاء اي قيمة كانت له حرفية نصية منطقية(اي قيمة صحيحة او خاطئة)

==================================
ثانياً المتغيرات :-

تعريفها :- موقع محدد في الذاكرةيمكن ان يحتوي بيانات من اي نوع فالمتغير لايعطي قيمة ثابتة بل يمكن تغييرها بعكس الثابت .

الشروط اللازمة لكتابة اسماء المتغيرات في البرنامج:


1 - عدم استخدام الكلمات المحجوزة في البرنامج

كود :
(if       dim      while     do      ......)

(من ملحوظات الأخ sooriaty03 )هذا الشرط تستطيع أن تتجاوزه باستخدام علامة الأقواس "[]" على سبيل المثال:

كود :
"Dim [Dim] As String = "Dim


2 - عدم البدء برقم في اسم المتغير مثل لذلك :-


كود :
Dim 1a as string


3 - يمنع استخدام الرموز في اسماء المتغيرات مثل


كود :
Dim ? as Integer 


4 - يمنع استخدام النقطة او الفاصلة في اسم المتغير مثل :-

كود :
Dim a.1 as string
        Dim a,1 as String

طرق تعريف المتغيرات في البرنامج باستخدام الكلمة المحجوزة Dim

1 – الطريقة الافتراضية لتعريف المتغيرات


كود :
Dim name As String


2 - طريقة تعريف متغير منفصل مع نسب القيمة له في نفس السطر

كود :
Dim name As String = "ali"

3 - طريقة تعريف اكثر من متغير في سطر واحد ويكونوا لنفس النوع (اي كلاهما من نوع نصي او كلاهما من نوع رقمي) مثل لذلك

كود :
Dim f_name, l_name As String


في هذا المتغير عرفنا متغيريين من نوع نص اسم المتغير الاول
والثاني L_name F_name


4 - تعريف متغيرات مختلفة في نفس السطر (اي مختلفة في النوع اي متغير نصي ومتغير رقمي ومتغير منطقي) مثل


كود :
Dim name As String, age As Integer, marry As Boolean

لاحظ هنا اننا كتبنا المتغيرات جميعها بكلمة واحد فقط للتعريف وهي Dim

5 - تعريف متغيرات من غير نوع في سطر واحد ونسب القيم لها مثل



كود :
Dim name As String = "mr.mohammed", age As Integer = 12, marry As Boolean = True 


لاحظ اننا عرفنا 3 متغيرات من انواع مختلفة منها النصي ومنها الرقمي ومنها المنطقي..
6 - تعريف متغير من دون ذكر الكلمة Dim مثل :-

كود :
Name="lo2i" 

(من ملحوظات الأخ sooriaty03 ):
لكي تستطيع تعريف متغير بدون استعمال الكلمة Dim يجب أن تضع الكود التالي في أول سطر من الكود


كود :
Option Explicit Off

أو أن تقوم بتعطيله من خيارات المشروع 
وعندها ستتمكن من تعريف المتغير بدون استعمال كلمة Dim وسيتم تعريف المتغير على أنه Object


أما إذا لم يتم تعطيله فسوف ينتج خطأ


طرق تعريف المتغيرات في البرنامج :_

باستخدام الكلمة المحجوزة
static

1 - يمكنك استخدمها بهذه الطريقة

كود :
Static name As String 

وسيبقى البرنامج محتفظاً بها داخل البرنامج من لحظة تشغيله إلى لحظة ايقافه
المعلومات المستخدمة لاضافة المتغيرات باستخدام الامر Dim
لاتختلف عن طرق اضافة المتغيرات في الاستاتيك static



الفرق بين الكلمتين Dim و static

عندما تريد من المتغير ان يحتفظ باقيمة داخل اجراء خاص فقط تستخدم له هذه الكلمة Dim

عندما تريد من المتغير ان يحتفظ بقيمة المتغير طيلة فترة عمر البرنامج يمكنك استخدام هذه Static الانواع من المتغيرات


مع التنبيه ان الكلمة الاولى تكون اخف على الذاكرة من الكلمة الثانية
لان الاولى تحتفظ بالقيمة داخل اجراء منفصل بها والثانية تحتفظ بها طيلة وقت البرنامج.


انواع المتغيرات التي يمكن التعامل معها نوضح كل ذلك
من خلال الجدول التالي





ويمكننا القول هنا ان انواع المتغيرات تنقسم إلى ثلاث اقسام رئيسية وهي كالتالي :-
1 - متغيرات عددية .
2 - متغيرات نصية .
3 - متغيرات منطقية.
4 - متغير عام ويحمل كل هذه القيم .



*******************************

سوف اعطي هنا امثلة بسيطة عن المتغيرات النصية


كود :
Dim NAME As String
        Static NAME2 As String
        NAME = "ali"
        NAME2 = "MOHAMMED"
        MsgBox(NAME & "   " & NAME2)

امثلة عن المتغيرات الرقيمة :_

كود :
    Dim num1 As Integer
        Static num2 As Integer
        num1 = 10
        num2 = 10
        MsgBox(num1 * num2) 


امثلة عن العمليات المنطقية في المتغيرات :-

كود :
Dim value As Boolean
        value = True
        value = false
        MsgBox(value)

مثال على تعريف المتغير العام في البرنامج :-


كود :
            
Dim s As Object
        s = 12345
        s = 12.345
        s = "mohammed"
        s = "lo2i"
        s = True
        s = False
        MsgBox(s) 

كما قلنا سابقاً يمكننا الاستعان بهذا النوع من المتغيرات اذا كنا غير متأكدين من المدخلات التي يدخلها المستخدم .


*************************************
المتغيرات والمساحات التخزينية التي تأخذها من الذاكرة توضحها الصورة التالية :-



طبعاً اخواني لن نستطيع ان نحصر كل خصائص المتغيرات والثوابت في هذا الدرس

لذلك تركت لكم اسلوب التنقيب بنفسكم عن الحل لان هذا من اهم اساسيات تعلم البرمجة


واخيراً وليس اخراً اعتذر عن تأخر الدرس بسبب انقطاع الانترنت

أبلغكم تحياتنا

Lo2i و
Mohammed Asaad
انتظروا الدرس القادم


*************
الرد }}}}
تم الشكر بواسطة: sooriaty03 , alims , mohammed moh , rapteur007 , mohamedali05 , Rooh warihaan , alsouf , awidan76
#2
السلام عليكم ورحمة الله وبركاته


جزاكم الله خيرا على الدرس الرائع
وجعله في ميزان حسناتكم


واسمحوا لي أن أضيف بعض التوضيحات وهي كالتالي


(15-09-13, 07:36 PM)Omar Mekkawy كتب :

الشروط اللازمة لكتابة اسماء المتغيرات في البرنامج:


1 - عدم استخدام الكلمات المحجوزة في البرنامج

كود :
(if       dim      while     do      ......)




هذا الشرط تستطيع أن تتجاوزه باستخدام علامة الأقواس "[]" على سبيل المثال:

       
كود :
Dim [Dim] As String = "Dim"


وأيضا بالنسبة إلى تعريف المتغير:
إقتباس :
طرق تعريف المتغيرات في البرنامج باستخدام الكلمة المحجوزة Dim
6 - تعريف متغير من دون ذكر الكلمة Dim مثل :- 


كود :
Name="lo2i" 

لكي تستطيع تعريف متغير بدون استعمال الكلمة Dim يجب أن تضع الكود التالي في أول سطر من الكود 


كود :
Option Explicit Off



أو أن تقوم بتعطيله من خيارات المشروع 
وعندها ستتمكن من تعريف المتغير بدون استعمال كلمة Dim وسيتم تعريف المتغير على أنه Object


أما إذا لم يتم تعطيله فسوف ينتج خطأ

الرد }}}}
تم الشكر بواسطة: alims , Omar Mekkawy , mohammed moh , hoob computer , amoory19905
#3
(16-09-13, 02:07 AM)sooriaty03 كتب : السلام عليكم ورحمة الله وبركاته


جزاكم الله خيرا على الدرس الرائع
وجعله في ميزان حسناتكم


واسمحوا لي أن أضيف بعض التوضيحات وهي كالتالي


(15-09-13, 07:36 PM)Omar Mekkawy كتب :

الشروط اللازمة لكتابة اسماء المتغيرات في البرنامج:


1 - عدم استخدام الكلمات المحجوزة في البرنامج

كود :
(if       dim      while     do      ......)




هذا الشرط تستطيع أن تتجاوزه باستخدام علامة الأقواس "[]" على سبيل المثال:

       
كود :
Dim [Dim] As String = "Dim"


وأيضا بالنسبة إلى تعريف المتغير:
إقتباس :
طرق تعريف المتغيرات في البرنامج باستخدام الكلمة المحجوزة Dim
6 - تعريف متغير من دون ذكر الكلمة Dim مثل :- 


كود :
Name="lo2i" 

لكي تستطيع تعريف متغير بدون استعمال الكلمة Dim يجب أن تضع الكود التالي في أول سطر من الكود 


كود :
Option Explicit Off



أو أن تقوم بتعطيله من خيارات المشروع 
وعندها ستتمكن من تعريف المتغير بدون استعمال كلمة Dim وسيتم تعريف المتغير على أنه Object


أما إذا لم يتم تعطيله فسوف ينتج خطأ


يعطيك العافية على هذه الملحوظات القيمة 
سيتم تعديلها ان شاء الله في أقرب وقت ممكن بعدما أنام لإني مو مركز Big Grin


جزاك الله كل خير Shy
الرد }}}}
تم الشكر بواسطة: sooriaty03 , hoob computer
#4
السلام عليكم و رحمة الله
شكرا على الموضوع الجميل و شرح وافي و كافي
بعض الأشياء كنت اجهلها و تعرفت عليها هنا
بارك الله فيك و ربي يجازيك
 
الرد }}}}
تم الشكر بواسطة:
#5
(16-09-13, 02:07 AM)sooriaty03 كتب : السلام عليكم ورحمة الله وبركاته


جزاكم الله خيرا على الدرس الرائع
وجعله في ميزان حسناتكم


واسمحوا لي أن أضيف بعض التوضيحات وهي كالتالي


(15-09-13, 07:36 PM)Omar Mekkawy كتب :

الشروط اللازمة لكتابة اسماء المتغيرات في البرنامج:


1 - عدم استخدام الكلمات المحجوزة في البرنامج

كود :
(if       dim      while     do      ......)




هذا الشرط تستطيع أن تتجاوزه باستخدام علامة الأقواس "[]" على سبيل المثال:

       
كود :
Dim [Dim] As String = "Dim"


وأيضا بالنسبة إلى تعريف المتغير:
إقتباس :
طرق تعريف المتغيرات في البرنامج باستخدام الكلمة المحجوزة Dim
6 - تعريف متغير من دون ذكر الكلمة Dim مثل :- 


كود :
Name="lo2i" 

لكي تستطيع تعريف متغير بدون استعمال الكلمة Dim يجب أن تضع الكود التالي في أول سطر من الكود 


كود :
Option Explicit Off



أو أن تقوم بتعطيله من خيارات المشروع 
وعندها ستتمكن من تعريف المتغير بدون استعمال كلمة Dim وسيتم تعريف المتغير على أنه Object


أما إذا لم يتم تعطيله فسوف ينتج خطأ


تم نعديل الموضوع وتم وضع اسمك بجانب ملاحظاتك Big Grin

ولا تنسانا من ملاحظاتك

يعطيك العافية Shy



(16-09-13, 04:08 AM)mohammed moh كتب :
السلام عليكم و رحمة الله
شكرا على الموضوع الجميل و شرح وافي و كافي
بعض الأشياء كنت اجهلها و تعرفت عليها هنا
بارك الله فيك و ربي يجازيك
 

وعليكم السلام أخوي Shy
العفو ( لكن هذا الموضوع ليس ملكي ) بل هو ملك للأستاذ محمد أسعد والأخ لؤي

لاتنساهما من صالح الدعاء  Heart

Big Grin
الرد }}}}
تم الشكر بواسطة: hoob computer
#6
شكرا أخي Heart[/size]
الرد }}}}
تم الشكر بواسطة: Omar Mekkawy
#7
اتمني ان اتعلم هده اللغة
الرد }}}}
تم الشكر بواسطة: Omar Mekkawy
#8
(05-03-14, 12:00 AM)walid1995 كتب :
اتمني ان اتعلم هده اللغة

ولم لا فهي سهلة Big Grin
اللَّهُمَّ أَنْتَ رَبِّي ، لا إِلَه إِلاَّ أَنْتَ خَلَقْتَني وأَنَا عَبْدُكَ ، وأَنَا على عهْدِكَ ووعْدِكَ ما اسْتَطَعْتُ ، أَعُوذُ بِكَ مِنْ شَرِّ ما صنَعْتُ ، أَبوءُ لَكَ بِنِعْمتِكَ علَيَ ، وأَبُوءُ بذَنْبي فَاغْفِرْ لي ، فَإِنَّهُ لا يغْفِرُ الذُّنُوبِ إِلاَّ أَنْتَ .
الرد }}}}
تم الشكر بواسطة:
#9
نفع الله بكم ..فقد استفدت كثيرا من الشرح
الرد }}}}
تم الشكر بواسطة:
#10
السلام عليكم ورحمة الله وبركاته

لك جزيل الشكر و بارك الله فيك على هذا الشرح الواضح و المفيد
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Smile الفصل(3): التركيبات أنواعها واستخداماتها Omar Mekkawy 9 4,297 17-11-16, 02:57 PM
آخر رد: ابو إياد
Smile الفصل(5):صنع القرار...الجزء الأول-الجمل الشرطية Omar Mekkawy 1 2,184 12-11-16, 10:29 AM
آخر رد: Amr_Gamal
  الفصل (7):- اوامر التكرار والدوران ( شرح مفصل ) Omar Mekkawy 2 11,304 16-07-16, 03:16 PM
آخر رد: ابراهيم كركوكي
  الفصل (1) : الفيجوال بيسك دوت نت (لمحة تعريفية) Omar Mekkawy 9 6,948 05-09-15, 05:49 AM
آخر رد: pioneer77
  الفصل (0) : دورة تعلم معنا فيجوال بيسك دوت نيت Omar Mekkawy 11 7,845 12-07-15, 12:51 AM
آخر رد: new_wave2002eg
Smile الفصل(4): المصفوفات Omar Mekkawy 3 6,544 02-03-14, 11:32 AM
آخر رد: علي نهاد
Smile الفصل(6):صنع القرار...الجزء الثاني-تكوين الشروط Omar Mekkawy 0 1,551 21-09-13, 11:52 AM
آخر رد: Omar Mekkawy

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


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