Algoritmet

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 54

Algoritmet dhe programimi

si mundesi per aplikimin e TIK


doc. dr.Mirlinda Ebibbi
Programimi
 Që të mund të kryhet ndonjë problem në kompjuter,
duhet që për të të ekzistojë programi.
 Procedura e përpilimit të programit quhet programim.
 Njerëzit të cilët përpilojnë programe quhen
programerë.
 Disa gjuhë programuese: Pascal, Delphi, Fortran, C, C+
+, Visual BASIC, Visual OBJECT, etj..
Zgjedhja e detyrave me anë të kompjuterit

Me proces të zgjidhjes së problemeve me kompjuter nënkuptohet


veprimtaria e ekspertëve në kompjuter me qëllim të zgjidhjes së problemit
të caktuar. Kushtimisht ky proces mund të paraqitet në këto etapa:
 Definimi i problemit
 Formimi i modelit matematikor
 Algoritmimi
 Programimi
 Testimi i programit
 Fitimi dhe analiza e rezultateve
 Punimi i dokumentacionit
Algoritmet

 Grumbulli i veprimeve me një radhë të fiksuar, të


cilët ndërmerren gjatë zgjidhjes së një problemi të
caktuar, quhet algoritëm.
 Varësisht nga operacionet që përdoren gjatë
përpilimit, algoritmet mund të grupohen në
algoritme logjike dhe algoritme numerike.
Shembull. Algoritmi per shfrytezimin e automatit per kafe:

Hapi 1. Te cmimi lexo cmimin e pijes se deshiruar;


Hapi 2. Te hapja per para hidh para sipas cmimit te
permendur;
Hapi 3. Shtyp butonin prane emrit te pijes;
Hapi 4. Nese deshiron pije me sheqer. Shtyp butonin prane
shkrimit “sheqer”;
Hapi 5. Prit pijen te pergatitet dhe gota te mbushet;
Hapi 6. Merr goten me pije.
Domethenia e vertete e konceptit gjendet ne informatike ku a
paraqet varg preciz te instruksioneve te dhena te kompjuteri.

Algoritmi perkufi zohet ne kete menyre:

Algoritmi paraqet varg i numrit te fundshem te veprimeve precize


te formuluara me renditje sakte te dhen te realizimit te tyre.

Veprimet prej te cilave perbehet algoritmi quhen hapa


algoritmik.
Fjala algoritem vjen prej fjales Аlсhwarizmi ose Коvаrеzmа eshte
mbiemri i shkrimtarit, matematikanit dhe astronomit persian te shekullit IX
Миhаmmеdа ibn Миѕе аl Кhоwаrizmi.

Ai me librin e tij nga matematika ka treguar zgjidhje te disa problemeve


aritmetikore ne forme te udhezimeve te cilat jane perbere prej sakte hapave te
caktuar.
Karakteristikat e algoritmit
• Perfundimi – algoritmi patjeter te deri te zgjidhja sipas numrit te fundshem
te hapave.

• Perkufizimi dhe padykuptimesia – cdo hap algoritmik patjeter te jete


njevleresisht i perkufizuar, duhet te parashikohen te gjitha rastet per te dhena
te hyrjeve te ndryshme.

• Hyrje – algoritmi mund por jo patjeter te kete nje ose me shume te dhena
hyrese.

• Dalje – algoritmi patjeter te kete nje ose me shume te dhena dalese.

• Efikasiteti – algoritmi duhet te deri te zgjidhja ne kohe sa me te shkurter me


zbatimin sa me pak hapave.

• Realizueshmeria – algoritmi patjeter te jete i realizueshem ne kompjuter.


Strukturat algoritmike

Me strukture te algoritmit nenkuptohet renditja e kryerjes se hapave te caktuar


te algoritmi.

Cdo algoritem mund te paraqitet me shfrytezimin e njeres prej te tri strukturave


themelore:

• struktura e renditur (shkencat) pse struktura vijore


• struktura per zgjedhje (seleksionimi) pse struktura e degezuar
• struktura me perseritje (iteracion) ose struktura ciklike.
Struktura vijore (lineare)

