شاركي في النقاش

سجلي الدخول لإضافة تعليق.

التعليقات

14
  1. @smsm_2

    صاحبة الموضوع
    السلام عليكم ورحمة الله وبركاته أنا جيتلكم ومعايا أول درس من لغة السي لكن الأول لازم تعرفو إيه هيه لغة السي لغة السي هي لغة من لغات البرمجة الكثيرة الموجودة مثل الجافا والباسكال والسي ++ والتي تسطيع من خلالها كتابة أي برنامج يخطر على بالك من برامج الكمبيوتر
    أولا : يجب ان تعرف كيف تعلن عن المتغيرات التي سوف تستخدمها في برنامجك

    ماهي المتغيرات

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



    المتغير

    (الوعاء الذي سيستقبل البيانات)
    النوع المفترض ان يكون (منطقيا)

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

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

    الراتب الشهري


    متوقع ان يكون عدد عشري به كسور مثل 355.5


    اذا لابد من التفكير في كيفية المتغيرات المناسبة لكل بيان فمثلا لو اخطأت واخترت بيان الراتب عدد صحيح فاذا كان راتبه وهو شئ متوقع 355.5 فلن يقبل لان البرنامج سوف يحوله الى عدد صحيح مقرب وهو 356 وهو ليس خطأ البرنامج وانما خطئك انت لانك اعلنت ان متغير الراتب عدد صحيح فما ذنب بائع الفاكهه اذا طلبت منه شراء تفاح وانت تقصد برتقال انما قام البائع بتنفيذ ما سمعه منك مثل هذا الخطأ يسمى خطأ منطقي لان الكومبيوتر لا يعترض عليه

    بقى ان تعرف ان معظم اللغات تقدم حيز تخزين مختلف لكل نوع من البيانات وسيتضح ذلك كما يلي

    متغيرات الاعداد الصحيحة




    int


    long


    unsigned long






    فمثلا لتحديد رقم الموظف سوف نستخدم النوع الاول اذا كان اجمالي عدد الموظفين بالشركة لا يزيد عن

    32767 ولانستخدم النوع الثاني مع انه مقبول والسبب ان النوع الثاني سوف يحجز اربعة بايتات للرقم

    في حين انني احتاج الى اثنين فقط مع المتغير الاول وبالتالي تتضخم ملفات البيانات بلا داعي

    المثال

    int SerialNo;

    long SerialNo;

    unsigned long SeialNo;

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



    متغيرات الاعداد العشرية


    float


    double


    long double


    ملاحظة:


    مثال

    float Salary ;

    double Salary;

    long double Salry;

    بالطبع يمكنك استخدام المتغير الاول لتخزين راتب الموظف ولكن استخدم الثاني لتخزين اجمالي رواتب الموظفين لاعطاء حيز تخزين اكبر

    مثال

    float Salary;

    double TotalSalaries;



    عند استخدام متغير ذو سعة تخزين اقل لاستيعاب رقم او بيان اكبر من سعته فلن يعترض البرنامج ولكن سوف

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



    متغيرات الحروف


    char


    بفرض انك خصصت اقصى عدد لاسم الموظف بثلاثين حرف

    مثال



    char HisName [30];

    والسلام عليكم ورحمة الله وبركاته وإنتظروني في الدرس القادم إن شاء الله
    :24: :26:
  2. هلااا عيووني سمسمة :27:

    اشكرك عزيزتي على شرحك للدرس

    يعطيك ربي الف عااافيه

    بس عندي سؤال وياليت تستحمليني

    ابيك توضحي لي هالنقطه اذا امكن


    فمثلا لتحديد رقم الموظف سوف نستخدم النوع الاول اذا كان اجمالي عدد الموظفين بالشركة

    لا يزيد عن 32767


    واكوون شاكره لك عزيزتي

    في انتظاارك

    دمتِ بخيررر

    تحيااتي لكم بعااطر الود
  3. @smsm_2

    صاحبة الموضوع
    بسم الله الرحمن الرحيم نبتدي الجزء التاني
    ثانيا : يجب ان تعرف ماهي الاوامر في اللغة التي تستخدم لادخال البيانات :

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

    وكمثال من لغة سي :

    المتغير المفترض نوعه

    HisName حروف

    HisSalary اعداد عشرية وكسور

    HisNumber اعداد صحيحة



    كل لغة برمجة تعطيك اماكانات خاصة وكمثال

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



    مثال :



    char buf [20];
    int HisNumber;



    gets (buf);

    HisNumber = atoi (buf);

    اعلنا هنا عن متغير حروف فقط لاستقبال الارقام وبالطبع الدالة gets

    سوف تتعامل معها على انها حروف اي لا يمكن استخدامها في العمليات الحسابية تم استقبال البيانات اي الرقم المسلسل وتم وضعه في المتغير buf

    خاصة وهو كما تعرف سبق الاعلان عنه كمتغير حرفي يستقبل حروف ولكنك ادخلت ارقام لان البرنامج يسألك عن الرقم المسلسل للموظف وقد استقبلت الدلة gets الرقم المسلسل ووضعته في المتغير buf كحروف ميتة مع انه رقم اخيرا قامت الدالة atoi بتحويل المتغير الحرفي buf

    الى متغير عدد صحيح ووضعته في المتغير HisNumber

    والذي اعلن عنه كعدد صحيح
  4. بسم الله الرحمن الرحيم
    السلام عليكم ورحمة الله و بركاته . .
    أشكرك يا أختي * * سمسمة * *
    على طرحك موضوع السي فأنا سمعت عنه و لكن لا أعرف بالضبط ما هو فهل هو برنامج نحمله ونعمل عليه و هل هو نفسه السي ++ مع العلم أني لم اسمع إلا بالسي ++ ولكن لا أعرف أي معلومة عنه ؟؟
    سؤال ثاني .. هل فكرة البرنامج هي نفسها فكرة أكسيسز يعني قاعدة بيانات و نسجل فيها المعلومات المطلوبة ؟؟
    سؤال أخر.. هل من الضروري حفظ المتغيرات اللاتينية التي ذكرتها في الأعلى و كتابتها قبل الشروع في أي عملية لإدخال البيانات ؟؟
    أفيدني عزيزتي بالتفصيل . . و أعتذر على الإطالة :27:
    و دمتي سالمة

تابعي تجارب أخرى من هذا القسم.