KompüterProqramlaşdırma

Programming. Basic alqoritmik tikililər

hər hansı bir proqram lazım əsas alqoritmik dizayn yaratmaq. Sonra problemlərin həlli üçün asan variantdır. Bu homogen nümunələri ilə əməliyyat üçün, məsələn, istifadə edilə bilər. şax-budaq və loop digər növləri var. Yəni bu məqalədə əhatə olunacaq. Lakin ilk siz bir alqoritm ümumiyyətlə nə anlamaq lazımdır.

alqoritm

Sözü "alqoritm" Latın Algoritmi gəldi. Bu nə deməkdir? Authentic söz riyaziyyat, IX əsrdə reallaşan tədbirlərin adı gəlir. Due traktat al Khorezmi bəşəriyyət alqoritmik dizayn və ümumiyyətlə ümumi anlayışı ilə əsas növü ilə tanış ola bilər.

yazım Əvvəllər forması qəbul edilib - "alqoritm". İndi yalnız müəyyən hallarda istifadə olunur.

Alqoritmi - diskret addımlar baş orijinal data dəyişən deməkdir proses. Bu anlayış ilə, hər bir şəxs o kim, həyat üzləşir. Alqoritmlər, çay və qida, vurma və ya əlavə tənliklər həlli və iş prosesi avtomatlaşdırılmış Bütün texnikası s. D. kimi təsvir prosessor yaddaşında müəyyən aydın addımlar vasitəsilə fəaliyyət bilər. Belə alqoritmlər məişət deyilir. digər növləri var. Bizə onları yoxlamaq edək.

alqoritmlər növləri

Basic alqoritmik strukturlar bu bənddə müzakirə olunacaq bir neçə növ bölünür. onlar hansılardır?

  1. Məlumat. Belə alqoritmlər məlumatların böyük məbləğlər ilə iş, lakin uzunluğu və sadə kiçik emal şəffaf həcmi.
  2. Nəzarət. Belə alqoritmlərin əməliyyat müəyyən bir mənbədən mövcud informasiya ilə bağlıdır. qəbz xüsusi siqnallar göndərilir sonra cihazlar fəaliyyətini təmin etmək.
  3. Computing. məlumat alqoritmlər fərqli olaraq məlumatların kiçik məbləğlər ilə iş, lakin böyük bir iş prosesi istehsal təsvir.

Əslində, alqoritm kiçik ətraflı təlimat dəqiq deyil. Lakin, adlandırmaq olar bu cür data anlayışı izah edir. alqoritm təlimat anlamaq və ya deyil, müəyyən xassələri iştirakı üçün yoxlanılır olmalıdır.

alqoritmlər xüsusiyyətləri

Bütün əsas alqoritmik dizayn onlar tədbirlər olmalıdır "itaət edin." daha ətraflı bu sualı düşünün.

tam alqoritmlər və onların xassələri performance varsa, siz mütləq plan uyğun kifayət qədər aydın onların tərkib başa düşə bilmirəm ki, görürük. düzgün nəticə yalnız istədiyiniz mexaniki hərəkət qalmaq belə, əldə edilir. Bu baxımdan biz görə maarifləndirmə fəaliyyəti məna olmaması, alqoritm bir kompüter həyata keçirilməsi üçün ödəmək mümkündür ki, bağlaya bilər. Başqa sözlə, avtomatlaşdırılmış qurğular bu prosesin mövcudluğu tələb edir.