•Struktura vijore algoritmike nenkupton kryerje te hapave algoritmik njeri pas


tjetrit sikurse ato vijojne.

•Prej fillimit deri ne fund ekziston vetem nje rruge, nuk ka perseritje dhe nuk ka
degezim.

• Keto zakonisht jane algoritme te te cilat ka hyrje, perpunimi i te dhenave dhe


dalje (per shembull, njehsimi i cmimit te taksi sherbimeve).
Strukturat e degezuara

• Me strukturen algoritmike te degezuar eshte mundesuar zgjidhja e


problemeve ku te dhenat duhet te plotesojne ndonje kusht (valle numri eshte
pozitiv, valle numri eshte cift etj.).

• Varesisht prej asaj prej asaj valle kushti eshte plotesuar ose nuk eshte
plotesuar, kryhen njeri hap ose tjetri.

• Egziston pike e testimit, perkatesisht degezimi i algoritmit (per shembull,


algoritmi qe shtyp me te madhin prej dy numrave).
Struktura ciklike

• Ndonjehere eshte e nevojshme disa hapa algoritmik te perseriten,


perkatesisht te kryhen me shume here.

• Hapa te atilla algoritmike paraqesin cikluse, por strukturat algoritmike


te cilat permbajne cikluse quhen struktura ciklike algoritmike.
Programet
• I tregojne kompjuterit se si te zgjidhet problem i caktuar.

• Ne realitet, detyra e programeve eshte t’I tregojne kompjuterit se si t’i perhape te


dhenat hyrese, se si te operon me ato dhe se si t’i ktheje te dhenat dalese.

• Programi eshte menyre e te shenuarit e algoritmit ne forme te kuptueshme per


kompjuterin.

• Algoritmet jane me te pergjithshme dhe me abstrakte prej programeve.

• Nje algoritem mund te jete i zgjidhur prej njeriut ose makines, ose prej te dyve.
Programi patjeter te jete i kryer prej kompjuterit. Lidhja ndermjet programit,
algoritmit dhe te dhenave eshte dhene me formulen:

Programi = Algoritmi + Te dhena

• Programet i shkruan njeriu dhe i fut te memoria e kompjuterit nepermjet tastieres


ose nepermjet njesive tjera hyrese.
Programi
• Eshte varg prej urdhrave te cilat realizohen sipas renditjes sakte te caktuar edhe
me sakte qellim te perkufi zuar.

• Urdhri eshte element themelor i programit dhe paraqet instruksion deri te


kompjuteri te kryeje veprime te caktuara.

• Urdhri eshte element baze i nje programi.

• Me urdhrat sakte eshte perkufizuar cka dhe se si kompjuteri duhet te realizoje.

• Me perdorimin e drejte te programeve konsumatori udheheq me kompjuterin.

• Kompjuteret mund te kryejne programe te llojllojshme dhe konsumatori lehte


kalon prej njerit program ne tjetrin.

Programet jane pjese e softuerit.

• Softuerin e perbejne programe te cilat te cilet nga njera ane e kontrollojne


funksionalitetin e te gjitha pjeseve harduerike te kompjuterit (softueri sistemor),
por nga ana tjeter kryejne perpunim te te dhenave (softueri aplikativ).
• Softueri paraqet lidhje ndermjet konsumatorit dhe kompjuterit.
Vetite kryesore te gjuheve programore te larta

• Vetite kryesore te gjuheve programore te larta jane mundesi te kryhen


te kompjuteret me procesor te ndryshem dhe kuptueshmeri pasi jane
mjaft te ngjashme me gjuhen natyrore.

• Per kompjuterin te mbledh dy numra dhe rezultatin ta mbaje mend te


ndonje vend i trete i memories, shkruhet urdhri i tipit С = А + В qe do te
thote:

mblidhi numrat qe jane shkruar ne А dhe В, por rezultati ruaje te С.


Gjeneratat e gjuheve programore
Gjuhet e pergjithshme programore
Roli I softwerit
Procesi i perpunimit te nje programi

Programerët programet e tyre i shkruajne ne ndonje prej


