منتدى شلة المحترفين طريقك نحو الإحتراف | |
|
| للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C | |
| | كاتب الموضوع | رسالة |
---|
Admin .:: رئيس مجلس إدارة المنتدى ::.
دولتي : مساهماتي : 1759 dsd : 11 إنضمامي : 29/12/2013
| موضوع: للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C الثلاثاء مايو 20, 2014 11:50 am | |
| دورة : المدخل للبرمجة بلغة السى Introduction to C Programming هل قررت أن تتعلم لغة السى ؟ نأمل أن نوفر لك الدليل السهل "خطوة بخطوة" للبرمجة بلغة السى . يتم تقسيم الدورة إلى عدة أقسام أو دروس ، والتى تتضمن أمثلة لبرامج بلغة السى لإيضاح ما تم تعلمه . فحظا سعيدا .
الدرس الأول : نظرة عامة على لغة السى Overview of C : القسم الأول: الأهداف : تم تصميم هذا الدرس ليعطيك نظرة عامة على البرمجة بلغة السى . على الرغم من أن الكثير من هذا الدرس سوف يتم التوسع فيه فى دروس لاحقة إلا أنه يعطيك مذاق لما هو آت .
لماذا استخدام لغة السى ؟ : لقد تم استخدام لغة السى بنجاح لكل نوع يمكن تصوره من مشاكل البرمجة ، من أنظمة التشغيل وجداول البيانات إلى الأنظمة التى تحتاج إلى خبرة ، كما أنه يوفر مترجمات (كومبيلر) فعالة .
استخدامات لغة السى : استخدمت لغة السى فى البداية لعمل تطوير الأنظمة ، ولا سيما البرامج التى تقوم بعمل أنظمة التشغيل . لماذا استخدام لغة السى ؟ السبب الأساسى لإنها تنتج كود وهذا الكود يعمل تقريبا بالسرعة التى يعمل بها الكود المكتوب بلغة الأسمبلى . فيما يلى بعض الأمثلة على استخدام لغة السى : · أنظمة التشغيل . · مترجمات اللغات (كومبيلر) . · الأسمبلر (مترجم لغة الأسمبلى) . · محررات النصوص . · الخدمات . فى السنوات الأخيرة تم استخدام لغة السى كلغة أغراض عامة بسبب شعبيتها مع المبرمجين . لغة السى ليست اللغة الأسهل ، لكن العديد من مبرمجى اللغات الأخرى يتحول إلى لغة السى لما يمكن أن تقدمه .
القسم الثانى : تشغيل برامج لغة السى : الأهداف : بعد هذا الدرس يجب أن تكون قادرا على : · التحرير Edit ، والترجمة Compile ، والربط Link ، والتشغيل (التنفيذ) Run لبرامج لغة السى هذا الجزء يهدف فى المقام الأول المبتدئين الذين ليس لديهم خبرة أو لديهم خبرة محدودة فى استخدام اللغات المترجمة . سوف نغطى مختلف مراحل تطوير البرنامج . المبادىء الأساسية لهذا الجزء سوف تنطبق على أى مترجم للغة السى تختار استخدامه ، فالمراحل تقريبا واحدة وهى أربع مراحل : التحرير ، الترجمة ، الربط ، والتشغيل (التنفيذ) .
[color][font] مرحلة التحرير Editing :وتعنى القيام بكتابة برنامج كومبيوتر بالكلمات والرموز والتى يفهمها الإنسان . وهذا هو الجزء الخاص بالتحرير ضمن "دورة التطوير" . فأنت تكتب البرنامج مباشرة فى نافذة على الشاشة وحفظ النص الناتج كملف منفصل . هذا الملف غالبا ما يشار إليه "ملف المصدر" source file . ولقد تم الاتفاق على أن نص برنامج لغة السى يتم حفظه فى ملف بالامتداد "سى" ".c" .مرحلة الترجمة Compiling :لا يمكنك تنفيذ "ملف المصدر" مباشرة . للتشغيل على أى نظام كومبيوتر ، يجب ترجمة ملف المصدر إلى "أرقام ثنائية" مفهومة لوحدة المعالجة المركزية للكومبيوتر . عملية الترجمة هذه تنتج ملف وسيط يسمى ملف الهدف object file ويكون بالامتداد ".obj" .مرحلة الربط Linking :السؤال الأول الذى يتبادر إلى الأذهان هو : لماذا الربط من الضروريات ؟ السبب الرئيسى هو أن العديد اللغات المترجمة تأتى مع مكتبة "روتينات" (برامج فرعية) والتى يمكن أن تضاف إلى البرامج الخاص بك . هذه الروتينات يتم كتابتها من قبل الشركة المصنعة للمترجم لأداء مجموعة متنوعة من المهام ، من الإدخال / الإخراج إلى الدوال (الوظائف) الحسابية المعقدة . فى حالة لغة السى القياسية فإن دوال الدخل والخرج القياسية نتضمنة فى المكتبة المسماه (stdio.h) ، لذلك ، فإنه حتى معظم البرامج الأساسية سوف تتطلب مكتبة دوال .بعد الربط يكون امتداد الملف هو (.exe) وهو الملف القابل للتنفيذ .الملفات القابلة للتنفيذ :وهكذا ، فإن محرر النص ينتج ملفات المصدر (.c) ، والتى ذهبت إلى المترجم ، الذى ينتج ملفات الهدف (.obj) ، والتى تذهب إلى الرابط ، الذى ينتج الملفات القابلة للتنفيذ (.exe) . عندئذ يمكنك تشغيل الملفات القابلة للتنفيذ كما فى تطبيقات النوافذ الأخرى الأخرى .[/font][/color] | |
| | | Admin .:: رئيس مجلس إدارة المنتدى ::.
دولتي : مساهماتي : 1759 dsd : 11 إنضمامي : 29/12/2013
| موضوع: رد: للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C الثلاثاء مايو 20, 2014 11:53 am | |
| الدرس الثانى : هيكل (بناء) برامج لغة السى :الأهداف :بعد الانتهاء من هذا الدرس يجب عليك :· معرفة مجموعة أحرف character لغة السى .· معرفة الكلمات الخاصة keyword المحجوزة بلغة السى . · معرفة الهيكل (البناء) العام لبرنامج لغة السى .· معرفة أن جميع عبارات لغة السى يجب أن تنتهى بالفاصلة المنقوطة .· معرفة أن لغة السى هى لغة حرة التنسيق .· معرفة أن جميع برامج لغة السى تستخدم "ملفات رأس" والتى تحتوى على دوال المكتبة القياسية .1- مجموعة أحرف لغة السى C's Character Set :لغة السى لا تستخدم ، ولا تتطلب استخدام كل حرف موجود بلوحة مفاتيح الكومبيوتر . الحروف الوحيدة المطلوبة للبرمجة بلغة السى هى ما يلى : - الكود:
-
A – Z a –z 0 – 9 space . , : ; ' $ " # % & ! _ {} [] () < > | + - / * = استخدام معظم هذه المجموعة من الحروف سوف يتم مناقشته خلال الدروس اللاحقة . 2- شكل برنامج لغة السى :تتكون جميع برامج لغة السى من "دالة" function واحدة على الأقل ، ولكن من المعتاد ( عندما تتقدم فى البرمجة) كتابة برنامج لغة السى والذى يضم عدة دوال . الدالة الوحيدة التى يجب أن تكون موجودة هى الدالة المسماة "الرئيسية" main . فى البرامج الأكثر تقدما ، فإن الدالة الرئيسية سوف تكون بمثابة الدالة المسيطرة (المتحكمة) والتى تستدعى الدوال الأخرى كل فى دورها للقيام بالعمل الأدنى . الدالة الرئيسية هى الدالة الأولى التى يتم استدعاؤها عند تنفيذ البرنامج . لغة السى تستخدم 32 كلمة خاصة فقط ، والتى يتم مزجها فى صيغة بناء جمل لتشكل لغة البرمجة سى . لاحظ أنه يتم كتابة جميع الكلمات الخاصة بالأحرف الصغيرة ، فلغة السى تستخدم النص المكتوب بالأحرف الصغيرة والنص المكتوب بالأحرف الكبيرة بمعنى مختلف . إذا كنت غير متأكد مما يمكن استخدامه ، عندئذ استخدم دائما النص بالحروف الصغيرة عند كتابة برامج لغة السى . لا يجوز استخدام الكلمات الخاصة لأية أغراض أخرى . على سبيل المثال ، لا يمكن أن يكون لديك متغير بالاسم "auto" . 3- تخطيط layout برامج لغة السى : الشكل العام لبرنامج لغة السى يكون كما يلى ( لا تنزعج حول ما يعنى كل شىء فى هذه اللحظة ، سوف يتم شرح كل شىء لاحقا) :ملاحظات :· لاحظ استخدام مجموعة الأقواس () و {} . حيث تستخدم الأقواس () متلازمة مع أسماء الدوال ، فى حين أن الأقواس {} تستخدم لتحديد (حدود البداية والنهاية) عبارات لغة السى التى ترتبط مع هذه الدالة .· لاحظ أيضا الفاصلة المنقوظة ، نعم هى موجودة ، لكنها قد تغيب عن ذاكرتك . تستخدم الفاصلة المنقوطة فى "إنهاء" عبارات لغة السى . كما ذكرنا لغة السى هى لغة تنسيق حر ويمكن أن تستمر العبارات الطويلة من دون إنقطاع على السطر التالى . الفاصلة المنقوطة تخبر مترجم لغة السى بأنه قد تم الوصول إلى نهاية العبارة . التنسيق الحر يعنى أيضا أنه يمكنك إضافة العديد من الفراغات spaces كما تريد لتحسين مظهر البرنامج الخاص بك . وهناك خطأ شائع جدا عند الجميع وخاصة عند بداية تعليم البرمجة بلغة السى وهو نسيان وضع الفاصلة المنقوطة فى نهاية العبارة . عندئذ سوف يعتبر المترجم عدد من العبارات كعبارة واحدة (لعدم وجود نهاية لكل عبارة) ولن يكون قادرا على فهمها وسوف ينتج رسالة خطأ للإشارة لسطر البرنامج والذى يمكن أن يكون على مسافة ما من بداية الخطأ . 4- موجهات المعالج Preprocessor Directives :جميع البرامج التى سوف تكتبها ستحتاج إلى الاتصال بالعالم الخارجى . لذلك فإن جميع برامج لغة السى سوف تحتاج على الأقل لواحدة من المكتبات القياسية للغة السى والتى تتعامل مع إدخال وإخراج البيانات . أشهر وأهم هذه المكتبات هى المسماه stdio.h (مكتبة الدخل والخرج القياسى) ويتم إعلانها فى برامجنا قبل الدالة الرئيسية . الامتداد (.h) يشير إلى أن هذا الملف هو ملف رأس header . لقد سبق وذكرنا أن لغة اسى هى لغة التنسيق الحر وهذا يمكنك من تخطيط برامجك كما تريد باستخدام الفراغات . الاستثناء الوحيد هو العبارات المرتبطة بالمعالج .تبدأ جميع موجهات المعالج بالرمز (#) ويجب أن يبدأ من أو السطر (العامود الأول) . التوجيه الأكثر استخداما فى جميع برامج لغة السى هو : - الكود:
-
#include "stdio.h" لاحظ استخدام الأقواس < > حول اسم ملف الرأس . هذه الصيغة تعنى أن ملف الرأس موجود فى نفس مكان باقى تطبيقات البرمجة بلغة السى أى مكان المترجم . أحيانا تستخدم الصيغة التالية : - الكود:
-
#include "stdio.h" علامات التنصيص " " تشير إلى أنه يجب البحث عن ملف الرأس المطلوب فى مكان مختلف عن مكان تطبيق لغة السى . ملاحظة :عبارات المعالج ، مثل include ، لا تستخدم الفاصلة المنقوطة كنهاية لها ، ولكن لا تنسى الرمز # فى أول السطر . هذا يكفى كخلفية لبرامج لغة السى ، والتقدم إلى أول برنامج والذى سوف يبدأ فى جمع بعض الأفكار المذكورة أعلاه معا . | |
| | | Admin .:: رئيس مجلس إدارة المنتدى ::.
دولتي : مساهماتي : 1759 dsd : 11 إنضمامي : 29/12/2013
| موضوع: رد: للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C الثلاثاء مايو 20, 2014 11:55 am | |
| الدرس الثالث : برنامجك الأول :الأهداف :بعد الانتهاء من هذا الدرس يجب عليك :· معرفة "توجيه المعالج" الذى يجب أن يكون موجود فى جميع برامج لغة السى الخاصة بك .· معرفة الدالة البسيطة للغة السى المستخدمة فى كتابة المعلومات على الشاشة .· معرفة طريقة إضافة "تعليقات" comments لبرنامجك . الغرض من هذا البرنامج البسيط مجرد التأكد من فهم الأساسيات الأولية للدخول إلى هذه اللغة . كالمعتاد ، البرنامج هو برنامج الترحيب بهذا العالم الجديد "Hello World" . كل ما يقوم به هذا البرنامج هو طباعة الرسالة "Hello World" على الشاشة . البرنامج : - الكود:
-
#include <stdio.h> int main() { printf("Hello World\n"); } · السطر الأول هو البداية القياسية (الموحدة) لجميع برامج لغة السى main() . بعد ذلك يأتى فقط تعليمات البرنامج داخل أقوس معرجة {} . الأقواس المعرجة {} تكون بمثابة "علامة" بداية ونهاية قائمة التعليمات التى تشكل البرنامج ، فى حالتنا هذه يوجد تعليمة واحدة فقط . · لاحظ الفاصلة المنقوطة والتى تكون بمثابة "علامة" على نهاية التعليمة . حاول التعود وضع الفاصلة المنقوطة فى نهاية كل تعليمة للغة السى ، فإن ذلك سوف يوفر لك الكثير من المتاعب . أيضا لاحظ أن الفاصلة المنقوطة هى علامة لنهاية التعليمة وليست كفاصلة كما فى بعض اللغات الأخرى . إذا كنت فى حيرة عن سبب وجود الأقواس المعرجة {} على أسطر منفصلة ! فهذا مجرد تخطيط متفق عليه لمساعدتك على التركيز والتعرف على الأقواس المتناظرة (المتطابقة) . لغة السى لا تعتنى بطريقة التخطيط . على سبيل المثال ، يمكنك إدخال البرنامج السابق بالشكل التالى : - الكود:
-
main(){printf("Hello World\n");} ولكن هذه الصيغة غير مألوفة .· الدالة printf تفعل ما يوحى به اسمها فهى "تطبع" على الشاشة كل ما تخبرها به . الرمز "\n" هو أحد الرموز الخاصة والذى "يجبر" المؤشر على الانتقال إلى "سطر جديد" على الشاشة (من أول السطر) . حسنا ، نكتفى بهذا الشرح لأول برنامج . اكتب البرنامج ، واحفظه باسم Hello.c . بعد ذلك استخدم المترجم لترجمته ، ثم تشغيله . الخرج يكون بالشكل التالى : - الكود:
-
Hello World إضافة تعليقات comments إلى البرنامج :التعليق هو "ملاحظة" لنفسك أو لغيرك والذى يوضع فى كود المصدر الخاص بك . يتم تجاهل جميع التعليقات من قبل المترجم . فهى توجد فقط لمصلحتك . تستخدم التعليقات فى المقام الأول لتوثيق المعنى والغرض من كود المصدر ، بحيث يمكنك تذكر فى وقت لاحق ، طريقة العمل والاستخدام . أيضا يمكنك استخدام التعليق فى إزالة سطر من البرنامج بشكل مؤقت . ببساطة ، بإحاطة السطر أو السطور برموز التعليق .فى لغة السى ، يتم الإشارة إلى "بدء التعليق" بزوج الحروف (/*) (شرطة مائلة يليها نجمة)، كما يتم الإشارة إلى "نهاية التعليق" بزوح الحروف (*/) (نجمة يليها شرطة مائلة) ، كما فى المثال التالى : - الكود:
-
/* This is a comment. */ يمكن أن تمتد التعليقات على مدى عدة أسطر ، ويمكن أن تذهب إلى أى مكان باستثناء وسط أى كلمة خاصة بلغة السى ، أو اسم دالة ، أو اسم متغير . فى لغة السى لا يمكن أن يكون لديك أحد التعليقات داخل تعليق آخر . أى لا يجوز وجود تعليقات متداخلة . والآن لنرجع إلى برنامجنا الأول ونعيد كتابته مع كتابة تعليقات عليه ، ليصبح بالشكل التالى : - الكود:
-
main() /* main function heading */ { printf("\n Hello, World! \n"); /* Display message on */ } /* the screen */ هذا البرنامج ليس كبير بما يكفى لتبرير وضع التعليقات ، ولكن المبدأ واحد . | |
| | | Admin .:: رئيس مجلس إدارة المنتدى ::.
دولتي : مساهماتي : 1759 dsd : 11 إنضمامي : 29/12/2013
| موضوع: رد: للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C الثلاثاء مايو 20, 2014 11:55 am | |
| تدريب :سوف نستخدم برمجيات مترجم لغة السى المعروف باسم Dev-C++ . البرمجيات Dev-C++ هى بيئة تطوير متكاملة IDE للغة البرمجة C / C++ . هذه البرمجيات مجانية ، ويمكن تحميل آخر إصدار من الموقع :http://www.bloodshed.net/devcpp.html خطوات التدريب :· شغل البرنامج .· من قائمة File اختار New ثم Source file :· يتم فتح نافذة المحرر :· قم بكتابة البرنامج داخل نافذة المحرر ، واحفظه باسم Hello.c (لاحظ الامتداد c ) .· من القائمة Execute اختار Compile لترجمة البرنامج :وانتظر تمام نجاح الترجمة من دون أخطاء وانقر على Close :· لتشغيل البرنامج : من من نفس القائمة اختار Run لعرض Hello World على الشاشة . ملحوظة :لإظهار العرض على الشاشة يتم إضافة الدالة getch(); بعد الدالة printf ثم إعادة الترجمة والتشغيل . | |
| | | Admin .:: رئيس مجلس إدارة المنتدى ::.
دولتي : مساهماتي : 1759 dsd : 11 إنضمامي : 29/12/2013
| موضوع: رد: للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C الثلاثاء مايو 20, 2014 2:19 pm | |
| الدرس الرابع : أنواع البيانات Data Types : الجزء الأول : الأهداف : بعد هذا الدرس يجب أن تكون قادرا على : · إعلان declare (تسمية) متغير محلى local فى شكل واحد من خمس أنواع من بيانات لغة السى . · تهيئة initialize المتغيرات المحلية . · إجراء (تنفيذ) العمليات الحسابية البسيطة باستخدام المتغيرات المحلية . الآن حان الوقت لبدء النظر فى تفاصيل لغة السى . مدى السهولة التى سوف تجدها فى بقية هذا الدرس سوف تعتمد على ما إذا كنت فى أى وقت مضى قد مارست برمجة أى لغة كانت . فهناك عدد كبير من الأفكار مشتركة بين لغات البرمجة ، ولغة السى ليست استثناء من هذه القاعدة . ولذلك ، فإذا لم تكن قدر مارست البرمجة من قبل فعليك أن تأخذ باقى هذا الدرس ببطىء وتستمر فى ذلك حتى تفهمه جيدا . أول شىء تحتاج إلى معرفته هو أنه يمكنك إنشاء "متغيرات" لتخزين القيم بها . "المتغير" variable هو مجرد "منطقة تخزين لها اسم" والتى يمكن أن "تحتفظ بقيمة واحدة" ( رقمية أو حرفية) . لغة السى تتطلب منك "إعلان اسم" لكل متغير تنوى استخدامه وكذلك "نوعه" ، أو فئته ، قبل أن تحاول القيام بأى شىء معه فعليا . فى هذا الدرس سوف نناقش "المتغيرات المحلية" فقط ، وهى المتغيرات التى تستخدم داخل وحدة البرنامج الحالى (أو الدالة) ، فى درس لاحق سوف نناقش المتغيرات العمومية global ، وهى المتغيرات التى تتوفر لجميع دوال البرنامج . يوجد خمسة "أنواع أساسية" للبيانات مرتبطة مع المتغيرات : · العدد الصحيح int – integer . · العدد الحقيقى أى العدد الذى يحتوى كسر عشرى float . · العدد الحقيقى المزدوج double . · الحرف المفرد char . · عدم وجود قيمة void (وهو نوع خاص سوف نتناوله لاحقا) . لاحظ أن جميع اسماء متغيرات لغة السى يجب أن تبدأ بحرف إو الشرطة التحتية " _ " . 1- متغيرات العدد الحقيقى : النوع الأول من المتغيرات هو متغير العدد الحقيقى ويكتب اختصارا int . المتغير int يمكن أن يخزن قيمة فى المدى -32768 to +32767 . فهو عدد صحيح موجب أو سالب ولا يسمح بوجود كسر به . لإعلان المتغير من نوع int نستخدم صيغة التعليمة التالية : كود: مثال : إعلان متغير من النوع int باسم "a" : كود: لتخصيص أو لتعيين قيمة للمتغير نستخدم صيغة التعليمة التالية :كود: ملحوظة : لغة السى تستخدم الحرف "=" فى "التخصيص" . فالعبارة بالشكل a=10 يجب أت تفسر بمعنى "خذ القيمة الرقمية 10 وخزنها فى مكان الذاكرة المرتبط بمتغير الحدد الصحيح a " . لا ينبغى النظر إلى الحرف "=" باعتبارة "تساوى" ، فعلى سبيل المثال العبارة : كود: يجب تفسيره كما يلى " (الطرف الأيمن) أخذ القيمة الحالية المخزنة فى موقع الذاكرة المرتبط بمتغير العدد الصحيح a ، وإضافة القيمة الرقمية 10 إليه ثم بعد ذلك (الطرف الأيسر) استبدل هذه القيمة بالقيمة الموجودة بموقع الذاكرة المرتبط بالمتغير a" . 2- متغيرات العدد العشرى الحقيقى (جزء عدد صحيح وجزء كسرى) : كما هو موضح أعلاه ، متغير العدد الصحيح لا يوجد به جزء كسرى . متغيرات العدد الصحيح يغلب استخدامها فى "العد" counting ، فى حين تستخدم الأعداد الحقيقية فى العمليات الحسابية . لغة السى تستخدم واحدة من كلمتين خاصتين لإعلان المتغير المرتبط مع العدد العشرى الحقيقى : كلمة float وكلمة double ، وكل منهما تقدم مستوى مختلف من الدقة للجزء الكسرى كما هو مبين على النحو التالى : أ- العدد من نوع float : هذا النوع يكون له دقة حوالى 7 أرقام ويكون فى المدى 1.E-36 إلى 1.E+36 ، هذا العدد يأخذ أربعة بايت للتخزين . ب- العدد من النوع double : هذا النوع من العدد يكون له دقة حوالى 13 رقم ويكون فى المدى 1.E-303 إلى 1.E+303 . هذا العدد يأخذ 8 بايت للتخزين . مثال :كود: لتخصيص أو تعيين قيمة رقمية لعذه الأنواع يجب أن نستخدم الصيغ التالية :كود: 3- المتغيرات من نوع "الحرف" character : لغة السى لديها مفهوم "الأرقام" و"الحروف" . لإعلان متغير من نوع الحرف نستخدم كلمة لغة السى الخاصة char . يتم تخزين الحرف الواحد فى بايت واحد . مثال :كود: تخصيص أو تعيين أو تخزين "قيمة حرف" فى نوع البيانات char يكون سهلا : فالمتغير الحرفى هو مجرد 'رمز محاط بعلامتى تنصيص مفردة' . على سبيل المثال ، إذا كان c متغير من نوع char فيمكنك تخزين الحرف A به باستخدام عبارة لغة السى التالية : كود: ملحوظة : يمكنك فقط تخزين حرف واحد فى متغير من النوع char . لاحقا سوف نناقش استخدام سلاسل الحروف النصية strings ، وسوف نرى أن "السلاسل النصية الثابتة تكتب بين علامتى تنصيص مزدوجة" . لكن حتى الآن تذكر أن المتغير من نوع char يكون بالشكل 'A' وليس "A" . عبارة التخصيص أو التعيين : بمجرد أن تقوم بإعلان المتغير ، يمكنك استخدامه ، ولكن ليس حتى يتم إعلانه ، وإلا أعطى المترجم رسالة خطأ عند الترجمة . استخدام المتغير يعنى تخزين شىء ما به . يمكنك تخزين قيمة فى المتغير باستخدام الصيغة التالية : كود: مثال : كود: وذلك لتخزين القيمة 10 فى المتغير a من نوع int . هل يوجد أبسط من ذلك ؟ كلا ، ولكن ذلك فى الوقع ليس مفيدا جدا ! ما يجعل المتغيرات مفيدة هو أنه يمكنك استخدامها لتخزين نتيجة بعض العمليات الحسابية . نظرة على الأربع عمليات الحسابية البسيطة : الجمع والطرح والضرب والقسمة ، ونرى كيف تستخدم لغة السى هذه العمليات على المتغيرين a,b من نوع float : · الجمع :a+b · الطرح :a-b · الضرب :a*b · القسمة :a/b لاحظ أننا استخدمنا الحروف التالية من ضمن مجموعة حروف لغة السى : "+" للجمع ، و "-" للطرح و "*" للضرب و "/" للقسمة . تنبيه عند إجراء العمليات الحسابية : ما هى نتيجة (إجابة) حساب العملية التالية : كود: النتيجة (الإجابة) تعتمد على "طريقة إعلان المتغير a " : · فإذا كان قد تم إعلانه على أنه من النوع int ، فإن النتيجة سوف تكون "3" . · وإذا كان قد تم إعلانه على أنه من النوع float ، فإن النتيجة سوف تكون "3.333" . ومن ثم نستنتج ما يلى : 1- لغة السى تتجاهل الكسور عند القيام بعملية قسمة إعداد صحيحة . 2- عند القيام بعمليات حسابية من نوع float فسوف يتم تحويل الأعداد الصحيحة إلى أعداد حقيقية . تذكر ترتيب العمليات الحسابية : مثال : كود: a=10.0 + 2.0 * 5.0 - 6.0 / 2.0 إذا استخدمت الآلة الحاسبة سوف تحصل على 27 . ولكن الكومبيوتر له مجموعة قواعد حسابية خاصة به يطبقها عند القيام بالعمليات الحسابية . حيث تتم أولا عمليات الضرب والقسمة ثم بعد ذلك تتم عمليات الجمع والطرح ، فى هذه الحالة تكون النتيجة 17 . ولتجنب الارتباك نستخدم الأقواس ، وفيما يلى شكلين مختلفين نفس الأرقام يعطيان نتائج مختلفة : كود: a=10.0 + (2.0 * 5.0) - (6.0 / 2.0) a=(10.0 + 2.0) * (5.0 - 6.0) / 2.0 يمكنك المزج وبحرية بين المتغيرات int و float و double فى التعبيرات . وفى جميع الحالات تقريبا يتم تحويل القيم الأقل دقة إلى القيم الأعلى دقة المستخدمة فى التعبيير . على سبيل المثال ، التعبير "f*i" حيث f هو float و i هو int ، يتم تقييمه عن طريق تحويل int إلى float ثم الضرب . والنتيجة النهائية تكون بالطبع float ، ولكن يمكن يمكن تخصيص النتيجة لنوع آخر من البيانات ويتم التحويل تلقائيا . فإذا تم التخصيص لنوع أقل دقة عندئذ فإنه يتم قطع القيمة وليس تقريبها . بعبارة أخرى ، فى جميع الحالات تقريبا يمكنك تجاهل مشاكل التحويل بين الأنواع . هذا معقول جدا ، ولكن الأكثر إثارة للدهشة هو حقيقة أنه أيضا يمكن المزج وبحرية نوع البيانات char مع البيانات int و float و double . يمثل الحرف ككود أسكى ASCII أو بكود آخر فى المدى من 0 إلى 255 ، وإذا رغبت يمكنك استخدام قيمة هذا الكود (عدد الصحيح) فى العمليات الحسابية . طريقة أخرى للتفكير حول ذلك ، وهى اعتبار المتغير char مجرد متغير لعدد صحيح لبايت واحد والذى يمكن أن يحتفظ بالأرقام من 0 إلى 255 ، والذى يمكن أن يفسر اختياريا على أنه حرف . المزيد عن إعلان المتغيرات : قبل أن تتمكن من استخدام المتغير يجب عليك إعلانه . كما رأينا أعلاه ، للقيام بذلك "نصرح بنوعه ثم نعطى له اسم" . على سبيل المثال ، int i هو إعلان عن متغير نوع العدد صحيح . يمكنك أن تعلن عن أى عدد من المتغيرات من نفس النوع بعبارة واحدة كما يلى : كود: وهنا يتم الإعلان عن ثلاثة متغيرات من نوع int وهى a,b,c . يجب عليك إعلان جميع المتغيرات التى تريد استخدامها فى بداية البرنامج . لاحقا سوف تكتشف أن مكان إعلان المتغير يحدث فرقا ، ولكن الآن يجب عليك وضع الإعلانات بعد قوس بداية الدالة الرئيسية للبرنامج . | |
| | | Picasso عضو مبتدئ
دولتي : مساهماتي : 62 dsd : 0 إنضمامي : 22/05/2014 عمري : 25
| موضوع: رد: للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C الجمعة مايو 23, 2014 7:48 pm | |
| | |
| | | iness .:: مشرفة عامة ::.
دولتي : مساهماتي : 308 dsd : 3 إنضمامي : 06/08/2014 عمري : 24 مكاني : تيبازة
| موضوع: رد: للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C الأحد أغسطس 10, 2014 12:17 pm | |
| انت مبدع دائماااااااااااااااااااا مشكوووووووووووووووووووووووور | |
| | | chaima98 .:: عضوة مجلس إدارة المنتدى ::.
دولتي : مساهماتي : 396 dsd : 8 إنضمامي : 23/06/2014 عمري : 26 مكاني : وهران
| موضوع: رد: للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C الثلاثاء أغسطس 12, 2014 1:18 pm | |
| شكرا لك على الدورة مفيدة جدا | |
| | | | للمبتدئيين: دورة : المدخل للبرمجة بلغة السى Introduction to C | |
|
مواضيع مماثلة | |
|
| صلاحيات هذا المنتدى: | لاتستطيع الرد على المواضيع في هذا المنتدى
| |
| |
| أفضل 10 أعضاء في هذا الأسبوع | |
أفضل 10 أعضاء في هذا المنتدى | |
أفضل 10 أعضاء في هذا الشهر | |
المواضيع الأخيرة | » أفضل شركة تشطيبات في مصر من طرف كاميرات مراقبة السبت سبتمبر 05, 2020 4:55 pm
» أفضل شركة تشطيبات في مصر من طرف كاميرات مراقبة السبت سبتمبر 05, 2020 4:54 pm
» أقوي شركة نشطيبات في مصر 2020 من طرف كاميرات مراقبة الإثنين أغسطس 17, 2020 4:32 pm
» أفضل شركه اتصالات حديثة 2020 من طرف كاميرات مراقبة الخميس أغسطس 13, 2020 2:41 am
» تشطيب شقق وفيلل بأقل الاسعار واعلي مستوي 2020 من طرف كاميرات مراقبة الخميس مارس 19, 2020 10:01 pm
» تشطيب شقق وفيلل بأقل الاسعار واعلي مستوي 2020 من طرف كاميرات مراقبة الثلاثاء يناير 28, 2020 8:52 pm
» شركة تشطيبات وديكورات 2020 من طرف كاميرات مراقبة الأحد يناير 12, 2020 3:08 pm
» تشطيب شقق وفيلل بأقل الاسعار واعلي مستوي 2020 من طرف كاميرات مراقبة الإثنين ديسمبر 30, 2019 5:39 pm
» شركة تشطيبات بأسعار وخصومات 2019 من طرف كاميرات مراقبة الإثنين ديسمبر 02, 2019 7:05 pm
» شركة أنظمه أمنيه وكاميرات مراقبة 2019 من طرف كاميرات مراقبة الخميس سبتمبر 19, 2019 4:16 pm
» شطب شقتك او فيلتك علي اعلي مستوى باقل التكاليف من طرف كاميرات مراقبة الأحد سبتمبر 01, 2019 3:45 pm
» أفضل انواع كاميرات مراقبة 2019 من طرف كاميرات مراقبة الإثنين أغسطس 26, 2019 4:19 pm
» كاميرات مراقبة منزلية من شركة دي سي اس مصر من طرف كاميرات مراقبة الأحد أغسطس 04, 2019 4:52 pm
|
|
|