Prezantim me temën e strukturës së algoritmeve. Strukturat bazë të algoritmit

Algoritmi dhe strukturat algoritmike

Mosina A.Yu.


Algoritmi është një sekuencë veprimesh të përcaktuara rreptësisht gjatë zgjidhjes së një problemi.

Algoritmi përmban disa hapa.

Hapi i algoritmit është çdo veprim individual i algoritmit.

"Një algoritëm është një renditje veprimesh."


Ekzekutues është një objekt që kryen një grup të caktuar veprimesh.

Interpretuesi mund të jetë një person, një robot, një kafshë ose një kompjuter.

Sistemi komandues i ekzekutuesit (SKI) është një grup komandash që interpretuesi mund t'i ekzekutojë.

Mjedisi artistik – mjedisi në të cilin interpretuesi vepron.


  • Zhvillon algoritmet: njeriu
  • Algoritmet ekzekutohen nga: njerëzit dhe pajisjet - kompjuterët, robotët, makinat, satelitët, komplekset Pajisjet, lodra per femije.
  • Interpretuesi e zgjidh problemin sipas një algoritmi të caktuar, duke ndjekur në mënyrë rigoroze udhëzimet (programin) pa u thelluar ose diskutuar pse po e bën këtë.

Ushtrimi: Emërtoni interpretuesit e llojeve të mëposhtme të punës:

Pastrimi i plehrave në oborr

Mësimi i fëmijëve në shkollë

Drejtimi i makinës

Përgjigja është në tabelë

Gatimi i ushqimit

Printimi i një dokumenti në një printer


Gjymtyrë– çdo veprim individual dhe algoritmi në tërësi duhet të jenë në gjendje të plotësohen

Efikasiteti– marrja e rezultateve në një numër të kufizuar hapash

Diskretiteti(ndërprerje, veçim) - ndarja e algoritmit në hapa

Determinizmi(siguria, saktësia) - çdo veprim duhet të përcaktohet në mënyrë strikte dhe të paqartë

Karakteri masiv– përdorimi i një algoritmi për zgjidhjen e problemeve të ngjashme

Vetitë e ALGORITMIT


Klasifikimi i algoritmeve sipas formës së paraqitjes :

Verbale

Tabela

Grafike (blloqe diagrame)

Software


Diagrami i bllokut grafike performancës algoritmi në formën e një sekuence të blloqeve funksionale të ndërlidhura ( elemente standarde grafike ), secila prej të cilave korrespondon me kryerjen e një ose më shumë veprimeve.


Konventat themelore në diagramet bllok

Simboli

Qëllimi i bllokut

Fillimi ose fundi i algoritmit

Hyrja ose dalja e të dhënave.

Brenda bllokut, të dhënat renditen të ndara me presje.

Procesi.

Matematika është shkruar brenda bllokut. formulat dhe operacionet për përpunimin e të dhënave.

Kontrollimi i gjendjes.

Kushtet logjike shkruhen brenda bllokut. Ka dy dalje Po (+) dhe Jo (-).

Drejtimi.


Klasifikimi i algoritmeve sipas strukturës:

Linear (në vijim)

Degëzuar (degë, zgjedhje, alternativë)

Loop (përsërit)

Ndihmës

Të kombinuara


Algoritmi linear

Algoritmi linear është një algoritëm hapat e të cilit kryhen në mënyrë sekuenciale njëri pas tjetrit.

(Shembull: algoritmi i mbledhjes së portofolit).


Struktura bazë e algoritmit linear:

Seria 1 e ekipit

Seria 2 e ekipit

Seria e ekipit N


Detyrë

Llogaritni perimetrin e një trekëndëshi arbitrar bazuar në tre brinjët e tij.

Zgjidhja:

Faza 1: Formulimi i problemit.

Të dhënat fillestare: A, B, C – brinjët e një trekëndëshi arbitrar

Prodhimi: P – perimetri i trekëndëshit.

Faza 2: Modeli matematik.

P=A+B+C


Faza 3: Hartimi i një algoritmi

Filloni

Hyni

konkluzioni

fund


1 DHE duke përdorur diagramin e rrjedhës së algoritmit , llogarit vlerën e funksionit Y në X=2,

Filloni

