Category

python

دروس بايثون للمبتدئين تابع جمل التحكم الشرطية او العبارات الشرطية

الدرس العاشر من دروس بايثون للمبتدئين
تابع جمل التحكم الشرطية او العبارات الشرطية
conditional statement
اتكلمنا فى الدروس السابقة على جمل التحكم الشرطية وعرفنا ان الهدف من كتابتها هو التحكم فى مسار البرنامج
وانها عبارة عن بلوك من الاكواد يرتبط تنفيذها بتحقق شرط معين .

وبدائنا بشرح الحالة الاولى من عبارة if وهى
– simple if
و الحالة الثانية وهى if else
النهاردة هنتكلم على الحالة الثالثة من حالات if وهى if else if
وهى تكتب بالصورة التالية elif .
وتستخدم فى حالة وجود أكثر من شرط او احتمال .

نتيجة بحث الصور عن if statement in python

وهى تاخذ الصيغة التالية

if(condition):
statements1
elif (condition):
statements2
elif (condition):
statements3
.
.
else :
statements

يتم كتابة جملة الشرط بأستخدام عبارة if else if كالتالى :
نبداء بكتابة الكلمة المحجوزة if وبعدها نفتح قوسين ونكتب بداخلهم العبارة او العبارات المراد التحقق من صحتها او الشرط
ويجب ان تكون النتيجة المرجعة منة
boolean (true or false)
وذلك باستخدام احد معاملات المقارنة السابق شرحهم comparison operators
والدمج بينهم عند وجود اكثر من شرط او عبارة باستخدام
and
or
وبعدها نكتب الجملة او الجمل المراد تنفيذها فى حالة تحقق هذا الشرط .
ثم نكتب عبارة elif ونفتح قوسين ونكتب بداخلهم العبارة او العبارات المراد التحقق من صحتها او الشرط الاخر
وبعدها نكتب الجملة او الجمل المراد تتفيذها فى حالة تحقق هذا الشرط .
بعدها يتم تكرار عبارة elif بعدد الاحتمالات او الشروط المتوقعة .
ثم نكتب عبارة else ونكتب بداخلها الجملة او الجمل المراد تنفيذها فى حالة عدم تحقق اى شرط من الشروط السابقة .

ونلاحظ الاتى :
_ فى حالة تحقق الشرط ( نتيجة الشرط true )فى اى شرط يتم تنفيذ الجملة او الجمل الخاصة بهذا الشرط وبعدها يخرج مباشرة من جملة if دون اختبار باقى الشروط .
اما فى حالة عدم تحقق الشرط (نتيجة الشرط false ) فى اى شرط يتم الانتقال مباشرة الى الشرط الذى يلية لحين تحقق الشرط او طباعة الجمل بداخل else (فى حالة ان تكون جميع نتائج جمل الشرط false ).
ثم يتجة البرنامج مباشرة لتنفيذ باقى الاكواد الموجودة داخل البرنامج .

مثال للتوضيح : لو اردنا كتابة برنامج ياخذ رقم من المستخدم وبناء على هذا الرقم يتم طباعة اليوم .

سيتم تعريف متغير يحمل رقم اليوم ومن الممكن استخدام طريقة الادخال السابق شرحها فى الادخال .
بعدها يتم اختبار الشرط الاول فاذا كانت قيمة المتغير تساوى القيمة الموجودة بهذا الشرط (نتيجة الشرط true )
سوف يتم طباعة اليوم . وبالتالى الخروج مباشرة من جملة if دون تنفيذ باقى جمل الشرط .
اما اذا كانت قيمة المتغير لاتساوى القيمة الموجودة بهذا الشرط
سوف ينتقل البرنامج مباشرة الى الشرط الذى يلية وهكذا يتم الانتقال الى الشرط الذى يلية طالما ان نتيجة الشرط false

