Introduction To Programming
Introduction To Programming
اﻟﺣﺻﺔ اﻷوﻟﻰ :ﻣﻘدﻣﺔ ﻓﻲ اﻟﺧوارزﻣﯾﺎت وأﺳﺎﺳﯾﺎت اﻟﺑرﻣﺟﺔ .ﻧﺑدأ أﯾﺿًﺎ ﺑﺄﺳﺎﺳﯾﺎت Pythonوﻧﻧﺷﺊ أول ﺧوارزﻣﯾﺔ ﻟدﯾﻧﺎ.
اﻟﺣﺻﺔ اﻟﺛﺎﻧﯾﺔ :ﻛﯾف ﺗﻘﺎرن ﺑﯾن اﻟﺧوارزﻣﯾﺎت وﺗﻌﻘﯾدھﺎ .ﻧﺑدأ ﺑﮭﯾﺎﻛل ﺑﯾﺎﻧﺎت ﺑﺳﯾطﺔ(Complexity in big O notation) .
اﻟﺣﺻﺔ اﻟﺛﺎﻟﺛﺔ :اﻻﺳﺗﻣرار ﻓﻲ ھﯾﺎﻛل اﻟﺑﯾﺎﻧﺎت وﺗﻧﻔﯾذھﺎ(Data structures and their implementation):
اﻟﺣﺻﺔ اﻟراﺑﻌﺔ :ﻣﻔﺎھﯾم ﻣﺗﻘدﻣﺔ ﻓﻲ PythonﻣﺛلList comprehension, unpacking, lambda functions :
C Python Go
اﻟﺼﻌﻮﺑﺔ دﻳﺎل اﻟﺒﺮﻣﺠﺔ
أﺻﻌب ﺷﺊ ﻣﺎﺷﻲ ھو ﺗﻌﻘل ﻋﻠﻰ syntaxدﯾﺎل programming
languageﻟﻠﻲ ﻛﺗﺧدم
ﺑل اﻷﺻﻌب ھو ﺗﺣط راﺳك ﺑﻼﺳت اﻟﺣﺎﺳوب دﯾﺎﻟك ﻣﻠﻲ ﺗﻛون ﻛﺗﺣﺎول ﺗﻠﻘﻰ
ﺣل
ﻣﺛﻼ ...
][5, 3, 12, 10, 27, 9, 15 أﻛﺒﺮ ﻋﺪد
Variable
ﻣﺗﻐﯾر
.1ﻟﻧﻌﺗﺑر أول ﻋدد ھو أﻛﺑر ﻋدد .ﻧﺳﻣﻲ ھذا اﻟﻌدد max
Loop
.2ﻟﻛل ﻋدد xﻓﻲ اﻟﻘﺎﺋﻣﺔ:
x → max .aإذا ﻛﺎن xأﻛﺑر ﻣن :max
ﻋﻘدة Condition
ﺷرط
1. max_num = l[0]
2. for x in l:
3. if x > max_num:
max_num = x
4. print(max_num)
(variables) اﻟﻤﺘﻐﻴﺮات
a = 2 2
a 3
a = 3.2 3.2
a = a + 1 b
4.2
b = a
b = 8 8
Memory representation
Code ﺗﻤﺜﻴﻞ اﻟﺬاﻛﺮة
(variables) اﻟﻤﺘﻐﻴﺮات
a = [11, 12, 3] [11, 12, 3]
a 3
a = ‘salam’ ‘salam’
a = a + ‘ qalam’ b
‘salam qalam’
b = a
b = [99] + [3, 6] [99, 3, 6]
Memory representation
Code ﺗﻤﺜﻴﻞ اﻟﺬاﻛﺮة
(variables) اﻟﻤﺘﻐﻴﺮات
a = [11, 12] [11,12,
[11, 12]3]
a
b = a
a.append(3) # mutates b [11, 12, 3, 10]
b = b + [10] # doesn’t
Memory representation
Code ﺗﻤﺜﻴﻞ اﻟﺬاﻛﺮة
Input/Output اﻟﺘﻮاﺻﻞ ﻣﻊ اﻟﻤﺴﺘﻌﻤﻞ
name = input(“Please enter your name”)
A = 100-90
B = 90-80
C = 70-80
F = 70-0
Loops اﻟﻌﻘﺪة
for <var> in <sequence>: while <condition>:
# do smthg
# do smthg
----
for <var> in range(start, end, step):
# do smthg
ﺗﻤﺮﻳﻦ ﺗﻄﺒﻘﻲ 2
اﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﺗﻠﻘﻰ ﻋدد اﻟﺗﻼﻣﯾذ و ﻧﻘطﮭم و ﯾﻌطﻲ أﻋﻠﻰ و أدﻧﻰ ﻧﻘطﺔ.
ﺗﻤﺮﻳﻦ ﺗﻄﺒﻘﻲ 3
اﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﺗﻠﻘﻰ ﻧﻘط اﻟﺗﻼﻣﯾذ و ﻛﯾﻌطﻲ إﺣﺻﺎﺋﯾﺎت ﻋﻠﻰ ھﺎد اﻟﻧﻘط.
4 ﺗﻤﺮﻳﻦ ﺗﻄﺒﻘﻲ
Guess the output.
Functions اﻟﺪوال
# FUNCTION DEFINITION
# ﺗﻌﺮﻳﻒ اﻟﺪاﻟﺔ
def add(x, y): x=a
# do smthg y=b
result 5
return x + y
x a 1
# FUNCTION CALL
# اﺳﺘﺪﻋﺎء داﻟﺔ
a = 1 y b 4
b = 4
result = add(a, b)
add
Global
Functions اﻟﺪوال
def incr(x):
x = x + 1
a = 2
incr(a)
print(a) # output: 2 x a 2
incr
Global
Functions اﻟﺪوال
def incr(x):
x = x + 1
x = 2
incr(x)
print(x) # output: 2 x x 2
incr
Global
Functions اﻟﺪوال
def add_four(l):
l.append(4)
lst = [0, 3]
add_four(lst)
lst
print(lst) l [0, 3,
3] 4]
incr
Global
ﺗﻤﺮﻳﻦ ﺗﻄﺒﻘﻲ 5
اﻛﺗب ﺑرﻧﺎﻣﺞ ﻛﯾﺗﻌطﺎه ﻧﻘط ،أﺳﻣﺎء و رﻗم ھوﯾﺔ ﺗﻼﻣﯾذ و ﻛﯾﻌطﯾك ﺑﯾﺎﻧﺎت
اﻟﺗﻼﻣﯾذ اﻟﻠﻲ ﺳﻘطو اﻷﻣﺗﺣﺎن
Classes and Objects
class Human: def __init__(self, name, age):
def __init__(self, name, age):
self.age = age
self
self.name = name self self self
age =
4
age = 42 age = 42 name 2
def present(self, f_name): name = ‘Ali’ = ‘Ali’
h1 = Human(‘Ali’, 42)
h1.present(‘Ayoub’)
# output:
# ‘Salam Ayoub! Ana Ali.
Python ﻣراﺟﻊ ﻟﺗﻌﻠم