hyrje: X

Z=8*X

  • ZGJIDHJE:
  • X=2
  • Z = 8 * 2 = 16
  • Z = √16 = 4
  • Z = 4 – 1 = 3
  • Y = 3 * 2 = 6
  • Y = 6 / 3 = 2

Z = Z - 1

Y=3*X

Y=Y/Z

prodhimi: Y


  • Algoritmet mund të përshkruajnë proceset e transformimit të një shumëllojshmërie të gjerë objektesh. Vetë fjala "algorithm" vjen nga "algorithmi" - drejtshkrimi latin i emrit të matematikanit të shquar të shekullit të 9-të al-Khwarizmi, i cili formuloi rregullat për kryerjen e operacioneve aritmetike.
  • Algoritmi- një grup komandash që përshkruajnë rendin e veprimeve të interpretuesit për të arritur rezultatin e zgjidhjes së një problemi në një numër të kufizuar veprimesh.

Karakteristikat e algoritmeve:

1. Diskretiteti- algoritmi duhet të paraqesë procesin e zgjidhjes së një problemi si ekzekutim sekuencial të disave hapa të thjeshtë. Ku çdo hap i algoritmit kërkon një kohë të kufizuar për të përfunduar, domethënë, shndërrimi i të dhënave burimore në rezultate kryhet në mënyrë diskrete në kohë.

2. Determinizëm (siguri). Në çdo moment në kohë, hapi tjetër i punës përcaktohet në mënyrë unike nga gjendja e sistemit. Kështu, algoritmi prodhon të njëjtin rezultat (përgjigje) për të njëjtat të dhëna fillestare.


3. Qartësia- algoritmi duhet të përfshijë vetëm ato komanda që janë në dispozicion të interpretuesit dhe janë të përfshira në sistemin e tij të komandës.

4. Plotësia (ekstremiteti)- me të dhëna fillestare të specifikuara saktë, algoritmi duhet të përfundojë punën e tij dhe të prodhojë një rezultat në një numër të kufizuar hapash.

5. Karakteri masiv (universaliteti). Algoritmi duhet të jetë i zbatueshëm për grupe të ndryshme të dhënash hyrëse.

6. Efektiviteti- plotësimi i algoritmit me rezultate të caktuara.


Mënyrat për të shkruar algoritme:

1. Metoda e regjistrimit verbal

Mënyra verbale e shkrimit të algoritmeve është një përshkrim i fazave të njëpasnjëshme të përpunimit të të dhënave. Algoritmi specifikohet në një paraqitje arbitrare në gjuhën natyrore .

Shembull

Si shembull i një mënyre verbale të shkrimit të një algoritmi, merrni parasysh një algoritëm për gjetjen e sipërfaqes së një drejtkëndëshi

ku S është zona e drejtkëndëshit; a, b - gjatësitë e anëve të tij.

Natyrisht, a, b duhet të specifikohen paraprakisht, përndryshe problemi nuk mund të zgjidhet.


Mënyrat për të shkruar algoritme

Mënyra verbale e shkrimit të algoritmit duket si kjo:

  • Fillimi i algoritmit.
  • Cakto vlerën numerike të anës a.
  • Cakto vlerën numerike të anës b.
  • Llogaritni sipërfaqen S të drejtkëndëshit duke përdorur formulën S=a*b.
  • Nxjerr rezultatin e llogaritjeve.
  • Fundi i algoritmit.

Mënyrat për të shkruar algoritme

2. Metoda grafike

Kur paraqitet grafikisht, algoritmi përshkruhet si një sekuencë e blloqeve funksionale të ndërlidhura, secila prej të cilave korrespondon me ekzekutimin e një ose më shumë veprimeve.

Ky paraqitje grafike quhet flowchart ose flowchart. Në grafikun e rrjedhës, çdo lloj veprimi (futja e të dhënave fillestare, llogaritja e vlerave të shprehjeve, kontrollimi i kushteve, kontrolli i përsëritjes së veprimeve, përfundimi i përpunimit, etj.) korrespondon me një figurë gjeometrike të paraqitur si një simbol blloku. Simbolet e bllokut lidhen me linja tranzicioni që përcaktojnë rendin në të cilin kryhen veprimet. Më poshtë janë simbolet më të përdorura.