كتاب #أتعلم البايثون
كتاب البرمجة بلغة بايثون – الجزء الثاني
كتاب تعلم البرمجة مع بايثون 3
المتغيرات في البايثون
Constructors في لغة البايثون 
Joomla مقدمة في إستخدام
SQL في inner join شرح ال
(Intel) كل ما تريد معرفته عن معالجات إنتل
DML مقدمة توضيحية عن
snake game code using HTML & CSS & Javascript كود لعبة الحية بلغة
الفرق بينهم internet & Intranet & Extranet
أفضل 6 مواقع عربية في مجال أمن وحماية المعلومات
ما هي القطعة الأسطوانية الموجودة في أطراف أسلاك الكمبيوتر

المعاملات الحسابية بلغة البايثون

تنقسم الى المعاملات في لغة البايثون الى عدة معاملات وهناك اربعة معاملات اساسية وهي موضحة أدناه وسيتم شرح المعاملات الحسابية في هذا الدرس و باقي المعاملات في دروس إخرى
– Arithmetic operators المعاملات الحسابية
– Assignment operators. معاملات اسناد القيم
– Comparison operators معاملات المقارنة
– Logical operators. المعاملات المنطقية

نتيجة بحث الصور عن ‪operators in python‬‏

المعاملات الحسابية Arithmetic operators
الجمع +
الطرح –
الضرب *
القسمة /
باقى القسمة %
الأس **
القسمة الصحيحة //
وهنوضحها بمثال

num1=6
num2=2
print(num1+num2)

سوف يتم طباعة 8

print(num1-num2)

سوف يتم طباعة 4

print(num1*num2)

سوف يتم طباعة 12

print(num1/num2)

سوف يتم طباعة 3

print(num1%num)

سوف يتم طباعة 0

print(num1**num2)

سوف يتم طباعة 36

