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
قامت دنيا برسم خريطة تدفق لعملية جمع عددين
قم بتصحيح الخطأ فيها
الخريطة بعد التصحيح
الخريطة قبل التصحيح