Mënyrat për të shkruar algoritme

Elementi i grafikut të rrjedhës

Emri

Blloku llogaritës (blloku llogaritës)

Veprimet llogaritëse ose sekuenca e veprimeve

Blloku logjik (blloku i kushteve)

Blloku i hyrjes/daljes së të dhënave

Zgjedhja e drejtimit të ekzekutimit të algoritmit në varësi të disa kushteve

Emërtimi i përgjithshëm për hyrjen (daljen) e të dhënave (pavarësisht mediave fizike)

Fillimi (fundi)

Fillimi ose fundi i një algoritmi, hyrje ose dalje në një nënprogram


Mënyrat për të shkruar algoritme

Elementi i grafikut të rrjedhës

Emri

Procesi i përdoruesit (nënrutinë)

Llogaritja duke përdorur një program ose nënprogram standard

Blloku i modifikimit

Funksioni kryen veprime që ndryshojnë pikat (për shembull, kokën e lakut) të algoritmit

Lidhës

Tregimi i lidhjes me vija të thyera midis rrjedhave të informacionit


Mënyrat për të shkruar algoritme

Shembull

Algoritmi për llogaritjen e sipërfaqes së një drejtkëndëshi


Mënyrat për të shkruar algoritme

3. Pseudokodet

përshkrime gjysmë të formalizuara të algoritmeve në një gjuhë algoritmike të kushtëzuar, duke përfshirë të dyja elementet e një gjuhe programimi dhe frazat e gjuhës natyrore, shënimet matematikore të pranuara përgjithësisht, etj.

Nuk ka një përkufizim të vetëm ose formal të pseudokodit, kështu që janë të mundshëm pseudokodë të ndryshëm, të ndryshëm në grupin e fjalëve të funksionit dhe ndërtimet themelore (bazë).


Mënyrat për të shkruar algoritme

Shembull

  • Filloni. Shkoni në pikën 2.
  • Futja e numrave a dhe b. Shkoni në pikën 3.
  • Njehsoni S=a*b. Shkoni në pikën 4.
  • Përfundim S. Shkoni te pika 5.
  • fund.

Mënyrat për të shkruar algoritme

4. Metoda e softuerit

Regjistrimi i algoritmit në gjuhën e zgjedhur të programimit.

Shembull

Shkruani ('');

Writeln('S=', S);


Llojet e algoritmeve

1. Algoritmi linear

Ky është një algoritëm në të cilin ekziston vetëm një strukturë e mëposhtme.

Në vijim- Kjo është rregullimi i veprimeve njëra pas tjetrës.


Llojet e algoritmeve

2. Algoritmi i degëzimit (nëse... atëherë... ndryshe...)

Ky është një algoritëm që ka një strukturë degëzimi.

Degëzimi- kjo është zgjedhja e veprimit në varësi të përmbushjes së ndonjë kushti.


Llojet e algoritmeve

3. Algoritmi ciklik

Ky është një algoritëm që ka një strukturë loop.

Cikli- Kjo është përsëritja e përsëritur e çdo veprimi.


Llojet e algoritmeve

4. Algoritmi i kombinuar

Një algoritëm që përmban disa struktura në të njëjtën kohë.


Gjerësia e bllokut px

Kopjojeni këtë kod dhe ngjisni atë në faqen tuaj të internetit

Titrat e rrëshqitjes:

Algoritmet dhe strukturat e të dhënave Literatura:

  • D. Knut. Arti i programimit kompjuterik. T. 1-3, M.: Mir, 1978, 1995, etj.
  • N. Wirth. Algoritmet dhe strukturat e të dhënave. M.: Mir, 1989.