Nə xassələri maksimum dəqiq iş üçün əsas alqoritmik dizayn olmalıdır?

  1. Anlaşıqlılıq. Hər komanda kimi aydın çalışan obyekt olmalıdır. Bu heç bir şey, məsələn, var, mərkəzində bir nöqtə cəlb daha asandır ki, görünür, lakin o, edilə bilər ki, bir fəaliyyət çıxış edəcək komanda həyata yazıldığına deyil.
  2. Səmərəliliyi. Hansı əmlak, o deməkdir ki? bir nəticə əldə etmək üçün tələb olunur. alqoritm lakin cavab bir növ gətirib çıxara bilməz. Səbəbiylə bir səhv, siz istədiyiniz edildi yanlış nəticə əldə edə bilər, lakin o olacaq. Bundan başqa, cavab addımlar müəyyən sayda sonra qəbul olunmalıdır.
  3. Mass. Hər hansı bir alqoritm problemlərin hər hansı bir sinif tətbiq olmalıdır. Onların arasında onlar input data dəyişə bilər.
  4. Müəyyənlik. Hər bir fəaliyyət yalnız bir mənası var və törəmə parol çözme üçün imkan verməməlidir. İdeal halda, heç bir məsələ proqram başladıldı nə qədər nəticə bütün dövrlərdə eyni olmalıdır.
  5. Diskret. Alqoritmi - ardıcıl həyata keçirilməsi addımlar. Hər bir addım keçmək və ya yeni bilməz əlavə etmək üçün bir əmr edir.
  6. Düzgün. vəzifələri hər cür tətbiq edilir hər hansı bir alqoritm, hər kəs üçün doğru olmalıdır. proqramlaşdırma, tez-tez problemlər tez-tez çox vaxt tələb etmir yazılı addımlar deyil, və suallar hər cür onların həyata keçirilməsində var. Buna görə də, əhəmiyyətli bir addım alqoritm debug olacaq. Bu və əsas alqoritmik dizayn kömək edə bilər, təkrar daha yaxşı nəticələr gətirib çıxaracaq.

alqoritmlər təsviri

biz alqoritmlər yazmaq üçün necə haqqında danışmaq, bu, aşağıdakı qeyd etmək lazımdır:

  • Verbal. Başqa sözlə, komponent danışmaq üçün rahat dilində.
  • Cədvəl. Məntiqi, alqoritm bir masa yazılı və adətən köməkçi element kimi istifadə olunur.
  • Formula-şifahi. əsas şifahi izyasneniya metodu qəbul, lakin belə hərəkətlər də simvol və ya riyazi düsturlar qeyd edildi.
  • Graphic. Belə bir alqoritm bir xüsusi dil flowcharts yazılmışdır.

Bu son nöqtəni aydınlaşdırmaq lazımdır. bir flowchart nədir? Bu xətti və ya qeyri-xətti alqoritm, xüsusi kontur istifadə edərək yazılı olan addımlar. Onlar öz konfiqurasiya, məqsəd və funksiyası var. bu təsviri halda, alqoritm yazılı məhəllə diaqramlar, qarşılıqlı xətləri olan. Onlar həmçinin xüsusi tədbirlər (addım) yazmaq lazımdır.

alqoritmik dizayn

xətti, budaqlı, tsiklik: Bəzi alqoritmlər 3 növ və 4 əsas alqoritmik dizayn yoxdur ki, mübahisə. səbəb belə bir misconception nədir, aydın deyil. Ancaq bu üç kifayət qədər böyük qrupları üçün kompüter alqoritmləri istifadə kompleks problemləri sadə həll. Bizə onları yoxlamaq edək.

  1. Linear. Bu hesablama prosesi hər bir addım bir daha həyata orada bütün tədbirlər xətti ardıcıllıqla həyata keçirilir ki, bu adı var. biz problemin sxemi nəzərə alsaq, onda bu blokları ardıcıllıqla nömrələri performans asılı olaraq, digər yuxarıda bir yerləşdirilmişdir. Linear alqoritmlər orijinal data istiqaməti və fəaliyyət hissi dəyişdirmək deyil ki, belə bir şəkildə çalışır. məbləği və ya fərq hesablanması üçün belə həllər uyğun üsul, kvadrat formalı və ya onun perimetri, və s. N. alqoritmik dizayn əsas növü dəqiq deyil.
  2. Şax-budaq. Bu hesablama prosesi məntiqi ifadə iştirakı (LP) və şərait seçimi nəzərdə tutur (filial "yalan" və "true"). Hər halda, bu, yalnız iki və ya daha çox komanda bir həyata keçirilir. həyata keçiriləcək No problem və ola bilməz, hələ digər variantları var. alqoritm iki filial, bu, əgər daha iki sadədir - kompleks. sonuncu proses ilk hesabına asan görünür. alqoritmik dizayn əsas növü birinci və ikinci. Aşağıdakı forma da bu siyahıya daxil edilir.
  3. Cyclical. müxtəlif input data istifadə edərək, bu alqoritm mütləq element, təkrar edəcək. Başqa sözlə, belə bir proses dövrü adlanır.

