Hyrje në Algoritme dhe Programim

Print

Edlir Spaho, Msc

Kodi
CMP 111
Emri
Hyrje në Algoritme dhe Programim
Semestri
1
Leksione
3.00
Seminare
1.00
Laboratore
0.00
Kredite
3.50
ECTS
5.00
Përshkrimi

Kursi “Hyrje në Algoritmikë dhe Programim” ofron njohuri të përgjithshmë mbi algoritmet bazë, bllokskemat, hapat për ndërtimin dhe strukturën e një programi. Në këtë kontekst më anë të këtij kursi studentët do të mësojnë teknikat për programimin modular me eficence dhe efikasitet sa më të lartë. Ky kurs do të trajtojë fillimisht konceptet themelore të algoritmikës dhe programimit, për të vazhduar më tej me prezantimin dhe deklarimin e tipeve standarte të të dhënave, strukturat kushtëzuese dhe ciklike, funksionet, rekursivitetin, vargjet dhe pointerat. Gjithashtu në këte kurs do të trajtohen dhe algoritmet kryesore që përdoren gjetjen dhe renditjen e të dhënave.

Objektivat

Ky kurs synon: Të familjarizojë studentët me konceptet bazë të algoritmikës dhe programimit. Të njohë studentët me algoritmet bazë, strukturën dhe hapat për ndërtimin e një programi. T’i mundësojë studentëve ndërtimin e programeve bazë të orientuar në objekte. T’i shpjegojë rëndësinë e algoritmeve në ndërtimine programeve sa më efikase. T’i shpjegojë studentëve elementet, sintaksën dhe mjetet bazë të përdorura në një program. Të zhvillojë tek studentët mendimin krititk në analizimin e algoritmit dhe performancës së një programi.