Koncepti i llojit të të dhënave
  • Informacion e cila duhet të përpunohet në kompjuter është abstraksioni, duke shfaqur disa fragmente të botës reale. Përkatësisht, fragmenti që është fusha lëndore e problemit që zgjidhet. Për ta zgjidhur atë, së pari ndërtojmë informative, dhe në rastin e përgjithshëm matematikore model studiuar fusha lëndore dhe zgjidhet një ekzistues ose ndërtohet një i ri algoritmi zgjidhjen e problemit.
  • Informacion gjithmonë materializohet, paraqitet në formë mesazhe. Në përgjithësi, një mesazh përfaqëson disa regjistruar sinjal fizik . Sinjali- Kjo ndryshimi në kohë ose hapësirë ​​i një objekti, në veçanti, një parametër i një sasie fizike, për shembull, induksioni i fushës magnetike (kur ruani informacionin, më saktë mesazhe në media magnetike) ose niveli i tensionit në qarkun elektrik (në çipat e procesorit ose RAM).
  • Diskret një mesazh është një sekuencë shenjat(vlerat e sinjalit) nga disa final alfabeti(një grup i kufizuar i vlerave të parametrave të sinjalit), në veçanti, për një kompjuter kjo është një sekuencë karakteresh të alfabetit binar, domethënë një sekuencë bitash.
  • Të dhënat kompjuterike këto janë mesazhe diskrete që paraqiten në një formë të përdorshme nga një kompjuter, kompjuter i kuptueshëm. Për një procesor kompjuteri, çdo e dhënë është të pastrukturuara sekuenca e biteve (nganjëherë përdoret termi rrjedhin bit).
  • Interpretimi specifik i kësaj sekuence varet nga programi, në format e prezantimit dhe strukturat e të dhënave, të cilat janë përzgjedhur programues. Kjo zgjedhje varet në fund të fundit nga problemi që zgjidhet dhe komoditeti i kryerjes së veprimeve mbi të dhënat.
  • Kuptime të menjëhershme Kjo e pandryshueshme objektet e programit që përfaqësojnë vetveten: numrat (25, 1.34E-20), simbolet ('A', '!'), vargjet ('Fut elementet e matricës');
  • Konstante janë emra të caktuar për vlera të caktuara (const pi=3.1415926).
  • Variablat këto janë objekte që mund të marrin një vlerë, ta ruajnë atë pa ndryshuar dhe ta ndryshojnë kur kryhen veprime të caktuara (var k:integer, x:real, a:array).
  • Vlerat e shprehjes dhe funksionit. Shprehjet dhe funksionet janë rregulla për llogaritjen e vlerave të shkruara në një mënyrë të caktuar: k*x+ sqrt(x).
  • Të dhënat në program përfshijnë:
  • Lloji i të dhënave është karakteristika më e rëndësishme që përcakton:
  • grup vlerash të vlefshme;
  • shumë operacione që mund të kryhen në një vlerë;
  • struktura e vlerës (skalar, vektor, etj.);
  • një metodë e paraqitjes makinerike të kuptimit.
  • Për të shfaqur tiparet e përfaqësimit kompjuterik të të dhënave të natyrave të ndryshme në shkencën kompjuterike, disiplinat kompjuterike përdorin më të rëndësishmet Koncepti i llojit të të dhënave.
  • Lloji i një konstante, ndryshoreje ose shprehjeje mund të përcaktohet nga pamjen(nga imazhi) ose nga përshkrimi pa kryer asnjë llogaritje.
  • Çdo operacion ose funksion kërkon argumente dhe kthen një rezultat të një lloji shumë specifik. Llojet e argumenteve dhe rezultatet e operacioneve përcaktohen sipas rregullave të përcaktuara mirë të gjuhës.
  • Parimet themelore të konceptit të tipit të të dhënave
  • në gjuhët e programimit:
  • Llojet e llojeve dhe strukturave të të dhënave
  • Shkenca kompjuterike përdor një numër të madh të ndryshme llojet, te ndryshme strukturat e të dhënave, të cilat përdoren për modelimi objektet e hasura në problemet në shqyrtim.
  • Nëse struktura e një algoritmi të caktuar nuk ndryshon gjatë ekzekutimit, atëherë konsiderohet një strukturë e tillë statike , Strukturat statike të të dhënave ekzistojnë të pandryshuara gjatë e gjithë koha e ekzekutimit të algoritmit.
  • Kuptimi skalar(e thjeshtë, atomike) lloji i paraqitur e lëmuar një komponenti (shembull: koha, temperatura).
  • Strukturat dinamike krijohen, modifikohen dhe shkatërrohen ashtu si duhej në çdo kohë gjatë ekzekutimit të algoritmit.
  • Kuptimi strukturuar(i përbërë) lloji i paraqitur më shumë si një komponent (shembull: vektor, matricë, tabelë etj.).
  • Ekzistojnë lloje të paracaktuara (të paracaktuara) - standarde dhe të përcaktuara nga programi. Për standarde Llojet në përshkrimin e një gjuhe programimi përcaktojnë të gjitha karakteristikat e saj - një grup vlerash, një grup operacionesh, strukturë dhe paraqitje makinerike të një vlere. Për të sapopërcaktuara llojet, gjuha siguron një mekanizëm për të specifikuar një grup vlerash në një program dhe strukturën e vlerës. Zakonisht një lloj i ri ndërtohet në bazë të atyre standarde ekzistuese. Prandaj, shumë operacione dhe përfaqësimi i makinerive të llojeve të tilla janë të fiksuara në përshkrimin e gjuhës.
  • Llojet skalar (të thjeshta, atomike):
    • e tërë;
    • reale;
    • logjik (boolean);
    • simbolike;
  • Llojet e strukturuara (të përbëra):
    • grup;
    • regjistrimi;
    • skedar (sekuencë);
    • një tufë me;
    • lloji i objektit (klasës);
  • të gjitha kombinimet e mundshme të llojeve skalare dhe të strukturuara;
  • lloji i referencës.
  • Llojet statike (strukturat e të dhënave)
  • Llojet skalare të paracaktuara më të përdorura janë: integer ( numër i plotë), real ( reale), simbolike ( karakter), logjike ( logjike).
  • Vlerat e sakta me numra të plotë. Shembuj: 73, -98, 5, 19674.
  • Paraqitja e makinës: formati me pikë fikse. Gama e vlerave përcaktohet nga gjatësia e fushës. Operacionet: +, -, *, div, mod,=,<, и т.д.
  • Lloji numër i plotë
  • Përafrime jo të plota. Shembuj: 0,195, -91,84, 5,0
  • Paraqitja e makinës: formati me pikë lundruese. Gama dhe saktësia e vlerave përcaktohet nga gjatësia e fushës. Operacionet: +, -, *, /, =,<, и т.д.
  • Lloji reale
  • Karaktere me tekst të vetëm. Shembuj: 'a', '!', '5'.
  • Përfaqësimi i makinës: Formati ASCII. Grupi i vlerave përcaktohet nga tabela e kodit dhe aftësitë e tastierës. Operacionet: +, =,<, и т.д.
  • Lloji karakter
  • Dy vlera boolean false dhe true. Për më tepër, false
  • Paraqitja e makinës ─ vlera zero dhe një bit: false është e koduar 0, e vërtetë ─ 1. Operacionet: , , , =,< и т.д.
  • Lloji logjike
  • Mekanizmat bazë për ndërtimin e llojeve të reja skalar diskrete: numërimi, kufizimi. Në përkufizim e transferueshme llojet, një listë e të gjitha vlerave të mundshme është fiksuar, shumë operacione janë përcaktuar paraprakisht në gjuhë. Në përkufizim kufizuar llojet si një grup vlerash të vlefshme është fikse nënbashkësi një grup vlerash të një lloji diskrete, i cili në këtë rast quhet lloji bazë në raport me atë të përcaktuar.
  • Ekzistojnë lloje skalare diskrete dhe të vazhdueshme. Kuptime të shumta diskrete lloji i fundëm ose i numërueshëm. Kuptime të shumta të vazhdueshme më shumë se lloji i numërueshëm. Llojet standarde diskrete përfshijnë numër të plotë, karakter dhe logjik. Llojet standarde të vazhdueshme përfshijnë reale.
  • Llojet e strukturuara (të përbëra) karakterizohen nga: numri dhe lloji i mundshëm i komponentëve të vlerës, si dhe mënyra në të cilën aksesohet një komponent me vlerë individuale.
  • Strukturat e ngjashme me vektorët dhe matricat në shkencat kompjuterike zakonisht quhen vargjeve. Të gjithë elementët e grupit duhet të jenë një dhe e njëjta lloji.
  • Vargu ose tip i rregullt
  • Për të hyrë (referojuni) një elementi të grupit individual, përdoret një indeks ose disa indekse (w; w; A). Indekset mund të jenë shprehje, vlerat e të cilave mund të ndryshojnë në mënyrë arbitrare brenda kufijve të paracaktuar. Prandaj, ata thonë se elementet e grupit kanë akses direkt.
  • Strukturat e ngjashme me rreshtat e tabelave quhen rekorde. Komponentët e rekordeve zakonisht quhen fusha. Mund të jenë fusha të ndryshme (kolonat e tabelës). të ndryshme llojet. Për të hyrë në fushat individuale të një rekordi, ato janë fikse dhe të pandryshueshme emrat. Për shembull: Dita e fitores. Muaj:= Maj. Fushat mund të zgjidhen për përpunim në çdo mënyrë, kështu që qasja në komponentët e regjistrimit thuhet se është drejt.
  • Lloji i regjistrimit ose i kombinuar
  • Dita e fitores:
  • Skedari (sekuenca)
  • Struktura kryesore e të dhënave që përdoret për të ruajtur informacionin në pajisje të jashtme (disqe magnetikë, kaseta, etj.) është dosjet ose sekuencat. Skedari konsiderohet të jetë gjithmonë në pajisjen e jashtme. Në këtë rast, numri i përbërësve të skedarit është i panjohur; të gjithë përbërësit duhet të jenë të të njëjtit lloj. Qasja në komponentë ─ konsistente.
  • Fluturimi i Gagarinit:
  • Një tufë me
  • Në shumë probleme matematikore dhe informative lind nevoja e përdorimit të drejtpërdrejtë ose të tërthortë të objektit kryesor matematikor grupe. Lloji i të dhënave që i korrespondon një grupi është sipas definicionit të strukturuar, pasi në rastin e përgjithshëm një grup mund të përbëhet nga më shumë se një element, dhe në të njëjtën kohë duhet të kryhen operacione me të gjithë elementët e grupit si një tërësi e vetme. Numri i elementeve në një grup nuk përcaktohet paraprakisht dhe me kalimin e kohës mund të ndryshojë. Të gjithë elementët e grupit duhet të jenë të të njëjtit lloj. Qasja tek elementet individuale të grupit Nr. Mund të zbuloni vetëm nëse një element i përket një grupi apo jo, të përfshini një element në grup ose ta përjashtoni atë nga grupi. Parashikohen gjithashtu veprime standarde në grupe: bashkim, kryqëzim, zbritje, etj.
  • X1 X5 X4
  • Strukturat dinamike të të dhënave
  • Të dhëna me strukturë dinamike me kalimin e kohës ndryshimet veten e saj strukturën, dhe jo vetëm numri i elementeve, si skedarët ose sekuencat. Strukturat themelore dinamike të të dhënave janë:
  • nje objekt;
  • lista lineare;
  • pemë;
  • grafiku.
  • Në një listë lineare, çdo element lidhet me atë para tij. Për një listë lineare, ne e dimë se cili element është në fillim të listës, cili është në fund, dhe gjithashtu cili element vjen para atij aktual. Në një listë lineare, ju mund të lëvizni nga elementi aktual në atë tjetër vetëm duke përdorur lidhjet e specifikuara midis elementeve fqinjë.
  • Lista lineare
  • Në përgjithësi, merret një zinxhir elementësh në të cilin mund të kërkoni, në të cilin mund të futni elementë ose t'i përjashtoni ato.
  • Shumë lloje të tjera të strukturave dinamike organizohen në bazë të një liste lineare. Kjo është në veçanti: unaza, radhët, kuvertën Dhe pirgje.
  • Struktura unazore
  • Dallimi midis një unaze dhe një liste lineare është se një unazë ka një lidhje midis elementit të fundit të listës dhe elementit të tij të parë.
  • Për një listë lineare dhe një unazë, qasja në çdo element të strukturës është e mundur. Për ta bërë këtë, duhet të lëvizni në mënyrë sekuenciale nga një element në tjetrin. Në shumë situata të botës reale, një akses i tillë mungon. Mund të ndërveproni vetëm me elementët e parë dhe të fundit, ose vetëm me njërin prej tyre. Radhët, kuvertat dhe raftet përdoren për të modeluar objekte të tilla.
  • Struktura e radhës
  • Fundi i radhës është i disponueshëm për përfshirje, dhe fillimi është i disponueshëm për përjashtim (përzgjedhje). Elementi që mbërriti në radhë më herët dhe shërbehet i pari. Ata thonë se një radhë është një strukturë me disiplinë shërbimi FIFO (F së pari I n, F së pari O ut) ─ "i pari që vjen, i pari që shkon".
  • Struktura e kuvertës
  • Kuverta i ka të dy skajet në dispozicion, si për përfshirje ashtu edhe për marrjen e mostrave. Kështu, mund të themi se dhjetor ─ është radhë me dy drejtime.
  • Struktura e pirgut
  • Një pirg ka vetëm një fund të strukturës në dispozicion për ndërveprim: majën e pirgut. Si përfshirja e një elementi të ri në pirg ashtu edhe zgjedhja e elementit të fundit të përfshirë më parë kalon në krye të pirgut. Kështu, artikulli që mbërriti i fundit përpunohet i pari. Ata thonë se një pirg është një strukturë me një disiplinë mirëmbajtjeje LIFO (L ast I n, F së pari O ut) ─ "i fundit që erdhi, i pari që u largua".
  • FALEMINDERIT PER VEMENDJEN!

