Float x, y;
Integer k;
Char c,b,a;
X=2.0;
Y=10.6*x;
K=100;
A=t;
B=f;
C=4;
وتقسم المتغيرات لنوعين
:- ·
١
- متغيرات عددية
وهي مواقع في الذاكرة تخزن بها أعداد .
٢
- متغيرات رمزية
وهي مواقع في الذاكرة تخزن بها رموز.
٣
- متغيرات منطقية
TRUE=
أو 1 FALSE = وتخزن بها قيمة منطقية أما 0
PDF created with pdfFactory Pro trial version
www.pdffactory.com
C++
الأدوات المستعملة في لغة
ثلاثة أنوا
ع من الأدوات وهي: C++ يوجد في لغة
الأدوات الحس ابية – الأدوات المنطق ية والعلاق ة – الأدوات الدق يقة وف يما يأت ي تفص يل
بالأنواع الثلاثة:-
Arithmetic Operators
الأدوات الحسابية
باس تعمال الأدوات الحس ابية م ن جم ع وط ر
ح وض ري وقس مة ، C++ تس مح لغ ة
h
كاللغ ات الأخ رى ، إلا أن عمل ية ال رف إل ى أس ، ليس لها أدوات مباشرة مثل الأداة
C++
والأداة ** ف ي فورت ران ، وانم ا ت تم علم ية ال رفع إل ى أس ف ي لغ ة Basic ف ي
بطريقة أخرى ..
إذا أن أي ج ز
ء كس ري ين تج ع ن Basic ع نها ف ي C++ كم ا تخ تلف القس مة ف ي لغ ة
8/
القس مة يهم ل مهمه ا ك ان كب يرا ، كم ا ف ي لغتي باسكال وكوبول فمثلا ناتج القسمة 3
هو
2 لا الكسر 0.666 يهمل ، ويكون ناتج القسمة باستعمال الأداة / صحيح العدد.
فيما يأتي
:- C++ ويمكننا الآن أن نلخص الأدوات الحسابية المستعملة في لغة
الأداة وظيفتها
-
للطرح أو كأشاره سالبة
+
للجمع
*
للضرب
/
للقسمة
%
لباقي القسمة الصحيحة
- -
للنقصان
+ +
للزيادة
١
- الجدول ٣
PDF created with pdfFactory Pro trial version
www.pdffactory.com
وي
خ تلف أداء بع ض الأدوات الحس ابية حس ب ن وع المعط يات الص حيحة ، أو الحقيقة ،
أو الرم زية فع ند معامل ة المعط يات الحقيق ية ل لأدوات الحس ابية
، يمك ن الق ول أن
العلم يات الأساس ية م ن جم ع وط رح وض رب ، تج ري بالط ريقة الت ي نع رفها ، إلا أن
ه ناك مح ذورا يج ب أن نذك ر ب ه ، وه و أن ت تعدي ق يمة النت يجة م ن أية عملية حسابية
الح دود المرس ومة ل نوع المتغ ير ال ناتج ، لان لك ل ن وع م ن أن واع المتغ يرات ح دودا ،
يع د تجاوزه ا خط أ ين تج ع ن
ه خط أ ف ي الن تائج ، وع ند معامل ة المعط يات الص حيحة
ب الأدوات الحس ابية تعم ل الأدوات بالط ريقة الت ي ن تو قعها ، وع ند تع دي الح دود
وفي ، overflow المس موح به ا ف ي الق يم الص حيحة ، ف ان ه ذا يعن ي أن خط أ ق د وقع
هذه الحالة لن تتلقى من المترجم أية رسالة خطأ ، فمثلا إذا كان لدينا البرنامج التالي:
النهائ ية ن توقع أن يك ون الج واب
99000 ، ألا أن الج واب ف ي n ع ند ط باعة النت يجة
ه ذه الحال ة ل ن ي تعدى 30464 ، وه و الح د الاعل ى المس موح ب ه للق يمة الص حيحة ،
8
فان الناتج / وه ناك أم ر أخ رى ي تعلق بالقسمة فعندما نقسم 8 على 3 قسمة صحيحة 3
يك ون ص حيحا وه و
2 فق ط ، وإذا م ا رغب ت أن تح افظ عل ى الج زء الكس ري ال ذي
8.0
حين ئذ ف ان ال ناتج / أهم ل واس قط ، يمك نك أن تح ول القس مة إل ى قس مة حق يقة 3.0
أداة باق ي ا لقس مة
% ويس مى C++ س يكون 2.667 له ذا الس بب أدخل ت لغ ة
ويستعمل على النحو التالي: Modulus Operator
7 ، وم ن الجدي ر بالذكر أن كلا من / تعط ي الج واب 1 وه و باق ي القس مة الص حيحة 3
باس كال وكوب ول تس تعملان م ثل ه
ذه العمل ية ، فف ي باس كال تكت ب ه ذه العمل ية عل ى
C++
أم ا ف ي لغ ة ، Modulus ه ي اختص ار MOD 7 ، وكلم ة mod ال نحو 3
فتستعمل الأداة
% لتقوم بهذا العمل.
Main( )
{
int n = 33000;
n = n * 3;
}
7 % 3
PDF created with pdfFactory Pro trial version
www.pdffactory.com
Unary and Binary
الأدوات الأحادية والثنائية
Operators
تع د جم يع أدوات الجم ع والط ر
ح والض رب والقس مة وباق ي القس مة أدوات ثنائ ية
2
هي * أي أنه ا ت أخذ (ت تعامل م ع ) قيمتي ن وتن تج قيمة واحدة ، فمثلا نتيجة 3 binary
الق يمة
6 وه ناك الأداة الأحادي ة – ع ندما ت تعامل م ع ق يمة واح د فم ثلا ( 1992 -) تم ثل
والعمل ية ه نا ليس ت عمل ية ط رح كما ، Unary الإش ارة ا لس البه وه ي ه نا أداة أحادي ة
نعلم.
Increment and Decrement
الزيادة والنقصان
أنها تستعمل الأداتين الحسابيتين
+ + و - - لزيادة القيم بمقدار 1 C++ من مزايا لغة
أو إنقاصها بمقدار 1 ، والمثال التالي يبين طريقة الاستعمال:
ويمكن كتابتها بصوره مكاف
ئة على النحو التالي:- a معناه إضافة قيمة 1 إلى
عل
ى النحو:- a وبالطريقة نفسها يمكن إنقاص 1 من قيمة
أو
وهو يكافئ الصورة
وه ذه a=a+ أس رع م ن التعب ير ; 1 ++a; لك ن ه ناك ف رقا ف ي س رعة التنف يذ ، فالتعب ير
هي الفائدة من جراء استخدام مثل هذه الأدوات .
ص حي
ح أن ك لا م ن ، ++a و a++ ومم ا ينبغ ي التنب يه إل يه ه نا أن ه ناك ف رقا بي ن
a
ف ي تعب ير م ن التعاب ير ، ف ان ++a لك ن ع ند اس تعمال ، a التعبيري ن يجم ع 1 إل ى
++a;
A++;
A=a+1;
--a;
a--;
A=a-1;
a++ ت زداد ق بل اس تخراج ق يمة التعب ير ، بي نما ف ي حال ة
بمق دار 1 آي a الحال ية ق بل زيادته ا بمق دار 1 ، وبع د ذل ك ت تم ز ي ادة a باس تعمال ق يمة
أن العمل ية الأول ى جم ع تقدي م ، والثان ية جم ع تأخ ير ، وينطبق هذا الكلام أيضا على –
. a-- و a
مثال
:
وب
إمكانك كتابة الجملتين:
Int x,y,z
X=y=z=0
في جملة واحد عل
ى النحو:
Int x=y=z=0
Int x,y,x;
X=y=x=0;
X=++y + ++z;
X=y++ + z++;
X=++y + z++;
X=y-- +--z;
تأتي
z أولية جمع 1 إلى
متاخره إذ يتم جمعها
x أولا إلى
م
ؤجل بعد y جمع 1 إلى
إعطا
ء قيمتها الأولى إلى
x
x=1 , z=1 , y= في هذه الحالة تكون 1
x=2 , y=2 , z= في هذه الحالة تكون 2
قبل أن تزداد كل
z,y تجمع قيمتي ، x لان
منهما بمقدار 1
x=3 , y=3 , z= الآن 3
قبل أن
z بعد زيادتها وتجمع آخر y تجمع x لان
تزداد 1
x=5 , y=2 , z= الآن 1