gjuheve te larta programore, megjithate, kompjuteri mund
te kryeje vetem program te shkruar ne gjuhe makinerike.

Perkthimi i programeve ne gjuhe makinerike realizohet ne


dy menyra:
• me ndihmen e programeve per perkthim ku krijohet
versioni realizues i programit

• me ndihmen e programeve per interpretim.


Krijimi i programit realizues

•Programi i shkruar ne ndonjerin prej gjuheve te larta


programore quhet programi burimor ose kod programor
(ѕоurce code).

• Programin te cilin e realizon kompjuteri quhet programi


realizues ose kodi realizues (ехесutаble соdе).

• Shnderrimi i kodit burimor ne kod realizues kryhet ne dy


hapa me ndihmen e programeve te vecanta sistemore te
quajtur perkthyes dhe lidhes.
Procesi i te shkruarit e programit eshte proces i perbere i cili
perbehet prej kater fazave:

1. Te shkruarit e kodit burimor,

2. Perkthimi i kodit burimor,

3. Lidhja me kodin burimor,

4. Testimi i programit.
Te shkruarit e kodit burimor

•Faza e pare e te shkruarit e kodit burimor ose kodimi. Pasi qe


do te kryhet te shkruarit e kodit burimor, ai ruhet te datoteka e
kodit burimor te disku.

•Te kjo datoteke zakonisht dhe jepet ndonje emer pershkrues i


shoqerohet ekstenzion perkates me gjuhen programore ne te
cilen shkruhet.

• Per datotekat e shkruara te gjuha programore С++ zakonisht


u shoqerohet vazhdimi. срр, per shembull mbledhja.срр.
Perkthimi i kodit burimor

•Faza e dyte eshte perkthim i kodit burimor me ndihmen programit perkthyes ose
kompajleret (соmpilers).

• Perkthyesi e kontrollon sintaksen e kodit burimor edhe ne rastin e gabimeve te


verejtura shkruan porosi perkatese per gabimet.

•Keto gabime quhen gabime sintaksore ose gabime gjate perkthimit (соmpile-
time errors). Gabimet sintaksore zbatohen te fjalet e shkruara jo drejte prej gjuhes
programore, jo drejte te shfrytezuara ose shenja interpuktive te leshuara, jo shfrytezim
i drejte i kllapave etj.

•Pas marrjes se porosise per gabime, programori perpiqet te njejtet t’i permiresoje dhe
perseri e perkthen kodin burimor.

• Kur te gjithe gabimet do te jene te larguara, procesi i perkthimit mund me sukses te


realizohet.

•Me perkthim te kodit burimor fitohet datoteka prej kodit objekt (оbјесt соdе) qe
zakonisht e ka vazhdimin.о ose.оbј
Lidhja te kodi realizues

•Pas perkthimit vijon faza e trete – lidhja e kodeve objekte te kodi realizues
me ndihmen e programeve lidhese (linkers).

•Kodi objekt i fituar me perkthim duhet te lidhet me datotekat ekzistuese te te


cilat gjenden tanime programe te vogla tanime te perkthyera te cilat shpesh
shfrytezohen te programet. Keto datoteka quhen biblioteka (libraries).

•Nese kodi nuk mund te lidhet me bibliotekat e nevojshme, lidhesi do te


paraqese porosi per gabimin dhe kodi realizues nuk do te krijohet.

• Keto gabime quhen gabime gjate lidhjes(link-time errors).

• Programori patjeter t’i permiresoje keto gabime dhe perseri te perpiqet dhe
perkthim dhe lidhje.

•Me lidhje te suksesshme fitohet kodi realizues, perkatesisht datoteka te ciles


i shoqerohet vazhdimi.ехе.

• Datoteka e realizuar mund te shfrytezohet ne menyre te pavarur te cilido


kompjuter.
vogla
Paraqitja analitike e algoritmit logjik
Paraqitja grafike
Paraqitja grafike e algoritmit logjik
Paraqitja analitike dhe grafike e algoritmit
numerik
Funksioni
Llogaritja e shumës
Llogaritja e prodhimit

You might also like