print(num1//num2)

سوف يتم طباعة 3

ساقوم بتوضيح علامة % او باقى القسمة
ناتج قسمة 6/2 هو 3 (2*3=6 ) اما باقى القسمة يكون صفر .

اولويات العمليات الحسابية
انا عرضتها بحسب اولوية التنفيذ
( )
**
* /
+ –
مثال للتوضيح

num1=10
num2=5
num3=4
print(num1+num2*num3)

قد يعتقد البعض بان تنفيذ هذة العملية يكون كالتالى
هو جمع قيمة المتغير num1 مع قيمة المتغير num2 ثم ضرب هذا الناتج فى قيمة المتغير num3
الا ان هذا غير صحيح راجع اولويات تنفيذ المعاملات الحسابية التى تم شرحها . نجد ان البرنامج سوف يقوم اولا بضرب قيمة المتغير. num2 فى قيمة المتغير num3 ثم جمع هذا الناتج على قيمة المتغير num3 فيكون الناتج هو 30
بعض الملاحظات :
– فى حالة وجود اكثر من معامل لة نفس اولوية التنفيذ يتم التنفيذ من الشمال الى اليمين .
– فى حالة الرغبة فى اعطاء اى عملية اولوية التنفيذ يتم وضعها داخل الاقواس ( ) .

مثال اخر بس مش انا الا هحلة انا بطلب من اى حد يشوف البوست دا هو الا هيحلة .

(4+2**3)/2+(4*4+6/2)

البرمجة الكائنية باستخدام بايثون
كتاب تعلم البرمجة مع بايثون 3
كتاب مدخل للبرمجة وللغة البايثون
Hands on Python Book
Constructors في لغة البايثون 
؟ (Blackboard) ما هو البلاك بورد
NTFS & FAT الفرق بين نظام الملفات
أفضل خمسة برامج مجانية لأستعداة الملفات المحذوفة
(DDOS) ماذا تعرف عن هجمات ال
ما هو الفرق بين القراصنة و الكراكرز ؟
GitHub ما هو ال
تحديث أندرويد أوريو يعطل هاتفك الذكي جالكسي نوت 8
المتغيرات في البايثون

Constructors في لغة البايثون 

Constructor او الكنستركتور او المنشئ هو نوع خاص من الطرق (الفانكشين) يتم استخدامه لتهيئة نموذج مثيل للكلاس  .

يمكن أن يكون Constructor  من نوعين.

 1- Parameterized Constructor
2- Non-parameterized Constructor

يتم تنفيذ تعريف Constructor عندما نقوم بإنشاء كائن من هذه الكلاس. يتحقق المُنشئون أيضًا من وجود موارد كافية للكائن لأداء أي مهمة بدء.

وهنلخصة فى عدة نقاط :
تعريف constructors .
طريقة انشاء دالة constructor
ماهى وظيفة constructors .

نتيجة بحث الصور عن ‪Constructors in python‬‏

تعريف constructors :
ببساطة هو دالة خاصة (special methods ) داخل الكلاس
يتم أستدعائها (تنفيذها)تلقائيا مع بداية انشاء object
من الطبيعى بعد انشاء اى دالة لايتم تنفذها مباشرة وانما يتم تنفيذ الدالة من خلال تمرير اسم الدالة داخل البرنامج .
اما دالة constructor يتم تنفيذها تلقائيا وقت انشاء object بدون استدعاء اسم الدالة .
car1=car( )
car( ) constructor تمثل دالة
بتكون فى شكل دالة جاهزة للتنفيذ وبداخل هذة الاقواس يتم تمرير قيم للمتغيرات .

طريقة انشاء دالة constructors
اتكلمنا فى التعريف السابق ان constructor هو دالة وبالتالى مثل اى دالة سوف يبداء بالكلمة def وهى الكلمة المحجوزة لتعريف اى دالة يليها كلمة _init_
كالتالى :
def _init_( ):

ويكتب بداخل constructors مجموعة من الاجراءات المطلوب تنفيذها تلقائيا او اسناد قيم للمتغيرات بمجرد انشاء object عن طريق تمرير parameters داخل constructors. واسناد قيم لها اثناء انشاء object

ماهى وظيفة constructors
انا قلت فى تعريف constructors انه يتم تنفيذة مع بداية انشاء ال object وبالتالى لو عاوز انفذ اجراء (كود معين) او اعطاء قيم للمتغيرات
initialize data of object( variables )
مع بداية انشاء الكائن فيكون دا من اهم استخدامات constructors .

هعرض فيديو يوضح تنفيذ دالة constructor وتمرير قيم للمتغيرات تلقائيا مع بداية انشاء object .
وهعرض طريقة اسناد قيم للمتغيرات عن طريق تمرير قيم لهذة المتغيرات داخل الدالة .بالطريقة السابق شرحها .

سؤال خاص بالموضوع ؟
هل ممكن انشاء اكثر من constructors داخل الكلاس ؟
ممكن انشاء اكثر من constructors داخل الكلاس .
وان شاء الله سيتم شرحة فى المرة القادمة وكذلك شرح constructor with Inheritance .

Python Programming Fundamentals
المعاملات الحسابية بلغة البايثون
كتاب احترف البايثون الآن
المتغيرات في البايثون
البرمجة الكائنية باستخدام بايثون
موقع أكاديمية مايكروسوفت للتعليم المجاني وشهادة معتمدة من مايكروسوفت
ايه هو افضل نظام تشغيل للمطورين
UDP و TCP الفرق بين بروتوكول
انواع القراصنة في عالم الانترنت و الحماية
Constructors في لغة البايثون 
اللوحة الأم ومكوناتها في الحاسوب
أفضل عشرة ألعاب على فيسبوك
منع الأصدقاء من مشاهدة تعليقاتك ونشاطاتك على الفيس بوك

البرمجة الكائنية باستخدام بايثون

البرمجة الكائنية باستخدام بايثون أو OOP – Object oriented programming هي عبارة عن نمط برمجة متقدمة، وفيه يقسم البرنامج إلى وحدات تسمى الكائنات (Objects) كل كائن object عبارة عن حزمة من الصفات Attributes (يعبر عنها بالمتغيرات variables )  والافعال Actions ( يعبر عنها بالدوال functions ).
وكل كائن يؤدى وظيفة محددة.
ويتم بناء البرنامج بواسطة استخدام الكائنات وربطها مع بعضها البعض .

نتيجة بحث الصور عن ‪Object oriented programming python‬‏

فى البرمجة الكائنية يوجد مفهومين :
هما الكلاس class والكائن object .
وهنوضح الفرق بينهم حالا

Class. (Template)

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

يعنى عندى كلاس يحتوى على مجموعة من المتغيرات والدوال التى سيتم استخدامها فى اى كائن يفتح من هذا الكلاس.

والسؤال كيف يتم انشاء كلاس فى بايثون ؟
ببساطة يتم انشاء الكلاس كالتالى :

class className:
variables
Functions

نتيجة بحث الصور عن ‪create class in python‬‏

طب السؤال كيف اعمل object من الكلاس .

بيكون كالتالى:

ObjectName=className()

نبداء باسم الكائن ثم نكتب = يلية اسم الكلاس ثم نفتح الاقواس ( ) .
بمجرد عمل كائن من الكلاس يتم نسخ المتغيرات والدوال لهذا الكائن (باستثناء حالات معينة هنوضحها بعدين )
ويتم التعامل مع المتغيرات والدوال كالتالى :

objectName.[variables|methods]

طبعا انا حاولت اعرض فيديو يوضح بعض الشيء عن كلامى
عملت كلاس اسمة Emoloyees
وبداخلة ثلاث متغيرات id ,name,salary
بدون اعطائهم اى قيمة ولكن تم اعطائهم فقط قيم ابتدائية وهى zero للمتغيرات الرقمية وnull للمتغيرات النصية .
ودالة ( ) printData وهى تطبع قيمة المتغيرات السابقة
وعملت كائن اسمة emp1 وكائن اخر اسمة emp2
اخذت نسخة من الكلاس Employees
وقمت بالتعامل مع المتغيرات والدوال الموجودة فى الكلاس Employees فى الكائن emp1 والكائن emp2
عن طريق اعطائهم قيم واستخدام الدالة الموجودة داخل الكلاس .

كتاب كيفية برمجة برنامج شات بالبايثون
كتاب #أتعلم البايثون
Hands on Python Book
المعاملات الحسابية بلغة البايثون
كتاب تعلم البرمجة مع بايثون 3
(Object-relational mapping) ORM ما هو الـ
canon ip7240 إعدادات الواي فاي في طابعة
كيف يعمل الإنترنت
دراسة تكتشف زيادة ثغرات الكمبيوتر في العالم
Constructors في لغة البايثون 
البرمجة الكائنية باستخدام بايثون
أفضل عشرة ألعاب على فيسبوك
أفضل سبعة متاجر أندرويد مجانية

المتغيرات في البايثون

Variables او المتغيرات إن المتغيرات ببساطة هى مخازن مؤقتة للبيانات , وطالما انها مخازن للبيانات وبالتالى هقدر انى اخزن بداخلها بيانات وكمان اقدر انى استرجع منها هذة البيانات .

طريقة تعريف المتغيرات فى لغة بايثون  ببساطة يتم تعريف المتغيرات بالصيغة التالية

varibleName=value

نتيجة بحث الصور عن ‪variable in python‬‏

تعريف المتغير يبداء باسم المتغير ثم نكتب equal يلية القيمة المراد تخزينها بداخل المتغير .
على سبيل المثال

num1=5
num2=1.5
name=’python’

وهذة القيمة التى يتم تخزينها بداخل المتغير هى التى تحدد نوع المتغير . ويتم اسناد هذة القيمة للمتغير اما عن طريق اسناد القيمة مباشرة او عن طريق المستخدم من خلال استخدام دالة الادخال السابق شرحها ( ) input .
واول شي لازم نعرفة ان بايثون موفرة عدة انواع من المتغيرات منها .

number
String
List
Tuple

Dictionary

نتيجة بحث الصور عن ‪variable in python‬‏اولا :نوع البيانات رقمى numberعلى سبيل المثال
num1=5
المتغير num1 من النوع int لان القيمة المخزنة بة رقم صحيح
num2=1.5
المتغير num2 من النوع float لان القيمة المخزنة بة رقم عشرى

ثانيا : نوع البيانات نصى string
name=’python’
المتغير name من النوع string لان القيمة المخزنة بة نصية
ملحوظة :يتم وضع قيم المتغيرات النصية بين single code or double code .
اما باقى الانواع الاخرى للمتغيرات سيتم دراستها لاحقا .

وهناك شروط فى تسمية المتغير ات
١_ يجب ان يبداء بحرف .
٢_ لا يزيد طول المتغير عن ٣٠ .
٣_ لايمكن استخدام كلمة من الكلمات المحجوزة فى تعريف المتغير
بمعنى انة لا يمكن تسمية المتغير باسم if مثلا .

طباعة قيمة المتغير
ليس الهدف الاساسي من انشاء المتغيرات هو تخزين قيمة وطباعتها فقط وانما يمكن استخدام هذة القيمة فى اجراء اكثر من اجراء داخل البرنامج. ولطباعة قيمة المتغير نستخدم جملة الطباعة الخاصة ببايثون وهى print

نتيجة بحث الصور عن ‪variable print in python‬‏

print(variableName)

لطباعة قيمة المتغير num1 كالتالى

print(num1)

سوف يتم طباعة 5
نلاحظ ان المتغير يتم كتابتة مباشرة دون استخدام single or double code .

بعض الاسئلة خاصة بالدرس
هل من الممكن معرفة نوع المتغير من خلال دالة معينة ؟
ببساطة يتم استخدام الدالة ( ) type
على سبيل المثال لو اردنا معرفة نوع المتغير num1
نكتب الكود التالى( type(num1
سوف يطبع البرنامج int .

هل يمكن تحويل نوع البيانات الى نوع اخر ؟
نعم وذلك من خلال عمل casting
وهو كتابة النوع المطلوب التحويل له قبل اسم المتغير
على سبيل المثال لو اردنا تحويل نوع المتغير num1 من النوع int الى النوع float يتم ذلك كالتالى

float(num1)

سوف يتم طباعة 5.0

هل من الممكن تغيير القيمة المخزنة فى المتغير؟
نعم يمكن تغيير القيمة المخزنة داخل المتغير اثناء كتابة البرنامج
على سبيل المثال

num1=5



num1=10
print(num1)

سوف يتم طباعة 10 لان القيمة 5 تم تغيرها واصبحت 10

واخيرا المتغير num1 ليس هو Num1 لان بايثون حساسة للحروف case sensitive وبالتالى فكلاهما متغيرين مختلفين .

كتاب البرمجة بلغة بايثون – الجزء الثاني
المعاملات الحسابية بلغة البايثون
كتاب مدخل للبرمجة وللغة البايثون
المتغيرات في البايثون
كتاب القوائم في لغة بايثون
Entity framework ما هو ال
الهواتف الخلوية المقلدة قنابل مؤقتة تغزو الأسواق
foreach في لغة الجافا
كيف يعمل الإنترنت
نبذه عامة عن نظام لينكس
Constructors في لغة البايثون 
لماذا لغة البايثون هي المفضلة ؟
iPad Pro 11 تعرف على الجهاز اللوحي الجديد

Python Programming Fundamentals

Computer Science is a creative, challenging, and rewarding discipline. Computer
programmers, sometimes called software engineers, solve problems involving data:
computing, moving, and handling large quantities of data are all tasks made easier
or possible by computer programs. Money magazine ranked software engineer as
the number one job in America in terms of flexibility, creativity, low stress levels,
ease of entry, compensation, and job growth within the field [4].
Learning to program a computer is a skill that can bring you great enjoyment
because of the creativity involved in designing and implementing a solution to a
problem. Python is a good first language to learn because there is very little
overhead in learning to write simple programs. Python also has many libraries
available that make it easy to write some very interesting programs including
programs in the areas of Computer Graphics and Graphical User Interfaces: two
topics that are covered in this text.
In this text, students are taught to program by giving them many examples and
practice exercises with solutions that they can work on in an interactive classroom
environment. The interaction can be accomplished using a computer or using pen
and paper. By making the classroom experience active, students reflect on and
apply what they have read and heard in the classroom. By using a skill or concept
right away, students quickly discover if they need more reinforcement of the
concept, while teachers also get immediate feedback. There is a big difference
between seeing a concept demonstrated and using it yourself and this text
encourages applying concepts immediately to test understanding. This is vital in
Computer Science since new skills and concepts build on what we have already
learned

 

please Download Book From Book Icon

Python Programming Fundamentals
دروس بايثون للمبتدئين تابع جمل التحكم الشرطية او العبارات الشرطية
البرمجة الكائنية باستخدام بايثون
Constructors في لغة البايثون 
كتاب #أتعلم البايثون
HTTPS و HTTP الفرق بين
TCP/IP أنواع بروتوكولات
مع مثال توضيحي Angular نبذة عن
خرافات لا تصدقها عن العمل الحر
طريقة الحصول على ما يزيد عن 100 جيجا تخزين سحابي
من صنع أول كمبيوتر ؟
SQL و mysql هناك فرق بين
أنواع الاخطاء البرمجية

Hands on Python Book

one of the best book talking about Python and how to start with, in this book you will learn all basic’s and function’s in python and this will be your guide for your first python program ,

by Dr. Andrew N. Harrington , Loyola University Chicago

كتاب كيفيــة تثبيت برنامج بايثون 3
كتاب القوائم في لغة بايثون
Hands on Python Book
كتاب احترف البايثون الآن
كتاب #أتعلم البايثون
تقرير سنة 2018 عن الذكاء الإصطناعي
Memoji برنامج يحول صورتك إلى وجوه تعبيرية
php دالة الوقت والتاريخ فى
إنستغرام تطرح ميزة توثيق الحسابات و العلامات التجارية الكبيرة و المنظمات
نبذة عن وظيفة عالم البيانات
هل من أضرار في استخدام الحاسوب المحمول وهو موصول بالكهرباء طول الوقت ؟
access token كن حذراَ عندما تستخدم ال
GitHub ما هو ال

كتاب مدخل للبرمجة وللغة البايثون

كتاب ممتاز جدا لما فيه من محتوى تعليمي قوي وما يميزه الاسلوب السلس للشرح و اللهجة السهلة للكل يعتبر كتاب كبير في عالم البايثون ينصح به للمستوى المتوسط و المتقدم

رابط التحميل في الأسفل

كتاب البرمجة بلغة بايثون – الجزء الاول
كتاب تعلم البرمجة مع بايثون 3
Python Programming Fundamentals
كتاب احترف البايثون الآن
المتغيرات في البايثون
USB منافذ ال
تحديث مايكروسوفت ويندوز 10 لشهر اوكتوبر يمكن أن يتسبب بحذف ملفاتك
من صنع أول كمبيوتر ؟
Creating subtotals in Excel
خوارزميات الفيسبوك لاظهار المنشورات وكيف يميز ما هو الاكثر اهمية
الفرق بين البيانات والمعلومات
أفضل سبعة متاجر أندرويد مجانية
RDP ما هو بروتوكول

كتاب مدخل أساسيات لغة بايثون

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

رابط التحميل في الصورة الأسفل

كتاب كيفية برمجة برنامج شات بالبايثون
كتاب مدخل للبرمجة وللغة البايثون
كتاب كيفيــة تثبيت برنامج بايثون 3
كتاب مدخل أساسيات لغة بايثون
كتاب تعلم البرمجة مع بايثون 3
SQL و mysql هناك فرق بين
abstract class ما هو ال
شركة أدوبي تعلن عن إتاحة برنامج أدوبي إكس دي بشكل مجاني
بعد خسارة 20% من قيمتها.. ألمانيا تحذر من بيتكوين
GitHub ما هو ال
منصة التمبلر ستحذف جميع المحتويات الأباحية
أشهر 6 لغات برمجة فى العالم
For Android developers align icons in the form of a grid

كتاب كيفيــة تثبيت برنامج بايثون 3

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

رابط التحميل في الأسفل

كتاب تعلم بايثون بكل سهولة
كتاب احترف البايثون الآن
المعاملات الحسابية بلغة البايثون
كتاب مدخل أساسيات لغة بايثون
Constructors في لغة البايثون 
SQL SERVER بشكل عام عن
مفهوم تعلم الآلة
الوهم التكنولوجي في خوارزميات الفيسبوك
GitHub ما هو ال
خطوات هامة للحفاظ على حاسوبك أمن وخالى من الفيروسات
Google AdWord أكثر الكلمات سعرا في
(DDOS) ماذا تعرف عن هجمات ال
انواع القراصنة في عالم الانترنت و الحماية