InstagramTwitterSnapChat


 
وصف

العودة   منتديات سكاو > الكليات الجامعية > منتدى كلية الحاسبات وتقنية المعلومات > منتدى قسم علوم الحاسبات
   
   


الدرس(3):الثوابت والمتغيرات وخصائصها....نظرة مفصلة

منتدى قسم علوم الحاسبات

إضافة رد
 
أدوات الموضوع إبحث في الموضوع انواع عرض الموضوع
منتديات طلاب وطالبات جامعة الملك عبد العزيز منتديات طلاب وطالبات جامعة الملك عبد العزيز
  #1  
قديم 25-12-2014, 07:29 PM

عبدالقادر البعداني عبدالقادر البعداني غير متواجد حالياً

استاذ جامعي

 
تاريخ التسجيل: Dec 2014
الكلية: كلية الحاسبات وتقنية المعلومات
التخصص: علوم حاسوب
نوع الدراسة: ماجستير
المستوى: متخرج
البلد: الدول العربية
الجنس: ذكر
المشاركات: 7
Skaau.com (7) الدرس(3):الثوابت والمتغيرات وخصائصها....نظرة مفصلة





الدرس(3):الثوابت والمتغيرات وخصائصها....نظرة مفصلة






عند فتح الفيجوال بيسك 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 ......)
2- عدم البدء برقم في اسم المتغير مثل لذلك :-

كود:

Dim 1a as string
3- يمنع استخدام الرموز في اسماء المتغيرات مثل

كود:

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

كود:

Dim a.1 as string

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

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

المتغيرات

كود:

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

كود:

Dim name As String = "ali"


طريقة تعريف اكثر من متغير في سطر واحد

ويكونوا لنفس النوع (اي كلاهما من نوع نصي او كلاهما من نوع رقمي) مثل لذلك

كود:

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"
طرق تعريف المتغيرات في البرنامج

:_



باستخدام الكلمة المحجوزة 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"
امثلة عن المتغيرات الرقيمة

:_



كود:

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)
كما قلنا سابقاً يمكننا الاستعان بهذا النوع من المتغيرات اذا كنا غير متأكدين من المدخلات التي يدخلها المستخدم .



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

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









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

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






انتظروا الدرس القادم
رد مع اقتباس

 

إضافة رد

أدوات الموضوع إبحث في الموضوع
إبحث في الموضوع:

البحث المتقدم
انواع عرض الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

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

 


الساعة الآن 02:41 AM


Powered by vBulletin® Version 3.8.9 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Ads Organizer 3.0.3 by Analytics - Distance Education

أن كل ما ينشر في المنتدى لا يمثل رأي الإدارة وانما يمثل رأي أصحابها

جميع الحقوق محفوظة لشبكة سكاو

2003-2023