Həyatdan nümunə. Sinifdə ən hündür şagirdi tapmaq lazımdır. Birinci şagirdi «ən hündür» qəbul edirsiniz. Sonra hər şagirdi onunla müqayisə edirsiniz. Daha hündürdürsə, indi «ən hündür» odur.
Ən kiçik də belə tapılır. Hər ikisi bir keçiddə tapılır.
Addımlar
- Birinci elementi həm «ən kiçik», həm «ən böyük» qəbul edin.
- Elementlərə bir-bir baxın.
- Element «ən kiçik»dən kiçikdirsə, onu yeni «ən kiçik» edin.
- Element «ən böyük»dən böyükdürsə, onu yeni «ən böyük» edin.
Nümunə
Siyahı: [5, 1, 8, 3].
| addım | element | ən kiçik | ən böyük |
|---|---|---|---|
| başlanğıc | — | 5 | 5 |
| 1 | 5 | 5 | 5 |
| 2 | 1 | 1 | 5 |
| 3 | 8 | 1 | 8 |
| 4 | 3 | 1 | 8 |
Cavab: ən kiçik 1, ən böyük 8.
Kod
a = [5, 1, 8, 3]
en_kicik = a[0]
en_boyuk = a[0]
for x in a:
if x < en_kicik:
en_kicik = x
if x > en_boyuk:
en_boyuk = x
print(en_kicik, en_boyuk)
Kod sətir-sətir
| sətir | nə edir |
|---|---|
en_kicik = a[0] |
Başlanğıcda ən kiçik — birinci element. |
en_boyuk = a[0] |
Başlanğıcda ən böyük də — birinci element. |
for x in a |
x növbə ilə hər element olur. |
if x < en_kicik |
Bu element indiki ən kiçikdən kiçikdirmi? |
en_kicik = x |
Bəli — yeni ən kiçik yadda saxlanılır. |
if x > en_boyuk |
Bu element indiki ən böyükdən böyükdürmü? |
en_boyuk = x |
Bəli — yeni ən böyük yadda saxlanılır. |
Qeyd
- Başlanğıcda
0yazmayın:[5, 8, 3]üçün ən kiçik səhv olaraq0çıxar. - Python-da hazır funksiyalar var:
min(a)vəmax(a).