PROQRAMLAŞDIRMA
14. Ədədlərlə iş
15. Sətirlər
16. Siyahılar
17.
Funksiya
18. Proqramlaşdırma dillərinin
təsnifatı
4
LAYİHƏ
62
Ə
DƏDLƏRLƏ İŞ
Python dilində verilmiş aşağıdakı proqram fraqmentini diqqətlə gözdən keçirin və onun
nəyi yerinə yetirdiyini araşdırın. Kompüterdə icra etmədən proqramın sonunda i dəyişəni-
nin qiymətini müəyyən edin.
i = 1
while
i <= 10:
print
(i*i)
i = i + 1
Nәticәni müzakirә edәk:
- Nə üçün
print
operatoru
while
operatoru ilə eyni səviyyədə (sütunda) yazılmayıb?
- Sonuncu i = i + 1 sətri
while
operatoru ilə
eyni səviyyədə olsa idi, sonda i
dəyişəninin qiyməti nə olardı?
Python proqramlaşdırma dilində proqram kodu adi mətn faylı olur. Bu fayl hərf
və rəqəmlərdən, boşluq, durğu və başqa simvollardan ibarətdir. Mətn sətirlərə
bölünür. Hər bir Python operatoru bir neçə sətirdə yazıla bilər. Bir operatoru bir neçə
sətirdə yazmaq üçün "\" simvolundan istifadə olunur.
Yazdığınız proqrama müəyyən müddətdən sonra qayıtmalı olsanız, qəribə olsa
da, çox şeyi unutmuş olduğunuzu görəcəksiniz. Ona görə də həm özünüzün xatır-
lamanız, həm də başqalarının anlaması üçün proqramın müəyyən yerlərinə
şәrhlәr
vermək yaxşı olardı. Adından da göründüyü kimi, şərhlər
proqramın mətnini oxuyan
şəxs üçün qeyddir. Şərhlərdən proqramın nə məqsədlə yaradıldığı, onun yaradıcısı
haqqında məlumatı, proqramın son dəyişdirilmə tarixini, proqramdakı dəyişənlərin,
funksiyaların təyinatını göstərmək üçün istifadə edilə bilər.
Python dilində şərhlər
"
#
" simvolundan sonra yazılır. Proqram maşın koduna
çevrilərkən şərhlər nəzərə alınmır. Ona görə də bəzən proqramın hansısa hissəsini
müvəqqəti olaraq "dondurmaq" üçün həmin hissə şərh kimi qeyd edilir.
F ә a l i y y ә t
1
14
Proqram nədir?
Python proqramlaşdırma dilinin hansı operatorlarını tanıyırsınız?
PROQRAMLAŞDIRMA
4
LAYİHƏ
4
63
• IV fəsil •
Proqramlaşdırma
•
Python dilində proqramın strukturu və onun iş məntiqi
üçün sətirlərin başlanğıcındakı
girintilәrin (boşluq simvol-
larının) əhəmiyyəti böyükdür, çünki operatorların qrup-
laşdırılması onlardan asılıdır. Hər hansı operatorlar qrupu
başqa qrupun daxilində ola bilər. Bu halda daxilolma
səviyyəsi nə qədər böyük olarsa, girintinin kəmiyyəti də o
qədər böyük olur. Ancaq nəzərə almaq lazımdır ki, bir qrup çərçivəsində girinti
kəmiyyəti eyni olmalıdır.
Siz Python dilində ədəd tipli kəmiyyətlərlə və onlar üzərində əsas
hesab əməlləri
ilə tanışsınız. Onları bir daha xatırlayaq.
Әmәl
Tәsviri
x + y
Toplama (x və y ədədlərinin cəmi)
x − y
Çıxma (x və y ədədlərinin fərqi)
x * y
Vurma (x və y ədədlərinin hasili)
x / y
x-in y-ə bölünməsi (qismət)
x // y
Tam ədədi bölmə (nəticə tam ədəd olur)
x % y
x-in y-ə tam ədədi bölünməsindən alınan qalıq
x ** y
Qüvvətə yüksəltmə (x üstü y)
−x
Ədədin əksi
Proqramlarda şərti göstərmək üçün
müqayisә işarәlәrindәn istifadə olunur. Aşa-
ğıdakı cədvəldə bu işarələrin
ALPLogo və Python dillərində yazılışı göstərilib. Bu-
rada "bərabərdir" və "fərqlidir" işarələrinə xüsusi diqqət yetirin, çünki onların düz-
gün istifadə olunmaması proqram xətasına səbəb olur.
ALPLogo
Python
Tәsviri
= ==
Bərabərdir
<> !=
Fərqlidir (bərabər deyil)
> >
Böyükdür
< <
Kiçikdir
>= >=
Böyükdür və ya bərabərdir
<= <=
Kiçikdir və
ya bərabərdir
Әdәdin rәqәmlәrә ayrılması.
Bildiyiniz kimi, hər hansı ədədi 10-a böldükdə
alınan qalıq həmin ədədin sonuncu rəqəminə, yəni təklik mərtəbəsindəki rəqəmə
bərabər olur. Məsələn, n ədədinin təklik rəqəmi a-dırsa, onda
a = n % 10
Aydındır ki, ədədin sonuncu rəqəmini atsaq, onda alınan yeni ədədin sonuncu
rəqəmi ilkin ədədin onluq mərtəbəsindəki rəqəm olacaq. Yuxarıdakı operator vasi-
təsilə bu yeni ədədin sonuncu rəqəmini ayırmaqla ilkin ədədin onluq mərtəbəsindəki
rəqəmi almış olarıq. Bu qayda ilə istənilən ədədi öz rəqəmlərinə ayırmaq olar. Ədədin
sonuncu rəqəmini (mərtəbəsini) atmaq üçün isə onu 10-a bölüb tam hissəni götürmək,
•
Şərhlər
•
Girinti
•
Hesab əməlləri
•
Müqayisə işarələri
S ö z l ü k
LAYİHƏ
64
yəni tam ədədi bölmə əməlindən (
//
) istifadə etmək lazımdır. Məsələn, əgər n ədə-
dinin sonuncu rəqəmini atdıqdan sonra alınan ədəd m-dirsə, onda
m = n // 10
Aşağıdakı proqramı Python mühitində yazıb icra edin.
n =
input
(
'İkirəqəmli müsbət tam ədəd daxil edin: '
)
n =
int
(n)
if
n > 9
and
n < 100:
a = n % 10
# Ədədin təkliyi
b = n // 10
# Ədədin
onluq rəqəmi
s = a + b
p = a * b
print
(
'Rəqəmlərin cəmi ='
, s)
print
(
'Rəqəmlərin hasili ='
, p)
else
:
print
(
'Düzgün ədəd daxil edilməyib!'
)
Nәticәni müzakirә edәk:
- Bu proqram nə edir? Müxtəlif ədədlər daxil etməklə proqramın düzgünlüyünü yoxla-
yın.
print
operatorlarını
if
operatoru ilə eyni səviyyədə (sütunda) yazıb
nəticə-
nin necə dəyişdiyini izləyin.
Hәlli.
Verilmiş ədədi n, onun rəqəmlərinin cəmini cem,
rəqəmlərinin hasilini isə
hasil dəyişəni ilə göstərək. Onda məsələnin həll alqoritmini belə ifadə etmək olar:
Alqoritm
1. cem dəyişəninə başlanğıc 0 qiymətini mənimsətmək.
2. hasil dəyişəninə başlanğıc 1 qiymətini mənimsətmək.
3. Nə qədər ki n sıfırdan böyükdür
n ədədinin 10-a bölünməsindən alınan qalığı (yəni ədədin sonuncu rəqəmini)
tapmaq, onu cəmə əlavə etmək və hasili artırmaq;
n ədədinin sonuncu rəqəmini (mərtəbəsini) atmaq üçün onu 10-a tam bölmək.
n =
input
(
'Ədədi daxil edin: '
)
n =
int
(n)
cem = 0
hasil = 1
while
n > 0:
cem = cem + n % 10
hasil = hasil * (n % 10)
n = n // 10
print
(
'Rəqəmlərin cəmi ='
, cem)
print
(
'Rəqəmlərin hasili ='
, hasil)
F ә a l i y y ә t
2
Әdәdin rәqәmlәrinin cәminin vә hasilinin tapılması. Hər hansı
müsbət tam ədəd verilib. Onun rəqəmlərinin cəmini və hasilini tapın.
Mәsәlә
LAYİHƏ