Transcript الفصل الأول
مقدمة عن البرمجة باستخدام Visual Basic .Net الفصل األول مقدمة للبرمجة • نظام المعلومات •العمليات التي يقوم بها الكمبيوتر •البرامج والبرمجة نظام المعلومات • البيان ()Data •المعلومة ()Information البيان عمليات معلومة 40 35 30 25 منتج أ منتج ب منتج ج 20 15 10 5 فبراير يناير 0 • • منتج أ • منتج ب • منتج ج يناير 20 25 40 فبراير 30 20 23 العمليات التي يقوم بها الكمبيوتر • إدخال البيانات ()Input Data • تخزين البيانات ()Store Data • إجراء عمليات حسابية ()Arithmetic Operations • مقارنة القيم واالختيار ( compare and make )decisions • تكرار أمر أو مجموعة من األوامر ( Repeat )Operations • إخراج النتائج ()Output Information 1 عمليات الكمبيوتر البيانات Data 2 تخزين البيانات في الذاكرة Store data in Memory 3 4 العمليات الحسابية Arithmetic Operations مقارنة القيم واالختيار Compare & Make Decisions 5 تكرار العمليات Repeat Operations 6 المخرجات (المعلومة) )Output (Information البرامج والبرمجة Programs and Programming Programming Languages • لغات البرمجة machine language لغة اآللة High level ) لغات البرمجة (لغات عالية المستوى language لغات البرمجة High level language المترجم Compiler المفسر Interpreter )1 - 0( لغة اآللة Machine language 1111001011001001101101 الفصل الثاني خرائط التدفق ()Flow Charts • مقدمة ()Introduction • خرائط التدفق ()Flow Charts مقدمة حل المسألة Introduction to problem solving Define the problem تعريف وتحديد المسألة إعطاء اسماء لكل البيانات المعطاة في المسألة والتي ستدخل الحل Giving names to data (Variables) )(المتغيرات إهمال البيانات غير الهامة في الحل Discard all unnecessary information إيجاد العالقات بين المتغيرات ووضعها في معادالت express the relations between variables as functions Determine ترتيب المعادالت الترتيب المنطقي للوصول إلى الحل the proper algorithm by arranging the equations in correct sequence • • • • • Example مثال A school has 1000 students of whom 48 percent are boys. The school gave a party which 70 percent of the students attended. If 60 percent of those attending were boys, how many girls attended the party? منهم%48 ،1000 عدد الطلبة والطالبات في مدرسة هو قامت المدرسة بعمل حفل حضره، والباقي أوالد،بنات %60 فإذا عرفنا أن. من إجمالي الطلبة والطالبات%70 من الحضور كانوا من األوالد فما عدد البنات الالتي حضرن الحفل؟ الحل: -1السؤال المطلوب اإلجابة عنه هو ”ما هو عدد البنات في الحفل؟ -2إجمالي عدد األوالد والبنات في الحفل = x عدد األوالد في الحفل = y عدد البنات في الحفل = z %48 -3من طلبة المدرسة من البنات بيان غير مؤثر في الحل ويجب إهماله. -4العالقات بين المتغيرات: أ %70 -من إجمالي األوالد والبنات حضروا الحفل ()x ب %60 -من الحضور أوالد ()y ت -الفرق بين xو yيمثل عدد الحاضرات، وعليه فإن المعادالت التي تمثل العالقات تكون: a. x = 1000 * 0.70 b. y = x * 0.60 c. z = x - z -5وحيث إن المتغير xيجب أن يكون معروفا ً لحساب المتغير .yكما أن المتغير zال يمكن حسابه إال بعد معرفة قيم x,yفإن الترتيب السابق يكون هو الترتيب المنطقي للمعادالت. Solution: 1 - The question is: “How many girls attended the party?” 2 - Let x = the total number of students attending the party Let y = the number of boys attending the party Let z = the number of girls attending the party 3 - The given fact that 48 percent of the students are boys has no effect on the problem and may be discarded. 4 - The relationships stated are: a. 70 percent of the students attended ( x ) b. 60 percent of those attending were boys ( y ) c. This implies that the difference between x and y represents the number of girls attending (z). So, we express these relationships as the following equations: a. x = 1000 * 0.70 b. y = x * 0.60 c. z = x – y 5 - Since the variable x must be known to find the variable y and both x and y must be known in order to find z, the equations must be solved in the given order. Flow Charts خرائط التدفق بطريقةAlgorithm هي عرض وكتابة الـ:• خرائط التدفق .تخطيطية تعتمد على الرسم The flowchart is a mean of visually presenting the flow of data through an information processing systems • خرائط التدفق هي تمثيل بياني يعتمد على الرسم لتوضيح ترتيب .العمليات الالزمة لحل مسألة A flowchart is a diagrammatic representation that illustrates the sequence of operations to be performed to get the solution of a problem. الرموز األساسية في خرائط التدفق Standard Symbols إدخال/إخراج قرار/اختيار عملية رمز طرفي المفسر أكثر األشكال استخداما More used shapes • الرمز الطرفي ()Terminal • إدخال /إخراج ()Input/ Output • معالجة /عملية ()Process • قرار /اختيار ()Decision • خط اتجاه ()Flow line إرشادات رسم خرائط التدفق Guidelines for drawing flow charts .1نظافة الخريطة وسهولة التتبع. .2االتجاه الطبيعي للعمليات والبيانات (من اليسار إلى اليمين ومن أعلى إلى أسفل) .3أي رمز معالجة /عملية يجب أن يخرج منه خط اتجاه واحد. .4أي رمز قرار /اختيار يجب أن يدخل فيه خط اتجاه واحد فقط ولكن من الممكن أن يخرج منه خطان على األقل أو أكثر. .5الرمز الطرفي به خط اتجاه واحد فقط إما داخل إليه وإما خارج إليه .6لكتابة المالحظات نستخدم رمز المفسر .7إذا تعقدت خرائط التدفق وأصبحت كبيرة فمن األفضل تقسيم الخريطة إلى أجزاء أصغر وربطها برمز الربط . o .8يجب التأكد من أن الخريطة لها بداية واحدة وأن الدخول من عند البداية يجب أن يؤدي بنا إلى النهاية. .9من األفضل اختبار صالحية الخريطة باستخدام مدخالت معروف قيمة مخرجاتها مسبقا. مميزات خرائط التدفق Advantages of Flow Charts Communication اإلتصال Effective analysis تحليل األفعال Proper documentation توثيق صحيح Efficient coding تكويد كفء Proper debugging تصحيح األخطاء Efficient program كفاءة إصالح البرنامج maintenance .1 .2 .3 .4 .5 .6 عيوب خرائط التدفق Disadvantages of Flow Charts Complex logic أسلوب معقد Alterations and modifications إجراء تعديالت Copying النسخ More Details كثرة التفاصيل .1 .2 .3 .4 بعض األمثلة على خرائط التدفق Some examples on Flow Charts المثال األول ارسم خريطة تدفق لتبين ما هي الخطوات التي ستقوم بها في حالة عدم عمل إحدى لمبات اإلضاءة؟ Draw flow chart to represent what will ?you do if your lamp doesn’t work رمز طرفي Terminal المفسر Annotation Lamp doesn’t work اللمبة ال تعمل خط اتجاه Flow line اختيار/ قرار Decision Lamp Plugged in? NO Plug in lamp هل اللمبة في الفيشة Yes Lamp burned out? NO Call electrician Yes Replace lamp هل اللمبة محترقة المثال الثاني ارسم خريطة تدفق لتبين عملية قراءة رقمين ثم قسمتهما .وإظهار ناتج القسمة Draw flow chart to represent the process of reading two numbers, dividing them, and displaying the result Start إخراج/إدخال Input / Output Read number1 Read number2 Is number2 = 0? Yes NO Result = number1 / number2 Output the result Print “Division is impossible” عملية Process End End المثال الثالث ) رقم طبيعي (صحيح100 ارسم خريطة تدفق لحساب حاصل جمع أول :وهذا يعني أننا نريد أن نحسب ما يلي 100 + 99 +............. + 3 + 2 + 1 = المجموع Draw flow chart to find the sum of first 100 natural numbers. This means that we want to find sum where sum is given by: Sum = 1 + 2 + 3 +…………… + 99+100 Sumهو المتغير الذي يمثل المجموع Nهو المتغير الذي يمثل الرقم الطبيعي Start Sum = 0 =New value of sum old value of sum + N N=0 N=N+1 Sum = Sum + N End Print Sum هل عدد األرقام التي تم جمعها 100؟ Yes ?Is N = 100 NO المثال الرابع ارسم خريطة تدفق إليجاد الرقم األكبر من بين ثالثة أرقام A,B,C Draw flow chart to find the largest from three numbers A,B and C Start Read A,B,C Yes Is B > C ? NO Is A > B ? Yes Is A > C ? Yes NO NO Print C Print B End Print A قامت دنيا برسم خريطة تدفق لعملية جمع عددين قم بتصحيح الخطأ فيها الخريطة بعد التصحيح الخريطة قبل التصحيح