1 / 33

PROGRAMIM I

PROGRAMIM I. UNIVERSITETI I TETOVËS. Përmbajtja. 1. Programimi. 2. Gjuhët programuese. 3. Algoritme. Programimi. PROGRAMIMI – procesi i shkuarjes së programeve kompjuterike.

yetta
Download Presentation

PROGRAMIM I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PROGRAMIM I UNIVERSITETI I TETOVËS

  2. Përmbajtja 1. Programimi 2. Gjuhët programuese 3. Algoritme

  3. Programimi PROGRAMIMI – procesi i shkuarjes së programeve kompjuterike. GJUHË PROGRAMUESE – gjuhë artificiale për komunikim në relacionin njeri-kompjuter që mundësojnë shprehjen e veprimit të zgjidhjes kompjuterike të problemeve të caktuara. KLASIFIKIM I PËRGJITHSHËM I GJUHËVE PROGRAMUESE: • Gjuhë makinerike (Machine Languages). • Gjuhë simbolike - asembler (Assembly Languages). • Gjuhë programuese të nivelit të lartë (High-level Programming Languages).

  4. Programimi GJUHË MAKINERIKE (1945) – programet përmbajnë komanda binare (shifra 0,1) dhe heksadecimale (shifra 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F). KARAKTERISTIKA: • Të vështira për programim. • Të varura nga kompjuteri (procesori). • Nevojiten komanda për operacione elementare të procesorit. Program makinerik Komanda binareKomanda heksadecimale 1000111011011000 8ED8 1100110100100001 CD21 1011010001001100 B44C

  5. Programimi GJUHË SIMBOLIKE - ASEMBLER (1950) – programet përmbajnë komanda me simbole të paracaktuara (Move, Load, Add, …). KARAKTERISTIKA: • Më të kuptueshme për programim në krahasim me gjuhët makinerike. • Të varura nga kompjuteri. • Është i nevojshëm përkthim i komandave simbolike në makinerike. • Nevojiten komanda për operacione elementare të procesorit. Program në asembler 16D7:000F Move [BX], AL 16D7:0011 Move AH, 4C16 16D7:0013 Int 21

  6. Gjuhë programuese GJUHË PROGRAMUESE TË NIVELIT TË LARTË – programet përmbajnë komanda me fjalë nga gjuha e natyrshme e njeriut. KARAKTERISTIKA: • Programimi është më i kuptueshëm dhe më i pranueshëm në krahasim me gjuhët makinerike dhe simbolike. • Nuk janë të varura nga kompjuteri. • Është i nevojshëm përkthim i programit burimor në instruksione makinerike. • Nuk nevojiten komanda për operacione elementare të procesorit. Program në C++ S=0; For (i=1; i<=10, i++) { S=S+i }

  7. Gjuhë programuese KLASIFIKIMI I GJUHËVE PROGRAMUESE TË NIVELIT TË LARTË (sipas mënyrës së përpunimit të të dhënave): 1. Gjuhë imperative (të dhëna hyrëse  komanda  rezultate dalëse) 2. Gjuhë deklarative (përshkruhet mënyra e fitimit të rezultatit) GJUHË PROGRAMUESE IMPERATIVE 1. Gjuhë procedurale (Programim strukturor): C, Pascal, Algol, Fortran, Basic etj. 2. Gjuhë objekt-orientuese (Programim i orientuar në objekte): C++, C#, Java,etj. GJUHË PROGRAMUESE DEKLARATIVE: • Gjuhë funksionale (të dhëna hyrëse  funksione  rezultate dalëse): Lisp,etj. • Gjuhë logjike (të dhëna hyrëse  relacione  rezultate dalëse): Prolog etj.

  8. Gjuhë programuese GJUHË PROGRAMUESE TË NIVELIT TË LARTË: • Fortran (1955, IBM, Formula Translating Language) – llogaritje komplekse matematikore në aplikacione shkencore dhe inxhinierike) • Cobol (1959, Common Business Oriented Language) – aplikacione komerciale • Algol (1960, Algorithm Language) – shprehje programore e algoritmeve të ndryshme. • Basic (1965, John Kemeny, Beginner’s All-Purpose Symbolic Instruction Code Language), • Pascal (1971, Niklaus Wirth) – në universitete. • Zbatim i kufizuar për aplikacione industriale dhe komerciale. • C (1972, Dennis Ritchie, Bell Laboratories) – shkruarje e sistemeve operative (UNIX, Windows etj.)

  9. Gjuhë programuese • C++ (1990, Bjarne Stroustup, Bell Laboratories) – gjuhë programuese hibride • Programim i strukturuar • Programim i orientuar në objekte • Visual Basic (1991, Microsoft) – gjuhë programuese hibride • Programim i strukturuar • Programim i orientuar në objekte • Programim vizual • Visual C++ (1995, Microsoft) – programim vizual • Java (1995, James Gosling, Sun Microsystems) • Programim në Internet (përmbajtje dinamike të Web-faqeve) • Aplikime për pajisje të ndryshme (telefona mobil, pager, PDA etj)

  10. Gjuhë programuese • C# (2000, Anders Hejlsberg, Microsoft) – bazohet në gjuhët C, C++ dhe Java. • Përdor hapësirë të integruar zhvillimi (IDE, Integrated Development Environment) • Përdor module të përbashkëta me Visual C++ dhe Visual Basic • Programim i orientuar në objekte. • Programim vizuel. • Programim në Internet.

  11. Gjuhë programuese • SINTAKSA E GJUHËS – përcakton rregullat për krijimin e komandave. • SEMANTIKA E GJUHËS – përcakton domethënien e komandave për të realizuar veprime plotësisht të definuara. • PROGRAM BURIMOR (Source Code) – programë e shkruar në gjuhë programuese të nivelit të lartë • PROGRAM EKZEKUTIV (Executive program) – program makinerik • PËRKTHYES (Compiler) – program sistemor që përkthen programin e shkruar në gjuhë të nivelit të lartë në program makinerik

  12. Gjuhëprogramuese Përkthimi i programeve Programi burimor Përkthyesi (Compiler) Programi ekzekutiv Intepretimi i programeve Programi burimor Interpretuesi (Interpreter) Rezultate dalëse Të dhëna hyrëse

  13. Zgjidhje kompjuterike e problemit të caktuar: 1. Definimi i problemit 2. Definimi i algoritmit (veprimit për zgjidhje të problemit) 3. Programimi (Shkruarja e programit) 4. Testimi i programit

  14. Algoritme • ALGORITËM – grumbull i veprimeve me një radhë të fiksuar që ndërmerren për zgjidhje të një problemi të caktuar. • Abu Jafar Mohammed Musa Al Khowarizmi, (Algorithmi) – rregulla për ekzekutim të katër operacioneve bazike me shifra arabe (shek.IX). • HAPA ALGORITMIKE – veprimet e algoritmit. • ALGORITËM ANALITIK • Algoritëm i përgjithshëm. • Algoritëm i detajizuar.

  15. Algoritme PROBLEMI: Caktimi i numrit më të madh nga tre numra ALGORITËM ANALITIK I PËRGJITHËM: Hapi 1. Leximi i tre numrave. Hapi 2. Krahasimi i dy numrave dhe përcaktimi i numrit më të madh. Hapi 3. Krahasimi i numrit më të madh nga Hapi 2 me numrin e tretë. Hapi 4. Shtypja e numrit më të madh nga tre numrat. ALGORITËM ANALITIK I DETAJIZUAR: Hapi 1. Leximi i numrave a, b, c. Hapi 2. Nëse a>b atëherë xa, përndryshe xb. Hapi 3. Nëse x>c atëherë yx, përndryshe yc. Hapi 1. Shtypja e numrit y.

  16. Programimi • PARAQITJA E ALGORITMEVE • Tekstuale – përdoret pseudo-gjuhë me fjalë të caktuara • Grafike – përdoren bllok-diagrame FJALË TË PSEUDO GJUHËS • algoritëm, • subalgoritm, • fillim, • fund, • lexo, • shtyp, • nëse, • atëherë, • përndryshe, • fund_nëse, • përderisa, • ekzekuto • përsërit, • për, • hap, • zmadho, • zvoglo, • dalje.

  17. Fillim Fund Algoritme Paraqitja grafike e algoritmeve Tregon fillimin e algoritmit Lexohen vlerat e variabllave të shënuara në bllok Lexohen vlerat e variabllave të shënuara në bllok Realizohen veprimet ose llogaritjet të shënuara në bllok Degëzimi i veprimeve në bazë të kushteve të shënuara në bllok Tregon fundin e algoritmit

  18. Programimi Paraqitja tekstuale e algoritmit për caktimin e numrit më të madh nga tre numra algoritëmNumriMaksimal: fillim lexo a,b,c; nëse a>b atëherë xa përndryshe xb fund_nëse nëse x>c atëherë yx përndryshe yc fund_nëse shtyp y fund

  19. Fund Algoritme Bllok diagrami i algoritmit për caktimin e numrit më të madh nga tre numra Fillim a,b,c a>b xa xb x>c yc yx y

  20. Programimi strukturor PROGRAMIMI STRUKTUROR – përdor strukturat kontrolluese për të caktuar radhitjen e ekzekutimit të hapave algoritmike. Strukturat kontrolluese: Hyrje 1. Struktura kontrolluese sekuenciale Struktura kontrolluese 2. Strukturat kontrolluese seleksionuese Dalje 3. Strukturat kontrolluese ciklike

  21. Hyrje Hapi A Hapi B . . . Hapi N Dalje 1.Struktura kontrolluese sekuenciale STRUKTURA KONTROLLUESE SEKUENCIALE (Sequence) – përmban hapa algoritmike që ekzekutohen sipas radhës. SK në pseudo-gjuhë Shembull: Fillim x15; x210; yx2; xx1+y; Shtyp x,y; Fund Fillim Hapi A; Hapi B; … Hapi N; Fund ; Ndarje e hapave algoritmike. • Dhënia e vlerës së variablës. Dhëmbëzimi.

  22. Hyrje Jo Po Kushti Hapi B Hapi A Dalje 2.Strukturat kontrolluese seleksionuese STRUKTURAT KONTROLLUESE SELEKSIONUESE (Selection) – mundësojnë selektim të një drejtimi nga drejtimet e mundshme të ekzekutimit të hapave algoritmike, sipas kushtit të caktuar logjik. KLASIFIKIMI: 1. Struktura seleksionuese për selektim të një prej dy drejtimeve të mundshme. 2. Struktura seleksionuese për selektim të një prej më tepër drejtimeve të mundshme. 1.SK seleksionuese për selektim të një prej dy drejtimeve të mundshme Pseudo-kod Shembull: Nëse a>b Atëherë xa Përndryshe xb FundNëse Nëse Kushti Atëherë Hapi A Përndryshe Hapi B FundNëse

  23. 2. Strukturat kontrolluese seleksionuese RASTI 1 – Drejtimet e mundshme mund të përmbajnë më shumë hapa algoritmike. Hyrje Pseudo-kod Shembull: Jo Nëse Kushti Atëherë Hapi A1; Hapi A2; … Hapi An; Përndryshe Hapi B1 Hapi B1; Hapi B2; … Hapi Bm; FundNëse Nëse a>b Atëherë ii+1; xa; S1S1+100; Përndryshe ii+1; xb; S2S2+200; FundNëse Po Kushti Hapi B1 Hapi A1 Hapi B2 Hapi A2 . . . . . . Hapi An Hapi Bm Dalje

  24. Hyrje Jo Po Hyrje Kushti Po Hapi A1 Kushti Hapi A Hapi A2 . . . Dalje Hapi An Dalje 2. Strukturat kontrolluese seleksionuese RASTI 2 – Një nga drejtimet e mundshme nuk përmban hapa algoritmike. Pseudo-kod Jo Nëse Kushti Atëherë Hapi A1; Hapi A2; … Hapi An; FundNëse Shembull: Pseudo-kod Nëse a>b Atëherë ii+1; xa; S1S1+100; FundNëse Shembull: Nëse Kushti Atëherë Hapi A FundNëse Nëse a>b Atëherë xa FundNëse

  25. Hyrje Shprehje a b n … Hapi A Hapi B Hapi N Hapi X Dalje 2.Strukturat kontrolluese seleksionuese Struktura seleksionuese për selektim të një prej më tepër drejtimeve të mundshme të ekzekutimit të hapave algoritmike. Pseudo-kod Rasti shprehje a: Hapi A; b: Hapi B; … c: Hapi N; Përndryshe Hapi X FundRasti

  26. 2.Strukturat kontrolluese seleksionuese Struktura seleksionuese për selektim të një prej më tepër drejtimeve të mundshme të ekzekutimit të hapave algoritmike. Shembull: Fillim Lexo n; Rasti n 1: Shtyp “Dobët”; 2: Shtyp “Majftueshëm”; 3: Shtyp “Mirë”; 4: Shtyp “Shumë mirë”; 5: Shtyp “Shkëlqyeshëm”; Përndryshe Shtyp “Gabim”; FundRasti Fund

  27. Kushti 3.Strukturat kontrolluese ciklike (SKC) STRUKTURAT KONTROLLUESE CIKLIKE (LOOP) – mundësojnë përsëritje të grupeve të hapave algoritmike. KLASIFIKIMI: 1. SKC me dalje në fillim të ciklit. 2. SKC me dalje në fund të ciklit. 3. SKC me numërim të cikleve. 1. STRUKTURA CIKLIKE ME DALJE NË FILLIM TË CIKLIT Hyrje SK në pseudo-gjuhë: DerisaEkzekuto Jo  Hapat algoritmike të ciklit ekzekutohen derisa është i plotësuar kushti Derisa Kushti Ekzekuto Hapi A; Hapi B; … Hapi N; FundDerisa Po Hapi A  Mund të mos ekzekutohet asnjë cikël nëse nuk është i plotësuar kushti. . . . Hapi N Dalje

  28. n Fillim Fund S0 i1 Jo i≤n Po SS+i i i+1 S SKC ma dalje në fillim të ciklit Shembull: Të llogaritet shuma e n numrave të parë natyrorë me strukturën kontrolluese DerisaEkzekuto. Algoritmi Shuma_n_DE Fillim Lexo n; S0; i1; Derisa i<nEkzekuto SS+i; ii+1; FundDerisa Shtyp S; Fund

  29. Hyrje Hapi A . . . Kushti Hapi N Po Jo Dalje 3.Strukturat kontrolluese ciklike (SKC) 2. STRUKTURA KONTROLLUESE CIKLIKE ME DALJE NË FUND TË CIKLIT SK në pseudo-gjuhë: EkzekutoDerisa Ekzekuto Hapi A; Hapi B; … Hapi N; Derisa Kushti FundEkzekuto  Hapat algoritmike të ciklit ekzekutohen derisa është i plotësuar kushti.  Së paku një cikël ekzekutohet meqë kushti llogaritet në fund të ciklit.

  30. n Fillim Fund i ≤ n SKC ma dalje në fund të ciklit Shembull: Të llogaritet shuma e n numrave të parë natyrorë me strukturën kontrolluese EkzekutoDerisa. Algoritmi Shuma_n_ED Fillim Lexo n; S0; i1; Ekzekuto SS+i; ii+1; Derisa i<n FundEkzekuto Shtyp S; Fund S0 i1 SS+i ii+1 Po Jo S

  31. i<fund 3. STRUKTURA KONTROLLUESE CIKLIKE ME NUMËRIM TË CIKLEVE Hyrje SK në pseudo-gjuhë: PërDerinëHapi ifillim Për ifillim Derinë fund Hapi vlera Hapi A; Hapi B; … Hapi N; FundPër  Numri i ekzekutimeve të ciklit llogaritet në bazë të parametrave të strukturës. Jo Po Hapi A . . . PARAMETRA TË STRUKTURËS: i – numëruesi i cikleve. fillim – vlera fillestare e numëruesit për të cilën ekzekutohet cikli. fund –vlera e fundit e numëruesitpër të cilën ekzekutohet cikli. vlera –vlera e për të cilën ndryshohet numëruesi i. Hapi N i i+vlera Dalje

  32. n Fillim Fund S0 i1 Jo i ≤ n Po SS+i i i+1 S SKC ma numrim të cikleve Shembull: Të llogaritet shuma e n numrave të parë natyrorë me strukturën kontrolluese PërDerinëHapi. . Algoritmi Shuma_n_PDH Fillim Lexo n; S0; Për i1 Derinë n Hapi 1 SS+i; FundPër Shtyp S; Fund Parametrat e strukturës: i – numëruesi i cikleve. fillim=1 fund=n. vlera=1

  33. n Fillim Fund i ≤ n SKC ma dalje në fillim të ciklit Shembull: Të llogaritet shuma e n numrave të parë natyrorë me strukturën kontrolluese EkzekutoDerisa. Algoritmi Shuma_n_DE Fillim Lexo n; S0; i1; Derisa i<nEkzekuto SS+i; ii+1; FundDerisa Shtyp S; Fund S0 i1 SS+i ii+1 Po Jo S

More Related