Strukturat bazë të algoritmeve Le të vendosim disa kufizime në
struktura e diagramit të rrjedhës.
Ne do të ndërtojmë një algoritëm duke përdorur vetëm
tre fragmente të një të caktuar
konfigurimet.
Le t'i quajmë struktura themelore
algoritme.

Struktura e parë bazë është në vijim
përbëhet nga një zinxhir blloqesh pa
degëzime.

Degëzimi

po
Nr
gjendje

Një rast i veçantë i degëzimit
gjendje

Degëzimi përdoret në rastet kur
kur ju duhet të zgjidhni një nga
dy mënyra për të zgjidhur problemin.

Cikli

Cikli përdoret në rastet kur
për të zgjidhur problemin është e nevojshme
përsërisni të njëjtat gjëra pa pushim
veprimet.

Lak me kusht postar

Lak me parakusht

Cikli parametrik

Cikli parametrik i kontrolluar
parametri.
Një parametër i ciklit është një variabël
e cila ndryshon në mënyrë monotone në cikël,
dhe prej tij varet kriteri i daljes
ciklit.

i:= në
Trupi
ciklit
i:= i + di
Nr
po
i > ik

i:=në
i>ik
Trupi
ciklit
i:=i+di

Projektimi i Algoritmeve Komplekse