Onlar ayrı-ayrılıqda istifadə edilə bilər, baxmayaraq ki, bütün əsas alqoritmik dizayn (sonra filial, loops), bir-biri ilə bağlıdır ki, qeyd etmək lazımdır.

loops və onların növləri yaradılması

bir loop yaratmaq üçün nə lazımdır?

  • loop counter. Bu ilkin dəyəri müəyyən bir dəyişən və bu dəyişəcək fəaliyyət təkrar edir. Bu mütləq alqoritm daxil olmalıdır. çərçivə tipli iş Basic alqoritmik tikinti olmayacaq olmadan.
  • dövrü yeni bir təkrar əvvəl data yuxarıda indeksi dəyişdirilməsi.
  • kompüter yenidən heç bir ehtiyac yoxdur və ya daha loop "hərəkət" üçün qərar şərait yoxlayın.

Cycles deterministic və iterativ ola bilər. ilk təkrar məlum sıra redo edir. Iterativ dövrü - şərt doğru və ya yalan qədər vaxt qeyri-müəyyən məbləğ təkrarlanır biridir.

əsas alqoritm

Bu əsas alqoritmik strukturlar əsas alqoritm daxil deyil ki, xatırlamaq lazımdır. Bu nədir? Bu konsepsiya müasir ədəbiyyat aşkar artıq, lakin edir və artıq mövcud olan bu demək deyil. problemlərin həlli bir neçə filial və ya təkrar aşağıdakı nəticəyə rast ola bilər ki, nəzərə alaraq. Basic alqoritmik tikililər (xətti, tsiklik budaqlı) əsas var. Əslində, onlar hər qondarma təlimat "struktur vahidi" təmsil edir.

xətti alqoritmlər

Yuxarıda aydın olduğu kimi, bir alqoritmlər xətti və qeyri-xətti var. ilk təcəssümü düşünün. Niyə zəng edirsiniz? Bütün çox sadə. fakt alqoritm ifa bütün tədbirlər, bütün addımlar ardıcıl həyata keçirilməsi ciddi aydın bir-birinin ardınca olunur ki. Tipik olaraq, bu vəzifələri kiçik və mürəkkəb bir aşağı səviyyədə var.

xətti alqoritm nümunəsi çay hazırlanması prosesi ola bilər:

  1. çaydan su tökülür.
  2. qaynatmaq üçün soba qazan qoyun.
  3. fincan edin.
  4. çay bir fincan daxil tökülür.
  5. şəkər əlavə edin.
  6. qaynar su sonra fincan tökülür.
  7. bir qaşıq edin.
  8. şəkər karıştırın.

əsas alqoritmik strukturları proqramlaşdırma - ağır kifayət qədər məşğul, lakin əgər xətti alqoritm, tez-tez onların həyata keçirilməsi üçün çox asandır.

alqoritmlər şax-budaq

Necə alqoritm şax-budaq ki, anlamaq üçün? Bu və ya uğursuzluq şərait performans olaraq fəaliyyət iki və ya daha kursları, bir seçimi var təmin etmək üçün kifayətdir. Hər bir yol filialı adlanır.

alqoritm budaq əsas xüsusiyyəti bir şərti filialının olmasıdır. Bu həqiqət və ya yalan test ifadə zamanı baş verir.

"Daha", "az və ya bərabər", "az" Bir qayda olaraq, məntiqi ifadələr təmsil olunur əlamətləri "və ya daha çox bərabər", "bərabər", "bərabər deyil." Bəzən vəziyyəti komanda və (u) və ya (və ya) bir-biri ilə bağlı qaydalara var.

belə bir alqoritm nümunəsi aşağıdakı problemin həlli ola bilər: ifadə ((x + 3) / 1) müsbət sayına bərabər olduqda mənfi, onda ekranda nəticə göstərmək - səhv haqqında istifadəçi məlumat.

praktikada kifayət qədər Simple əsas alqoritmik dizayn istifadə etmək. Budaq həlli üçün ən ümumi üsullardan biridir.