Java
Tema
1
Hyrje në Kompjutera dhe C++ Në këtë temë bëhet një përshkrim i përgjithshëm i kursit, koncepteve themelore të literaturës kompjuterike dhe një prezantim i përgjithshëm i gjuhës së programimit C++. Tema trajton gjithashtu dhe hapat për krijimin e krijimin, kompilimin, ekzekutimin dhe ruajtjen e një projekti të krijuar me anë të një IDE-së CodeBlocks. (fq. 3-29)
2
Hyrje në Programimin C++, Bllokskemat, Algoritmet dhe Pseudokodet Tema trajton hapat për ndërtimin e një programi, strukturën kryesore të ndërtimit të tij si dhe paraqitjen analitike dhe grafike të algoritmeve të thjeshta. (fq. 30-50)
3
Deklarimet e Variablave, Tipet e të dhënave, Operatorët dhe Shprehjet Kjo temë trajton mënyrën e deklarimit të tipeve standartë të të dhënave të gjuhës së programimit C++, rregullat për përdorimin e identifikatorëve, variablat, konstantet, operatorët matematikore, relacionale dhe logjikë, si dhe operatorët e rritjes dhe zbritjes. (fq. 50-72)
4
Formatimi i të dhënave në C++ Në këtë temë do të trajtohen instruksionet që përdoren për lexim dhe shkrim, mënyrat e shkrimit të tipeve të ndryshme të të dhënave, shkrimi me precizitet të caktuar, shkrimi i të dhënave eksponencilate, etj... (fq. 74-103)
5
Strukturat Kushtëzuese Kjo temë trajton strukturat kushtëzuese if, if-else, operatorin e kushtëzimit, strukturat kushtëzuese të ndërthurura, degëzimet me anë të komandës switch si dhe kapërcimin në pjesë të ndryshme të programit. (fq. 124-174)
6
Strukturat Kushtëzuese Kjo temë trajton strukturat kushtëzuese if, if-else, operatorin e kushtëzimit, strukturat kushtëzuese të ndërthurura, degëzimet me anë të komandës switch si dhe kapërcimin në pjesë të ndryshme të programit. (fq. 124-174)
7
Strukturat Ciklike Kjo temë trajton çfarë janë strukturat ciklike, përdorimin e tyre, elementet e një stukture ciklike, llojet kryesore të strukturave ciklike (for, while dhe do-while), kapërcimi brenda dhe jashtë strukturës ciklike si dhe strukturat ciklike të ndërthurura. (fq. 175- 286)
8
Provimi gjysmë final
9
Strukturat Ciklike Kjo temë trajton çfarë janë strukturat ciklike, përdorimin e tyre, elementet e një stukture ciklike, llojet kryesore të strukturave ciklike (for, while dhe do-while), kapërcimi brenda dhe jashtë strukturës ciklike si dhe strukturat ciklike të ndërthurura. (fq. 175- 286)
10
Funksionet Në këtë temë do të trajtohet deklarimi dhe thirrja e funksioneve, ndërtimi i funksionet e thjeshta si shuma dhe prodhimi, funksionet me dhe pa rezultat, funskionet me dhe pa parametra formale, deklarimi dhe thirja e disa funksioneve njëkohësisht si dhe thirrja shumë herë e një funksioni. (fq. 287-310)
11
Funksionet dhe Rekursioni Kjo temë trajton konceptin e rekursivitetit, implementimin e tij me anë të funksioneve si faktorieli, funksionet void dhe inline, implementimin e tyre me shembuj të ndryshëm si dhe makro funksionet. (fq. 344-352, 373-384)
12
Vektorët dhe Matricat Në këtë temë do të trajtohen përkufizimet e vektorëve dhe matricave, deklarimi, leximi dhe shkrimi i elementëve të tyre, shuma e elementëve të tyre, leximi dhe shkrimi i një elementi ose elementesh të caktuar si dhe shkrimi i tyre në një format të caktuar. (fq. 104-123)
13
Veprimet me Vektorët dhe Matricat Kjo temë trajton veprimet e ndryshme që mund të kryhen me vektorët ose matricat si gjetja e anëtarëve të caktuar, gjetja e elementit me vlerë më të madhe ose më të vogël, numërimin e elementëve sipas një ose disa kritereve të caktuara, renditjet e elementëve si dhe formimine e vektorit nga matrica dhe anasjelltas. (fq. 175- 286)
14
Funskionet me vektorë dhe matrica Kjo temë trajton funksionet për seritë e numrave, funksionet matematikore të vetë gjuhës dhe funskione matematikore të krijuara nga përdoruesi, funskionet për veprimet me stringjet si gjetja e gjatësisë së stringut, kopjimi i stringjeve te pjeshsëm ose të plotë, bashkimi i dy stringjeve si dhe deklarimin e variablave lokalë dhe globalë. (fq. 353-373)
15
Përsëritje dhe Prezantim Projektesh
16
Provimi final
1
Studentë do të jenë në gjendje të kuptojnë parimet e strukturimit të bllokskemave dhe algoritmeve.
2
Studentët do të jenë në gjendje të kuptojnë dhe përdorin elementët kryesorë të gjuhës së programmimit C++.
3
Studentët do të jenë në gjendje të mësojnë si të programojnë në gjuhën C++ duke përdorur strukturat kushtëzuese, strukturat ciklike, funksionet, vektorët, matricat dhe skedarët.
4
Studentët do të jenë në gjendje të përdorin teknika të ndryshme programimi për të ndërtuar programe (module programesh) me efikasitet të lartë.
5
Studentët do të jenë të pajisur me terminologjinë dhe teknikat e nevojshme për të vijuar me lëndë të tjera pasardhëse si Programimi i Orientuar në Objekte, si dhe gjuhë të tjera programimi.
Sasia Përqindja Përqindja totale
Gjysmë finale
1 20% 20%
Kuize
1 10% 10%
Projekte
0 0% 0%
Detyra
1 30% 30%
Laboratorët
0 0% 0%
Pjesëmarrja në mësim
0 0% 0%
Përqindja totale e vlerësimit
60%
Përqindja e provimit përfundimtar
40%
Përqindja totale
100%
Sasia Kohëzgjatja (orë) Gjithsej (orë)
Kohëzgjatja e kursit (përfshirë javët e provimit)
16 4 64
Orë studimi jashtë klasës
14 4 56
Detyrat
1 4 4
Gjysmë finale
1 5 5
Provimi përfundimtar
1 8 8
Të tjera
0 0 0
Ngarkesa totale e punës
137
Ngarkesa totale e punës / 25 (orë)
5.48
ECTS
5.00