Metoda e projektimit të algoritmit nga lart-poshtë

Metoda përbëhet nga hapat e mëposhtëm:
detyra origjinale është e ndarë në nën-detyra,
i lidhur me ndonjë algoritëm;
ky algoritëm është duke u debuguar;
çdo nëndetyrë konsiderohet si
detyrë;
procesi vazhdon deri në
detyra origjinale nuk do të jetë plotësisht
zgjidhur.

Shembull

Jepet ekuacioni ax2 + bx + c = 0 dhe funksioni
f(x).
Nëse një ekuacion ka dy reale
rrënjët x1 dhe x2, ndërtoni një tabelë vlerash
funksion në segmentin e përbërë nga n
pikë.

Algoritmi i nivelit të lartë
Hyrja a,b,c
Zgjidhje
ekuacionet
Nr
x1, x2
gjetur
po
Shkruani n
Ndërtimi
tabelat
Nuk ka asnjë vendim
STOP

Algoritmi që zbaton nënproblemin e zgjidhjes
ekuacioni kuadratik
d:=b2 – 4ac
Nr
D>0
po
X1=(- b + √ d)/2/a
X2= (- b - √ d)/2/a

Algoritmi për ndërtimin e një tabele vlerash
funksione
h=(x2-x1)/(n-1)
x = x1
i=1
Dalja x, f(x)
x=x+h
i = i +1
po
Nr
i>n

Kështu, zgjidhja e problemit
problemi përbëhet nga një algoritëm i sipërm
niveli dhe dy nëndetyra.
Algoritmi që lidh nëndetyrat
Zgjidhje
ekuacionet
Ndërtimi
tabelat f(x)

Publikime mbi temën