Deterministic dövrü və ya dövrü counter

Müəyyən bir addım dəyəri dəyişikliklər dəyişən daxildir dövrü - əks dövrü. Addım istifadəçi tərəfindən müəyyən və ya proqram yazarkən proqramçı tərəfindən müəyyən. Bu dövrü üçün Dil ən operator istifadə edir.

proqram iki satır 4 dəfə keçirmək üçün:

  1. "Necəsən?"
  2. "Yaxşı, təşəkkür edirəm!"
  3. "Necəsən?"
  4. "Yaxşı, təşəkkür edirəm!"

Siz deterministic dövrü yaratmaq lazımdır. Necə görünür? Biz dizayn daha yaxşı qavranılması üçün dil "Pascal" istifadə edin.

i 1.: = 1 2 edin:

- i bir loop təkrar sayı müəyyən bir counter dövrü deyil.

2. başlayın (iki söz açıq buruq bracket bədən dövrü və birlikdə təkrar edir.)

3. Writeln ( 'Necəsən?'):

- söz tək quotes olan writeln nəticə ifadələr deməkdir.

4. Writeln ( 'Gözəl, thanks).

5. End.

6. i: = i 1 +.

Gördüyünüz kimi, olduqca asan və hətta əyləncə əsas alqoritmik dizayn istifadə etmək. Əsas alqoritmlər həqiqətən də onlara olmadan bu proqramları yazmaq mümkün deyil, tanınır.

postcondition ilə Cycle

postcondition ilə Cycle operator aşırma və ya mürəkkəb sözlər daxil olmadan tədbirlər qeyri-müəyyən sayda təkrar oluna bilər. O, ən azı bir dəfə icra olunacaq. vəziyyəti yalan qədər dövrü işləyir. O, doğru göstəricilərin formalaşdırılması vermir. Bu alqoritm bu inşa edilmişdir. bu sürətlə iş bu növü əsas alqoritmik tikinti.

B. Sözün deməkdir qədər bu dövrü həyata keçirilməsi üçün layihə təkrar A tələb edir "vəziyyəti yalan qədər addımlar təkrar". düzgün dəyər almaq lazımdır səbəb data - Müvafiq olaraq, B vasitəsilə A özü tərəfindən təkrar prosesi ifadə edir.

şərti ilə Cycle

postcondition ilə Cycle hər hansı bir halda ən azı bir dəfə həyata keçirilir, belə bir şəkildə inşa edilir. Lakin dövrü şərti halda tələb olunur, və təkrarlanma olmaması həyata keçirilir edilməməlidir halları var. Əks halda, nəticə yanlış olacaq. Bu halda şərti ilə loop var. lazımi dizayn yaratmaq üçün «A B isə». ilk komanda sözün kimi tərcümə olunur "uzun". A - şərait, və - təkrar olacaq tədbirlər. bütün dizayn "şərt doğru qədər, bir fəaliyyət həyata keçirir." deməkdir

yalnız müəyyən hallarda bütün əsas alqoritmik dizayn işləri. onlar şərti ilə loop hansılardır? Əgər birdən çox fəaliyyət təkrar, lakin bir neçə etmək lazımdır, onda siz mürəkkəb hesabatları, və ya xüsusi Mötərizədə və ya istifadə etməlidir. onu girərkən şərt doğru deyil, əgər dövrü yaxşı icra edilə bilməz. Doğru əgər Buna görə, hərəkət təkrar olacaq.

yardımçı alqoritm

yardımçı alqoritm yalnız adını ifadə edərək digər proseslərdə istifadə olunur. O, böyük bir alqoritmik dizayn tətbiq deyil. proqramlaşdırma dilləri belə fəaliyyət prosesi adi adlanır. kodu ilə iş asanlaşdırmaq və daha çox asanlıqla hər bir fəaliyyət bir yardımçı alqoritm bir vahid daxil birləşdirilmiş olunur problemləri həll etmək üçün. Onların hər biri ona müraciət sonradan dəfələrlə imkan verir, onun adı, xahiş edə bilər.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 az.birmiss.com. Theme powered by WordPress.