177
Haxhi Lajqi Prishtinë, 2011

HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

  • Upload
    buidien

  • View
    261

  • Download
    7

Embed Size (px)

Citation preview

Page 1: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Haxhi Lajqi

Prishtinë,

2011

Page 2: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Algoritmet

@Lajqi 2011

Definicioni i algoritmit: Grumbulli i veprimeve me një renditje të caktuar , të cilat merren për

zgjidhjen e një problemi に quajmë algoritëm.

Grupimi i algoritmeve: Algoritme logjike

Mbeshteten ne operacione dhe konkluzione logjike.

Algoritme numerike

Shfrytezojne shprehje dhe operacione matematikore.

10-11 Tetor 2011, FIEK, Prishtinë

1

Page 3: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Algoritme logjike

@Lajqi 2011

Si definohet një algoritëm logjik?

Shembulli 1: Algoritmi logjik për kalimin e udhëkryqit

Nëse në rrugëkryq është vendosur semafori dhe ai punon, rruga mund të

kalohet në vendëkalim pasi të paraqitet ngjyra e gjelbër. Nëse në rrugëkryq

nuk ka semafor, ose ai nuk punon, rruga mund të kalohet në vendkalim kur

nuk ka automjete, duke shikuar majtas dhe djathtas.

10-11 Tetor 2011, FIEK, Prishtinë

2

Page 4: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Algoritmet numerike

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

Për probleme të komplikuara është e pamundur të kuptohet paraqitja

analitike.

Në praktikë zakonisht përdoret paraqitja e algoritmeve e shprehur

përmes një numri hapash të cilët kryhen sipas një numri hapash të

fiksuar.

3

Page 5: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Paraqitja numerike për shembullin 1

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

1. Fillimi

2. A ka semafor?

Nëse JO, hapi i 6.

3. A punon semafori?

Nëse JO, hapi i 6.

4. A është paraqitur ngjyra e gjelbër?

Nëse PO, hapi i 9.

5. Duhet pritur. Hapi i 4.

6. Shiko majtas e djathtas

7. A ka automjete?

Nëse JO, hapi i 9.

8. Duhet pritur. Hapi i 6.

9. Kalo rrugën në vendëkalim

10. Fundi.

4

Page 6: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@Lajqi 2011 10-11 Tetor 2011, FIEK, Prishtinë

Shembull 2: Të paraqitet në formë

analitike funksioni i dhënë?

5

Page 7: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Paraqitja analitike e shemullit 2

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

1. Fillimi.

2. Merre vlerën e variablës x

3. A është x<0.9, ose x=0.9, ose x>0.9?

Nëse x<0.9, hapi i 4.

Nëse x=0.9, hapi i 5.

Nëse x>0.9, hapi i 6.

4. y=x2. Hapi i 7.

5. y=2x. Hapi i 7.

6. y=x-3. Hapi i 7.

7. Shtype vlerën e variablës y

8. Fundi.

6

Page 8: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@Lajqi 2011 10-11 Tetor 2011, FIEK, Prishtinë

7

Shembull 3: Të paraqitet në formë

analitike funksioni i dhënë?

Page 9: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Paraqitja analitike e shembullit 3

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

8

1. Fillimi.

2. Merre vlerën e variablës a

3. A është a<5 ose a>=5?

Nëse a<5, hapi i 4.

Nëse a>=5, hapi i 5.

4. z= , Hapi i 6.

5. z=2a + 3. Hapi i 6.

6. Shtype vlerën e variablës z

7. Fundi.

Page 10: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Algoritmet grafike

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

9

Page 11: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@Lajqi 2011 10-11 Tetor 2011, FIEK, Prishtinë

10

Shembulli 4: Të bëhet paraqitja e algoritmit

në formë analitike dhe grafike të sipërfaqës

s dhe perimetrit p të drejtkëndëshit?

Page 12: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Paraqitja analitike e shembullit 4

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

11

1. Fillimi.

2. Merri vlerat e brinjëve: a, b

3. s=a糾b

4. p=2糾(a+b)

5. Shtypi vlerat e llogaritura: s, p

6. Fundi.

Page 13: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Paraqitja grafike e shembullit 4

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

12

Page 14: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Paraqitja grafike e shembullit 1

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

13

Page 15: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Paraqitja numerike e shembullit 3

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

14

1. Fillimi.

2. Merre vlerën e variablës a

3. A është a<5 ose a>=5?

Nëse a<5, hapi i 4.

Nëse a>=5, hapi i 5.

4. z= , Hapi i 6.

5. y=2a + 3. Hapi i 6.

6. Shtype vlerën e variablës y

7. Fundi.

Page 16: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Paraqitja grafike e shembullit 3

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

15

Fillimi

z = a2 + 2a - 1

a < 5

z

z = 2a + 3

Fundi

a

PO JO

Page 17: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Testimi i algoritmeve

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

16

Pse duhet te testohet algoritmi?

Qe te kontrollohet saktesia e algoritmit.

Si te testohet algoritmi?

Duhet te vertetohen te gjitha rastet e mundshme te shfrytezimit te

tije. Dmth duhet te kalohet neper secilen rruge te algoritmit.

Page 18: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Testimi i algoritmit të shembullit 2

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

17

Page 19: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Testimi tabelar për shembullin 2

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

18

Page 20: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Rruga

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

19

Page 21: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Testimi i të gjitha rrugeve të shembullit 1

10-11 Tetor 2011, FIEK, Prishtinë @Lajqi 2011

20

Page 22: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Interpreterët dhe kompajlerët

22.10.2010, FIEK, Prishtinë @LAJQI 2010

Program burimor (ang. source program, source code) - fajll burimor (ang. source file, .cpp).

Kompajler (ang. compiler).

Program objektiv (ang. object program, object code) - fajll objektiv (ang. objekt file, .obj).

Linker program ekzekutiv (ang. executable program, exe file) - fajll ekzekutiv (ang. Exefile, .exe).

Programi burimor

Kompajler Programi Objektiv (.obj)

Linkeri Programi Ekzekutiv (.exe)

Fajlla tjerë objektiv

1

Page 23: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Hapja e një projekti të ri

22.10.2010, FIEK, Prishtinë @LAJQI 2010

2

1. File

2. New

3. Zgjedhim tabin さPヴラテWIデぐざ

4. Win32 Console Application

5. Emërtojmë projektin さProjekti1ざ

6. D:\Ushtrime C++\Grupi juaj ふヮくゲエ ヱIげぶ 7. Zgjedhim さAミ Wマヮデ┞ ヮヴラテWIデざ

8. Finish

Page 24: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shkruarja e programit të parë në c++

22.10.2010, FIEK, Prishtinë @LAJQI 2010

3

//Programi i pare ne C++

#include <iostream.h>

int main()

{

cout аа さMキヴW ゲW erdhet ne C++ ";

coutаа さ\ミざき return 0;

}

int main()

{

return 0;

}

int main()

{return 0;}

int main() {return 0;}

Në fund të çdo komande shënohet “;”

Page 25: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shkruarja e programit (vazhdim)

22.10.2010, FIEK, Prishtinë @LAJQI 2010

4

cin に operatori për lexim

cout に operatori për shtypje

return (kthe, kthimi) に kthimi i rezultatit të funksionit

// Komenti në një rresht

/*Komenti në disa rreshta, apo

komenti në bllok */

Page 26: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Struktura e programit

22.10.2010, FIEK, Prishtinë @LAJQI 2010

5

Direktiva preprocesorike

#include <iostream>

# - simboli për direktivat preprocesorike

include (përfshijë, përmbajë) に C++ i ka libraritë e urdhërave, të cilat i përfshinë në programe,

përmes direktivës #include.

iostream に Input Output Stream (Rrjedha hyrëse, dalëse) に përmbanë urdhërat për hyrje/dalje

(cout, cin)

Funksioni main()

fuksioni themelor

Page 27: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Kompilimi dhe ekzekutimi i programit

22.10.2010, FIEK, Prishtinë @LAJQI 2010

6

.cpp (për C++)

.ojb (fajll objektiv)

.exe (fajll ekzekutiv)

Page 28: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Gabimet në kompajlim

22.10.2010, FIEK, Prishtinë @LAJQI 2010

7

Pくゲエ N¥ゲW エ;ヴヴラテマ¥ デ; ┗WミSラゲキマ さきざ ミ¥ a┌ミS デ¥ キミゲデヴ┌ニゲキラミキデが atëherë do të na paraqitet gabim në kompajlim.

Page 29: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Ruajtja, rihapja e projektit

22.10.2010, FIEK, Prishtinë @LAJQI 2010

8

Ruajtja e projektit

1. D:\Ushtrime C++\Gヴ┌ヮキ ;け 2. File

3. Save

Rihapja e projektit

1. File

2. Open WorkSpace

3. E zgjiedhim lokacionin e projektit

Rihapja e programit

1. File

2. Open

3. Ushtrimi1.cpp

Page 30: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 1:

22.10.2010, FIEK, Prishtinë @LAJQI 2010

9

Te shkruhet programi ne gjuhen C++ per mbledhje e dy

numrave a dhe b;

Page 31: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 1 - zgjidhja

22.10.2010, FIEK, Prishtinë @LAJQI 2010

10

//Mbledhja e dy numrave // "\n" kalimi ne rresht te ri, njejte si endl #include <iostream> using namespace std; int main() { int a, b, c=0; // deklarimi i vaiablave a = 23; b = 7; c = a + b; cout<< "Shuma e numrave " << a <<" dhe " << b <<" eshte : " << c <<"\n"; return 0; }

Page 32: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Leximi i vlerave te varibalave permes tastieres

Shembulli 2

22.10.2010, FIEK, Prishtinë @LAJQI 2010

11

//Ushtrimi3 në C++ //Leximi i një variable përmes tastierës dhe shtypja e këtij numri! //Operatori për lexim "cinさ #include <iostream> using namespace std; int main() { int a; coutаа さVlera per variablen a= " ; cin >> a; // leximi i vaiablave coutаа さJu keni dhene vleren per per numrin a : " << a <<"\n"; return 0; }

Page 33: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 3:

22.10.2010, FIEK, Prishtinë @LAJQI 2010

12

Të llogaritet syprina dhe perimetri i drejtekendeshit me

brinjet a dhe b. Vlerat e variblave a dhe b te ipen permes

tastieres.

Page 34: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 3 - zgjidhja

22.10.2010, FIEK, Prishtinë @LAJQI 2010

13

#include <iostream> using namespace std; int main() // pjesa kryesore, cka ka mbrenda main funksionit ekzekutohet { int a, b, s, p; // deklarimi i vaiablave Iラ┌デаа ゎJ┌ ノ┌デWマ ゲエニヴ┌;ミキ ┗ノWヴWミ W HヴキミテWゲ ; Э さき cin >> a; Iラ┌デаа さ\ミJ┌ ノ┌デWマ ゲエニヴ┌;ミキ ┗ノWヴWミ W HヴキミテWゲ H Э さき cin >> b; s = a * b; p=2*(a+b); Iラ┌デаа さ“キヮWヴa;ケテ; Э ゎ << s << endl; Iラ┌デаа さPWヴキマWデヴキ Э ゎ << p << endl; return 0; }

Page 35: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 4:

22.10.2010, FIEK, Prishtinë @LAJQI 2010

14

Te behet gjetja e mesatares se 4 numrave te

dhene permes tastieres?

Page 36: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 4 - zgjidhja

22.10.2010, FIEK, Prishtinë @LAJQI 2010

15

//Gjetja e mesatares se 4 numrave te dhene permes tastieres. #include <iostream> using namespace std; int main() // pjesa kryesore, cka ka mbrenda main funksionit ekzekutohet { int a, b, c, d; double f ; cout<< "Ju lutem shkruani 4 numra ndaras per gjetjen e notes mesatare:\n" ; cin>>a; cin>>b; cin>>c; cin>>d; f = (a + b + c + d)/4.0; cout<< "Mesatarja e tyre eshte: " << f <<"\ミゎき っっ W ノ┌;ミ ヴヴラノキミ W ミテWテデW ゲキニ┌ヴゲW ゎWミSノざ return 0; }

Page 37: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Java 3

Universiteti i Prishtinës

Fakulteti i inxhinierisë elektrike dhe kompjuterike

Stringjet Vlerat logjike Identifikatorët Variablat, tipet e variablave Deklarimi dhe inicializimi Shtypja e rezultatit me format

- cout.width( ), cout.fill( ), cout.precision() etj.

Escape-sequence characters (karakteret speciale)

Shembuj detyrash…

@2010 LAJQI

Page 38: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Stringjet

Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë stringje.

Direktiva priprocesorike për stringje eshte:

#include <string>

さKy është një ゲデヴキミェぁざ さ┞Эヲ┝ЩΑざ に është një string

さざ に është string i zbrazët

Stringu さJETAざ Në memorie do të na shtypet

J E AT \0

@2010 LAJQI

Page 39: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Vlerat logjike

Kemi dy vlera logjike:

true (e vërtetë)

false (e pavërtetë)

Variablat logjike në program definohen si bool.

Kompjuteri këto dy vlera i ruan si numra të plotë pozitiv 1 dhe 0.

@2010 LAJQI

Page 40: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Identifikatorët

Njesitë elementare memoruese në të cilat i vendosim vlerat e variablave i

quajmë identifikatorë.

Identifikatorë formohen si kombinim i shkronjave ふ;が H ぐ ┣ が Aが Bが ぐZぶが numrave ふヰがヱがヲぐΓぶ dhe simbolit për nenvizim (_).

Janë identifikatorë:

P.sh dita, Koha, _start, c45, Madhesia

Nuk janë identifikatorë

4muaj に fillon me numër

a+b に përmban simbolin +

Nje klase に permban zbrazesire.

Vërejtje: Fjalët kyqe që janë në C++ nuk lejohen të përdoren si identifikatorë.

else, cout, if etj.

@2010 LAJQI

Page 41: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Variablat, tipet e tyre

Tipi Rangu i vlerave Madhësia në bajta

unsigned short int 0..65535 2 = 16 bita

short int -32768..32767 2 = 16 bita

unsigned long int 0..4294967295 4 = 32 bita

long int -2147483648..2147483647 4 = 32 bita

int - 16 bit -32768..32767 2 = 16 bita

Int - 32 bit -2147483648..2147483647 4 = 32 bita

unsigned int -16 bit 0..65535 2 = 16 bita

unsigned int に 32 bit 0..4294967295 4 = 32 bita

float 1.2E-38..3.4E38 4 = 32 bita

double 2.2E-308..1.8E308 8 = 64 bita

char 256 simbole 1= 8 bita

@2010 LAJQI

Page 42: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Deklarimi i variablave

Disa deklarime te variablave:

int a;

double x;

float z;

short int a;

char c;

int x,y;

long int e, f3; /Deklarimi i përbashket

double x,h; int y; float a,b; /Deklarimet në një rresht

int V[8]; /Deklarimi i Vektorit me 8 vende.

double E[3][6]; /deklarimi i Matrices me 3 rreshta dhe 6 shtylla

int A[6]; /6 anëtar - A[0], A[1], ..., A[5].

Vërejtje: Tek vektorët dhe matricat, indekset fillojnë me vlerën zero!

@2010 LAJQI

Page 43: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Deklarimi dhe inicializimi i variablave

1. int i=5;

2. double d=5.3;

3. int V[5]={7,2,4,1,3};

4. char Z[6]={'d','4','*','a','G','$'};

/Deklarimi dhe inicializimi i vektor me 6 karaktere

1. const double PI=3.1415926;

2. const int e=4; int A[e]={7,2,4,1};

3. const int m=4,n=3;

4. int K[m][n]={{7,4,1},

{2,5,8},

{3,6,2},

{8,1,3}};

@2010 LAJQI

Page 44: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shtypja e rezultatit me format

Manipulatori setw - setw(k)

ku k është numri i vendeve që shfrytëzohen për shtypjen e rezultatit.

cout.width(k) に luan funksion të njejtë sikurse setw()!

P.sh cout.width(10) //shtypja e rezultatit ne 10 kolona.

cout << a; // p.sh., nese shtypet variabla a, qe ka vleren 15

// rezultati do te duket si në vijim

15 // ku paraqet zbrazëtirën, rreshtimi (plotesimi i

// vendeve te rezervuara) behet nga skaji i djathte

Mbushja e hapësirës me mostër - cout.fill( ) ose setfill('s')

Mbushja e pozitave të zbrazëta, mund të bëhet me ndonjë simbol, i cili duhet të jepet brenda thojzave të njëfishta (apostrofeve),

P.sh cout.fillふけゅろぶき // ne kete rast mbushja behet me simbolin けゅげ Shtypja me precizitet të caktuar cout.precision( ) ose setprecision(k)

shtypja me precizitet te caktuar, në k-kolona

@2010 LAJQI

Page 45: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Escape-sequence characters (karakteret speciale)

\a Alarm

\b Backspace

\f Form Feed (për printer)

\n New line (CR+LF) (rreshti i ri)

\r CR

\t Tab

\v Vertical Tab

\\ \

\? ?

\げ け

\ざ さ

\000 Numër oktal

\xhh Numër heksadecimal

\0 Null zero (zero binare)

\xhh, mund të përdoret për të shtypur në

ekran karakteret të cilat nuk i kemi në tastierë, si p.sh. shkronja “ë” dhe “ç”, të gjuhës shqipe. ASCII kodi përkatës i karakterit, duhet të shkruhet në formën heksadecimale. P.sh. për “ë”, kodi është: “137” (Si e shtypim zakonisht në tastierë, ALT+137). Atëherë, 137 në bazën 16 (numër heksadecimal), është: 89. Prandaj, për ta shtypur në dalje shkronjën “ë”, duhet të shkruhet: “\x89”. P.sh., pwr tw shtypur nw dalje:“Sot është ditë e mirë” – në C++ duhet të

shkruhet –cout << “Sot \x89sht\x89 dit\x89 e mir\x89” ;

@2010 LAJQI

Page 46: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

#include <iostream.h>

int main()

{

cout << "sot \x89sht\x89 dit\x89 e mir\x89";

cout << "\n“;cout << "\a“;cout << "\tfillimi i nj\x89 paragrafi.“;cout <<endl;

return 0;

}

Shembulli 1: Të shkruhet programi në gjuhën

C++, i cili përmban disa nga karakteret

speciale p.sh \n, \xhh, \a, \t.

@2010 LAJQI

Page 47: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

# i n c l u d e < i o s t r e a m >

# i n c l u d e < i o m a n i p >

# i n c l u d e < m a t h . h >

u s i n g n a m e s p a c e s t d ;

i n t m a i n ( )

{

i n t a , s , p ;

f o r ( a = 1 ; a < = 1 0 ; a + + )

{

s = p o w ( a , 2 ) ;

p = 4 * a ;

c o u t < < s e t w ( 5 )

< < a

< < s e t w ( 7 )

< < s

< < s e t w ( 6 )

< < p

< < e n d l ;

}

r e t u r n 0 ;

}

Shembulli 2: Të shkruhet programi në gjuhën C++, i

cili përmban manipulatorin setw() ose cout.width()

.

Vërejtje:

Komandat cout.width() dhe cout.fillふけゲげぶ(s-simboli për mbushje) duhet të vendosen para

shtypjes së çdo vlere, përkatësisht nuk vlejnë për

të gjitha shtypjet që vijojnë pas tyre.

Gjatë mbushjes me mostër, hapësira për shtypje

mund të përcaktohet edhe përmes manipulatorit

setw().

@2010 LAJQI

Page 48: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

#include < iostream >

#include < iomanip>

using namespace

std;

int main()

{

int a=6547,b= -7392;

cout << "vlera a=";

cout.width (8);

cout.fill('^');

cout << a

<< endl ;

cout << "vlera b=";

cout.width (10);

cout.fill('*');

cout << b

<< endl ;

return 0;

}

Shembulli 3: Të shkruhet programi në gjuhën

C++, i cili përmban përmban manipulatorin

setfill ose cout.fillふけゲげぶ.

Vërjetje:

Simboli s, i cili shfrytëzohet për mbushje, mund të

përcaktohet edhe

përmes manipulatorit:

setfill('0')

i cili shkruhet brenda komandës cout. Gjatë

shfrytëzimit të këtij manipulatori nuk ka rëndësi si

përcaktohet madhësia e hapësirës për shtypje

(qoftë përmës komandës cout.width ose përmes

manipulatorit setw).

@2010 LAJQI

Page 49: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 4: Të

shkruhet

programi në

gjuhën C++, i cili

përmban

manipulatorin

cout.precis

ion() ose

setprecisio

n(k), k-

kolona.

#include <iostream>

using namespace std;

int main()

{

double x,y;

cout << "vlera hyrëse: ";

cin >> x;

y=27/x;

cout << "vlera y=";

cout.precision(5);

cout << y

<< endl;

return 0;

}

@2010 LAJQI

Page 50: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 4: Të

shkruhet

programi në

gjuhën C++, i cili

përmban

deklarimin dhe

inicializimin e

variablave.

#include <iostream>

using namespace std;

int main ()

{

int a=5; //vlera fillestare 5

int b(2);//vlera fillestare 2

int result;//ska vlerë fillestare

a = a + 3;

result = a - b;

cout << result;

return 0;

}

@2010 LAJQI

Page 51: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 4: Të

shkruhet

programi në

gjuhën C++, i cili

përmban

direktiven

<string>, të

bëhet shtypja e

disa stringjeve.

// perdorimi I stringjeve

#include <iostream>

#include <string>

using namespace std;

int main ()

{

string mystring;

mystring = “Stringu yne ne fillim!";

cout << mystring << endl;

mystring =“String tjeter nga ai fillestar!";

cout << mystring << endl;

return 0;

}

@2010 LAJQI

Page 52: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 4: Të

shkruhet

programi në

gjuhën C++, i cili

përmban vlera

logjike bool.

// vlerat logjike shembull

#include <iostream>

using namespace std;

int main()

{

bool z;

double x,y;

cout << "Vlera për variablën x: ";

cin >> x;

cout << "Vlera për variablën y: ";

cin >> y;

cout << "\nA është x>y?: ";

z=(x>y);

if (z==true)

cout << "Po";

else

cout << "Jo";

cout << endl;

return 0;

}

@2010 LAJQI

Page 53: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Detyre shtepie -> Shembulli 8: Të shkruhet programi në gjuhën C++ i cili do të

llogaris dhe do të shtyp vëllimin e cilindrit ( V = pr2 h), nëse si vlerë hyrëse merren

radiusi r dhe lartësia h, (p=3.14 konstante). Rezultati dalës (në ekran) duhet të

duket kështu (nëse psh. vlera për r = 7 dhe h = 8):

Pas ekzekutimit!

@2010 LAJQI

Page 54: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Detyre shtepie -> Shembulli 9: Të shkruhet programi në gjuhën C++ që do të llogaris dhe shtyp vlerat e funksioneve x, y dhe z:

nëse m është vlera hyrëse që lexohet.

Rezultati dalës (në ekran) duhet të duket kështu (nëse psh. si vlerë hyrësejapim vlerën 8):

@2010 LAJQI

Page 55: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

#include <iostream.h>

#include <math.h>

#include <iomanip.h>

int main()

{ int m;

double x, y, z;

cout << "Vlera hyr\x89se m = ";

cin >> m;

x = pow(m,2)/3 - m;

y = sqrt(x-3) + 5;

z = pow(y, 3) + x – m;

cout << "P\x89r m = "<<m<< " vlerat e funksionevejan\x89:\n\n“;cout << "\tx = ";

cout <<setfill('\\') <<setw(10) << x << "\n“;cout << "\ty = ";

cout <<setfill(‘+') <<setw(10) << y << "\n“;cout << "\tz = ";

cout <<setfill(‘*') <<setw(10) << z << "\n\n“;return 0;

}

Zgjidhja e

shembullit 9:

@2010 LAJQI

Page 56: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Java 4

Universiteti i Prishtinës

Fakulteti i inxhinierisë elektrike dhe kompjuterike

Degëzimet (if) Degëzime të zakonshme

o Me një degë

o Me dy degë

Degëzime të ndërthurura

Operatorët

Shembuj detyrashぐ

1

05.11.2010, FIEK, Prishtinë @LAJQI

Page 57: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Degëzimet -> Degëzimet e zakonshme - > Një degë

Nëse në degët e komandës if ka vetëm nga një komandë thuhet se komanda if është e zakonshme.

Me një degë

Pjesa e bllok-diagramit me një degë (shih djathtas figurën), në formë të përgjithshme në program shkruhet kështu:

ku janë:

kushti - kushti për degëzim.

urdheri - komandë e cila ekzekutohet, nëse

plotësohet kushti.

if (kushti)

urdheri;

2

05.11.2010, FIEK, Prishtinë @LAJQI

Page 58: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 1:

Programi përmes

së cilit llogaritet

vlera e

funksionit:

nëse vlerat e

variablave x dhe

n kompjuterit i

jepen përmes

tastierës.

#include <iostream>

using namespace std;

int main()

{

double x,s,y;

int i,n;

cout << "Vlera x=";

cin >> x;

cout << "\nVlera n=";

cin >> n;

s=0;

for (i=1;i<=n+1;i++)

if (i!=4)

s=s+(i+2);

y=2*x-3*s;

cout << "\nVlera e funksionit y=";

cout << y << "\n";

return 0;

}

3

05.11.2010, FIEK, Prishtinë @LAJQI

Page 59: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Degëzimet -> Degëzimet e zakonshme - > Dydegë

4

Me dy degë

Pjesa e bllok-diagramit me dy degë (shih djathtas), në formë të përgjithshme në program shkruhet kështu:

kushti - kushti për degëzim.

urdhëri1 - urdhëri që ekzekutohet nëse plotësohet kushti.

urdhëri2 に urdhëri që ekzekutohet nëse nuk plotësohet kushti.

if (kushti)

urdhëri1;

else

urdhëri2;

05.11.2010, FIEK, Prishtinë @LAJQI

Page 60: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Programi në të cilin

përmes komandës if

gjendet raporti mes

vlerave hyrëse x dhe

y. Pastaj, nëse x

është më i madh ose

barazi me y,

llogaritet vlera e

funksionit z=2*x+1,

përndryshe kjo vlerë

llogaritet me

shprehjen z=x+y.

#include <iostream>

using namespace std;

int main()

{

double x,y,z;

cout << "Numri i parë x=";

cin >> x;

cout << "\nNumri i dytë y=";

cin >> y;

if (x>=y)

z=2*x+1;

else

z=x+y;

cout << "\nVlera e llogaritur

është z=";

cout << z << "\n";

return 0;

}

5

05.11.2010, FIEK, Prishtinë @LAJQI

Page 61: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Programi përmes së

cilit numërohen

anëtarët pozitivë (p)

dhe anëtarët

negativë (n) të

vektorit të dhënë

A(m).

Vektori I dhënë:

A[m]={6,-2,-9,4,7,3,-5}

#include <iostream>

using namespace std;

int main()

{

const int m=7;

int A[m]={6,-2,-9,4,7,3,-5};

int i,p,n;

p=0; n=0;

for (i=0;i<m;i++)

if (A[i]<0)

n=n+1;

else

p=p+1;

cout << "\nNumri i anëtarëve

pozitivë p="

<< p <<"\n";

cout << "\nNumri i anëtarëve

negativë n="

<< n <<"\n";

return 0;

}

6

05.11.2010, FIEK, Prishtinë @LAJQI

Page 62: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Programi përmes së

cilit llogaritet shuma

e anëtarëve të

vektorit A(m), të

cilët janë më të

mëdhenj se numri 3

dhe më të vegjël se

numri 9.

#include <iostream>

using namespace std;

int main()

{

const int m=8;

int i,s;

int A[m]={5,-2,7,4,1,8,10,6};

s=0;

for (i=0;i<m;i++)

if (A[i]>3)

if (A[i]<9)

s=s+A[i];

cout << "Shuma s="

<< s << "\n";

return 0;

}

7

05.11.2010, FIEK, Prishtinë @LAJQI

Page 63: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Programi përmes së

cilit numërohen

anëtarët pozitivë (p),

dhe anëtarët

negativë (n) të

matricës së dhënë

F(k,m).

#include <iostream>

#include <iomanip>

using namespace std;

int main()

{

const k=4,m=3;

int F[k][m]={{7,-4,12},{0,17,-6},

{4,-1,-5}, {15,8,19}};

int i,j,n =0,p=0;

for (i=0;i<k;i++)

for (j=0;j<m;j++)

if (F[i][j]<0)

n=n+1;

else

p=p+1;

cout << "\nAnëtarët negativë n=“ <<n << "\n\n";

cout << “Anetarët pozitiv p=" << p << "\n\n";

return 0;

}

8

05.11.2010, FIEK, Prishtinë @LAJQI

Page 64: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Degëzime të ndërthurura

Me një komandë if

realizohet degëzimi në një

ose në dy degë. Por, tek

algoritmet e ndryshme

shpesh paraqiten degëzime

të ndërthurura, kur prej një

dege mund të ketë degëzime

të reja. Për këtë qëllim, në

degët e komandave if

shfrytëzohen edhe komanda

të tjera if.

if (kushti1)

if (kushti2)

urdhëri1;

else

urdhëri2;

else

urdhëri3;

05.11.2010, FIEK, Prishtinë

9

@LAJQI

Page 65: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Programi përmes së

cilit llogaritet vlera e

funksionit:

për vlerën e

variablës x, e cila

kompjuterit i jepet

përmes tastierës si

vlerë hyrëse.

#include <iostream>

using namespace std;

int main()

{

float x,y;

cout << "Vlera hyrëse x=";

cin >> x;

if (x<1.5)

y=5*x+4;

else

if (x<2.7)

y=x-3;

else

if (x<4)

y=5;

else

y=2*x;

cout << "\nRezultati y=“ << y << endl;

return 0;

}

10

05.11.2010, FIEK, Prishtinë @LAJQI

Page 66: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Operatorët

05.11.2010, FIEK, Prishtinë @LAJQI

11

Operatori Operacioni Shembull Rezultati

+ Mbledhja 6+1 7

- Zbritja 4-3 1

* Shumëzimi 3*4 12

/ Pjestimi 3/2 1.5

% Moduli 3%2 1

Page 67: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Operatorët - vazhdim

05.11.2010, FIEK, Prishtinë @LAJQI

12

Operatori Domethënia Shembull Rezultati

< Më i vogël se 2 < 3 true

<= Më i vogël se,

ose barazi me

3 <= 2 false

== Barazi me 3 == 3 true

> Më i madhë se 3 > 2 true

>= Më i madhë se,

ose barazi me

2 >= 3 false

!= Jobarazi me 2 != 3 true

Operatori Operacioni Shembull Rezultati

&& Konjukcioni, AND (2 < 3) && (4 == 4) true

|| Disjunkcioni, OR (2 != 3) || (3 > 4) false

! Negacioni, NOT !(5 > 4) false

Page 68: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Përparësit e operatorëve

05.11.2010, FIEK, Prishtinë @LAJQI

13

Lartë ( ) [ ]

! ~ ++ -- - (type) * & sizeof

* / %

+ -

<< >>

< <= > >=

== !=

&

^

|

&&

||

?

= += -= *= /=

Poshtë ,

Page 69: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembull me operatorë

05.11.2010, FIEK, Prishtinë @LAJQI

14

#include <iostream.h>

int main()

{

double y;

int x=3, z=2;

y=3*x-(2+6/x/z)*9/x +2*(x-1) + 6;

cout <<"Vlera y="

<<y

<<"\n\n";

return 0;

}

Page 70: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Pyetje?

15 05.11.2010, FIEK, Prishtinë @LAJQI

Page 71: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Java 5

Universiteti i Prishtinës

Fakulteti i inxhinierisë elektrike dhe kompjuterike

Kapërcimi pa kusht (goto)

Switch( )

Operatori kushtëzues (?)

Shembuj detyrash nga

shuma, prodhimi, faktorieli

1

@2010 Lajqi 12.11.2010, FIEK, Prishtinë

Page 72: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Kapërcimi pa kusht goto 2

Go to (angl. kalo tek, shko tek) bën kapërcimin e detyrueshëm në

pjesën e caktuar të programit, e cila është e adresuar përmes

Label-ave (labelave, etiketave, adresave) të cilat janë emra të

çfarëdoshëm, që përfundojmë me dy pika (:).

Komanda goto

goto a;

Ku (a:) është labela e zgjedhur lirisht si identifikatorë

Shembuj labelash:

fillimi:

fundi:

perserite:

@2010 Lajqi 12.11.2010, FIEK, Prishtinë

Page 73: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 1:

goto

// Programi i pare me goto

#include <iostream.h>

int main()

{

goto Fundi;

Fillimi: //Labela – etiketa,adresa “Fillimi” cout<< "Fillimi\n";

goto Dalja;

Mesi: //Labela – etiketa,adresa “Mesi” cout << "Mesi\n";

goto Fillimi;

Fundi: //Labela – etiketa,adresa “Fundi” cout << "Fundi\n";

goto Mesi;

Dalja: //Labela – etiketa,adresa “Dalja” return 0;

}

3

@2010 Lajqi 12.11.2010, FIEK, Prishtinë

Page 74: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 2: goto

- Krijimi i unazës

Programi përmes

së cilit llogariten

dhe shtypen

shumat parciale

të numrave

natyrorë prej 1

deri në 9.

#include <iostream>

using namespace std;

int main()

{

int i=1;

double s=0;

g:if (i<10)

{

s=s+i;

cout << "Për i="

<< i;

cout << " Shuma s="

<< s

<< "\n";

i++;

goto g;

}

return 0;

}

4

@2010 Lajqi 12.11.2010, FIEK, Prishtinë

Page 75: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 3 に goto

Programi përmes

së cilit llogaritet

vlera e faktorielit:

F = (2m-3)!

Vlera e variablës m

kompjuterit t'i

jepet përmes

tastierës si vlerë

hyrëse.

5

@2010 Lajqi 12.11.2010, FIEK, Prishtinë

Page 76: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Komanda Switch -> Versioni bazik i komandës switch

@2010 Lajqi

6

Pjesa e bllok-diagramit i cili shihet në vijim - djathtas, në program

mund të paraqitet duke e shfrytëzuar versionin bazik të

komandës switch kështu:

12.11.2010, FIEK, Prishtinë

Page 77: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Degëzimet e shumëfishta - switch( )

@2010 Lajqi

7

Programet tek të cilat na paraqiten me shumë degëzime,

thjeshtohen nëse degëzimi realizohet përmes komandës switch,

forma e përgjithshe e së cilës është:

switch ( test )

{

case 1 : test1;

// ekzekutohet komanda test = 1 ...

break;

case 5 : test5;

// ekzekutohet komanda test = 5 ...

break;

default : // te gjitha cases tjera....

}

12.11.2010, FIEK, Prishtinë

Page 78: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 1 に

switch()

Programi përmes

së cilit llogariten

vlerat e funksionit

y duke shfrytëzuar

4 shprehje të

ndryshme për

llogaritje varësisht

nga 4 vlerat e

ndryshme të

variablës i.

8

@2010 Lajqi

Page 79: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 2 に

switch()

Programi përmes së

cilit tregohet

kapërcimi në një

degë për më shumë

vlera të variablës

për kapërcim.

Në program, p.sh.,

kapërcehet në

degën në të cilën

gjendet shprehja

y=-5, për vlerat e

variablës i=2, 6 dhe

4.

9

@2010 Lajqi

Page 80: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Kapërcimi për vlerat e çfarëdoshme

@2010 Lajqi

10

Pjesa e bllok-diagramit i cili shihet në vijim - djathtas, në program

mund të paraqitet duke e shfrytëzuar versionin e komandën switch të

kësaj forme:

Këtu, nëse variabla për degëzim k nuk e ka asnjërën prej vlerave: 0, 1,

2, ..., n, ekzekutohet komanda ad në degën default të komandës

switch.

12.11.2010, FIEK, Prishtinë

Page 81: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 3 に switch()

@2010 Lajqi

11 //Me switch() #include <iostream.h> int main() { int Nota; cout<<"Jepni noten 1, 2, 3, 4 ose 5 : Nota=" ; cin >> Nota; switch(Nota) { case 1: cout<<"Dobet: "; break; case 2: cout<<"Mjaftueshem: "; break; case 3: cout<<"Mire: "; break; case 4: cout<<"Shume mire: "; break; case 5: cout<<"Shkelqyeshem: "; break; default: cout <<"Gabim nota e dhene!\n"; } cout <<" NotaЭさ аа Nota << "\n"; return 0; }

//Pa switch() #include <iostream.h> int main() { int Nota; cout<<"Jepni noten 1, 2, 3, 4 ose 5 : Nota=" ; cin >> Nota; if (Nota == 1) cout<<"Dobet: " else if (Nota == 2) cout<<"Mjaftueshem: "; else if (Nota == 3) cout<<"Mire: "; else if (Nota == 4) cout<<"Shume mire: "; else if (Nota == 5) cout<<"Shkelqyeshem: "; else cout << "Gabim nota"; cout<<" Nラデ;Эさ << Nota << "\n"; return 0; }

12.11.2010, FIEK, Prishtinë

Page 82: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

(Kushti) ? urdhëri1 : urdhëri2; // Operatori kushtëzues (?)

@2010 Lajqi

Nëse kushti është true (plotësohet), atëhere si rezultat kthehet urdhëri1, përndryshe si rezultat kthehet urdhëri2.

7==5 ? 4 : 3 // kthehet 3, pasi që nr. 7 nuk i barabartë me

nr. 5.

7==5+2 ? 4 : 3 // kthehet 4, pasi që 7 është i barabartë me

5+2.

5>3 ? a : b // kthehet vlera e a, pasi që nr. 5 është me i

madhe se nr. 3.

a>b ? a : b // kthen rezultatin varesisht se a cili është me i

madh, a ose b.

#include <iostream>

using namespace std;

int main ()

{

int a,b,c;

a=2;

b=7;

c = (a>b) ? a : b;

cout << “c=” <<c

<<endl;

return 0;

}

12

Operatori kushtëzues (?)

12.11.2010, FIEK, Prishtinë

Page 83: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Të s h k r u h e t p ro g ra m i n ë g j u h ë n c + + p ë r m e s s ë c i l i t l l o ga r i t e t

v l e ra e f u n k s i o n i t :

d u ke e s h f t y t e z u a r o p e rat o r i n e k u s h t e z i m i t ( ? ) .

@2010 Lajqi

13

Shembulli 2 - Operatori kushtëzues (?)

12.11.2010, FIEK, Prishtinë

Page 84: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembull (?)

Të shkruhet programi

në gjuhën c++ për

llogaritjen e funksionit:

y =(x>2)?(x-1) : (4*x+1)

#include <iostream>

using namespace std;

int main()

{

int x, y;

cout << "Vlera per x: ";

cin >> x;

y =(x>2)?(x-1):(4*x+1);

cout<<"\nRezultati per y = "

<<y

<<endl

<<endl;

return 0;

}

14

@2010 Lajqi 12.11.2010, FIEK, Prishtinë

Page 85: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@2010 Lajqi

Shuma dhe prodhimi

15

12.11.2010, FIEK, Prishtinë

Page 86: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

12.11.2010, FIEK, Prishtinë @2010 Lajqi 16

Page 87: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@2010 Lajqi

Faktorieli brenda shumës

17

12.11.2010, FIEK, Prishtinë

Page 88: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

12.11.2010, FIEK, Prishtinë @2010 Lajqi 18

Page 89: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@2010 Lajqi 12.11.2010, FIEK, Prishtinë

19

Faktorieli brenda prodhimit

Page 90: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

12.11.2010, FIEK, Prishtinë @2010 Lajqi 20

Page 91: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Pyetje?

21 @2010 Lajqi 12.11.2010, FIEK, Prishtinë

Page 92: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Java 6

Universiteti i Prishtinës

Fakulteti i inxhinierisë elektrike dhe kompjuterike

Unazat

- while

- do while

- for

Ndërprerja e unazës - break

Kapërcimi i hapit të unazës

- continue

1

@2011 Lajqi 21.11.2011 FIEK, Prishtinë

Page 93: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Unaza, komanda while

27.11.2010, FIEK, Prishtinë @2011 Lajqi

2

Forma e përgjithshme e unazës

while:

E përserit urdhërin derisa kushti të plotësohet!

i=f;

while(kushti)

{

urdhëri/at;

i=i+h;

}

ku janë:

i - variabla e unazës.

f - vlera fillestare e variablës së unazës.

kushti - kushti i ekzekutimit të urdhërave që përfshihen në trupin e unazës.

h - hapi me të cilin ndryshohen vlerat e variablës i.

urdhëri/at に urdhërat që ekzekutohen brenda unazës.

while (kushti) urdhëri/at

Page 94: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Unaza, komanda while

27.11.2010, FIEK, Prishtinë @2011 Lajqi

3

while (CONDITION) LOOP_BODY;

Page 95: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 1:

Të shkruhet

programi në

gjuhën

programuese c++

që bën validimin e

numrave të dhënë

përmes tastierës.

Të përdoret unaza

while!

#include <iostream.h> int main() { int x = 0, y = 0; bool numriValid = false; while (numriValid == false) { cout << "Ju lutem shkruani nje intexher

ndermjet 1 dhe 10:"; cin >> x; cout << "Keni shtypur: " << x << "\n\n";

if ((x < 1) || (x > 10)) { cout << "Vlera e shtypur nuk eshte

ndermjet 1 dhe 10!" << endl << "Ju lutem shkruani nje numer tjeter!" << endl << endl; } else numriValid = true;

} cout << "Tani keni shtypur numer valid,

URIME!" << endl; return 0; }

4

27.11.2010, FIEK, Prishtinë @2011 Lajqi

Page 96: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 2:

Programi përmes së

cilit gjendet anëtari

më i vogël për nga

vlera absolute në

vektorin e dhënë

A[n].

A[n]={2,9,-

1,4,3,6, 8};

#include <iostream.h> #include <math.h> int main() { const int n=7; int i, x, A[n]={2,9,-1,4,3,6, 8}; x = abs(A[0]); i = 1; while (i<n) { if (abs(A[i]) < x) x = abs(A[i]); i++; } cout << "Anetari me i vogel per nga vlera absolute: x = " << x << "\n“; return 0; }

5

27.11.2010, FIEK, Prishtinë @2011 Lajqi

Page 97: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Unaza, komanda do-while

27.11.2010, FIEK, Prishtinë @2011 Lajqi

6

Forma e përgjithshme:

do urdhëri/at while (kushti); i=f; do { urdhëri/at; i=i+h; } while(kushti);

ku janë: i - variabla e unazës. f - vlera fillestare e variablës së unazës. kushti - kushti i ekzekutimit të

urdhërave që përfshihen në trupin e unazës.

h - hapi me të cilin ndryshohen vlerat e variablës i.

urdhëri/at に urhdëri/at e përfshira brenda unazës.

do

{

urdhëri/at;

}

while(kushti);

Page 98: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Unaza, komanda do-while

27.11.2010, FIEK, Prishtinë @2011 Lajqi

7

Forma e përgjithshme:

do

{

LOOP_BODY;

}

while(CONDITION);

Page 99: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 3:

Programi përmes

së cilit llogaritet

prodhimi i

katrorëve të

anëtareve negativ

të vektorit A[n]. Të

përdoret unaza do

while!

A[n]={-2,9,

-1,4,3,-6,8}

// Programi "do-while"

#include <iostream.h>

#include <math.h>

int main()

{ const int n=7;

int i=0, A[n]={-2,9,-1,4,3,-6,8};

double p=1;

do

{

if (A[i] < 0)

p = p*pow(A[i],2);

i++;

}

while (i<n);

cout << "Prodhimi i llogaritur p = "

<< p

<< "\n“; return 0;

}

8

27.11.2010, FIEK, Prishtinë @2011 Lajqi

Page 100: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Unaza, komanda for 9

Forma e përgjithshme e unazës for:

ku:

i - variabla e unazës.

f に vlera fillestare e variables i

kushti - kushti i mbetjes brenda unazës.

h - hapi me të cilin ndryshohen vlerat e variablës i.

urdhëri/at に urdhëri/at që ekzekutohen brenda unazës.

27.11.2010, FIEK, Prishtinë @2011 Lajqi

for (i=f; kushti; i=i+h)

{

urdhëri/at;

}

Page 101: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Unaza, komanda for 10

Forma e përgjithshme e unazës for:

27.11.2010, FIEK, Prishtinë @2011 Lajqi

for (INITIALIZATION; CONDITION; UPDATE)

{

LOOP_BODY;

}

Page 102: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 5:

Programi përmes

së cilit gjendet

anëtari me i madh

në vektorin e

dhënë A[n]. Të

përdoret unaza for.

A[n] = {2,9, -1, 4,

3,6, 8}

#include <iostream.h> int main() { const int n=7; int i,b,A[n]={2,9,-1,4,3,6,8}; b = A[0]; for (i=1;i<n;i++) { if (A[i] > b) b = A[i]; } cout << "Anëtari me i madh b=" << b << "\n“; return 0; }

11

27.11.2010, FIEK, Prishtinë @2011 Lajqi

Page 103: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Dalja pa kusht nga unaza break

27.11.2010, FIEK, Prishtinë @2011 Lajqi

12

Nëse brenda unazës vendoset

komanda break, kompjuteri do

të vazhdoj ekzekutimin e

progamit me komanden e cila

pason pas kllapës së fundit të

unazës.

// Programi Break

#include <iostream.h>

int main()

{

int i;

for (i=1;i<=10;i++)

{

if (i==5) break;

/*ndërprerja, dalja prej unaze*/

cout << "i=" << i << "\n";

}

return 0;

}

break;

Page 104: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Kapërcimi i hapit të unazës continue

27.11.2010, FIEK, Prishtinë @2011 Lajqi

13

continue mund të përdoret

vetëm brenda llupave (ang.

loop), si p.sh brenda një

shprehje for. E përfundon

(kapërcen) iteracionin (hapin)

aktual të një llupe dhe vazhdon

tek iteracioni i ardhshëm i asaj

llupe.

//Programi continue

#include <iostream.h>

int main()

{

int i;

for (i=1;i<=10;i++)

{

//kalo hapin, për i=5

if (i == 5) continue;

cout << "i="

<< i

<< "\n";

}

return 0;

}

continue;

Page 105: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@2011 Lajqi 27.11.2010, FIEK, Prishtinë

14

Shembulli 7: Të llogaritet funksioni y. Të

përdoret kapërcimi i hapit continue për キЮヴく

Page 106: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

27.11.2010, FIEK, Prishtinë @2011 Lajqi 15

// Zgjidhja #include <iostream.h> int main() { int i,n; double s=0; cout << "Vlera e variables n="; cin >> n; cout << "Vlera e variables m="; cin >> m; for (i=1;i<=m+n;i++) { if (i==4) continue; s=s+(2*m-3*n); } y = 2*m – 4*s; cout << “Funksioni y =" << y << "\n"; return 0; }

Page 107: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Pyetje?

16 @2011 Lajqi 27.11.2010, FIEK, Prishtinë

Page 108: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Universiteti i Prishtinës

Fakulteti i inxhinierisë elektrike dhe kompjuterike

Fushat numerike në program

(vektorët, matricat)

Deklarimi i fushës numrike

Rezervimi i vendeve për anëtarët e

fushës numrike

Leximi dhe shtypja e anëtarëve të

fushës

Deklarimi dhe leximi i teksteve

(char[ ]), leximi i rreshtit (cin.get,

cin.getline).

1

@LAJQI 2011 FIEK, Prishtinë

Page 109: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Vektorët dhe matricat

FIEK, Prishtinë @LAJQI 2011

2

Çka quajmë vektor?

Kur pozicionet e numrave në hapesirën e fushës numerike

përcaktohen nga një madhësi, për fushën thuhet së është

njëdimenzionale dhe quhet vektorë.

Çka quajmë matricë?

Nësë për përcaktimin e pozicioneve të numrave përdoren dy

madhësi, fusha numerike është dydimenzionale dhe quhet

matricë.

Page 110: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Deklarimi i fushave numrike

FIEK, Prishtinë @LAJQI 2011

3

Deklaime të vektorëve dhe matricave

int A[8]; /Vektori

double Z[3][5]; /Matrica

Indekset fillojnë me vlerën 0 (zero)

int A[6]; 6 anëtar - A[0], A[1], ..., A[5].

Dekalirimi dhe inicializimi i vektorëve

Iエ;ヴ ZぷΑへЭべろSろがろヴろがろゅろがろ;ろがろGろがろガげがげWげぺき っVWニデラヴキ マW ニ;ヴ;ニデWヴW

const int m=5; int A[m]={7,2,4,1,3};

const int m=4,n=3; m-rreshtat, n に shtyllat

int K[m][n]={ {7,4,1},

{2,5,8},

{3,6,2},

{8,1,3} };

Page 111: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

A[m]={9,-2,5,4,-1,6,3,7};

m=8;

@LAJQI 2011 FIEK, Prishtinë

4

Shembulli 1: Të shkruhet programi në gjuhën

C++ që bën shtypjen dhe tregon pozitën e

anëtarëve të dhënë në vektorin A[m]!

Page 112: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Zgjidhja e shembullit 1:

FIEK, Prishtinë @LAJQI 2011

5

#include <iostream.h> int main() { const int m=8; int i; int A[m]={9,-2,5,4,-1,6,3,7}; //Deklarimi dhe inicializimi i vektrorit cout << "An\x89tar\x89t e vektori A jan\x89:\n" << "\n"; for (i=0;i<m;i++) //unaza "for" { cout<<"An\x89tari qe ka me poziten" <<i << " \x89sht\x89: " << A[i]; cout << "\n"; } cout << "\n"; return 0; }

Page 113: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Leximi dhe shtypja e anëtarëve të fushës

Shembulli 2: Të krijohet dinamikisht vektori A[m], nëse m = 5 (konstante), dhe të bëhet shtypja e anëtareve të këtij vektori.

Për zgjidhjen e kësaj detyre të përdoret unaza for!

#include <iostream.h>

int main()

{ const int m=5;

int i, A[m];

//Krijimi i vektorit A

for (i=0; i<m; i++)

{

cout << "A["

<< i

<< "]= ";

cin >> A[i];

}

// Shtypja e vektorit A

cout << " Vektori i krijuar: \n";

cout << "A={";

for (i=0;i<m;i++)

{

cout << A[i];

if (i<m-1)

cout<<",";

}

cout << "}\n";

return 0;

}

6

FIEK, Prishtinë @LAJQI 2011

Page 114: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2011 FIEK, Prishtinë

7

Shembulli 3: Të shkruhet programi përmes së cilit

llogaritet vlera e funksionit g, ku z është anëtari më i

madh në vektorin e dhënë R(n). Vlera e variablës x

kompjuterit デげI ipet përmes tastieres.

Page 115: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2011

Zgjidhja e shembullit 3:

FIEK, Prishtinë 8

Page 116: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

PA S S H T Y PJ E S :

H[9] = { 0, 1, 4, 9, 16, 25, 36, 49, 64 }

@LAJQI 2011 FIEK, Prishtinë

9

Shembulli 4: Të shkruhet programi në gjuhen c++ që bën

krijimin dhe shtypjen e katrorëve të indekseve të vektorit

H[m], nëse m=9 (konstante).

Për krijimin e anëtarëve të vektorit të përdoret unaza while,

ndërsa për shtypjen e anëtareve të përdoret unaza for!

Page 117: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

FIEK, Prishtinë @LAJQI 2011 10

Zgjidhja e

shembullit 4:

#include <iostream>

#include <math.h>

using namespace std;

int main()

{ const int m=9;

int H[m],i;

i=0;

while(i<m)

{

H[i] = pow(i,2);

i=i+1;

}

cout<<"Vektori i formuar:\n";

cout<<"H["

<<m

<<"]= {";

for(i=0;i<m;i++)

{

cout<<H[i];

if(i!= m-1)

cout<<", ";

}

cout<<"}"

<<endl;

return 0;

}

Page 118: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

M[n]={ -1.3 ,3 .14, -6 .5 , -0 .5 , 3 , 7 .1} ;

@LAJQI 2011 FIEK, Prishtinë

11

Shembulli 5:Të shtypet numri i anëtarëve

pozitiv dhe negativ të vektorit të dhënë

M[n].

Page 119: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Zgjidhja e shembullit 5:

FIEK, Prishtinë

#include <iostream>

#include <math.h>

using namespace std;

int main()

{

const int n=6;

const double M[n]={-1.3 ,3.14, -

6.5, -0.5, 3, 7.1};

int negativ = 0,pozitiv = 0;

int i;

for(i=0;i<n;i++)

{

if(M[i] >= 0)

{

pozitiv = pozitiv +1;

}

else

{

negativ = negativ +1;

}

}

cout<<"Vektori:\n\nM["

<<n

<<"]={";

for(i=0;i<n;i++)

{

cout<<M[i];

if(i!=n-1)

cout<<", ";

}

cout<<"} \nP\x89rmban "

<<negativ

<<" an\x89tar\x89 negativ"

<<" dhe "

<<pozitiv

<<" an\x89tar\x89 pozitiv.” <<“\n\n";

return 0;

}

@LAJQI 2011

12

Page 120: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Deklarimi dhe leximi i teksteve

FIEK, Prishtinë @LAJQI 2011

13

Komadat cin.get

cin.getline

Shembulli 1: Leximi i fjalisë përmes komandës cin.get(a,k)

//Zgjidhja e shembullit

#include <iostream.h>

int main()

{

const int m=20;

char A[m];

cout << "Fjalia qe lexohet: ";

cin.get(A,m);

cout << "Fjalia qeu lexua: "

<< A

<< "\n\n";

return 0;

}

Page 121: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shtypja e fjalës に Shembulli 2

FIEK, Prishtinë @LAJQI 2011

14

#include <iostream.h>

int main()

{

char A[20];

cout << "Fjalia q\x89

lexohet: ";

cin >> A;

cout << "Fjalia q\x89 u

lexua: "

<< A

<< "\n";

return 0;

}

Si rezultat do të kemi vetëm

pjesën e parë të fjalisë që ne

e shkrujamë përmes tastierës

(dmth na lexohet vetëm fjala

e parë e fjalisë)!

Page 122: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Komanda:

cin.getline(A,m)

// istream getline #include <iostream> #include <iomanip> using namespace std; int main () { char emri[25], titulli[256]; cout << "Emri juaj:“; cin.getline(emri, 25); cout << "Filmi juaj i preferuar:"; cin.getline (titulli,256, '!'); //parametri i trete tegon se deri te shenja //! te lexoj tekstin. cout << emri << ", si film te preferuar e ka filmin me titull: " << "\n" << "\"" << titulli <<"\"\n“; return 0; }

15

FIEK, Prishtinë @LAJQI 2011

Page 123: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

16 @LAJQI 2011 FIEK, Prishtinë

Page 124: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Universiteti i Prishtinës

Fakulteti i inxhinierisë elektrike dhe kompjuterike

@LAJQI 2010

Deklarimi dhe inicializimi i matricave

Krijimi i matricës

Sortimi i anëtarëve të vektorit

Formimi i fushave numerike:

o Formimi i matricës prej vektorit

o Formimi i matricës prej shumë

vektorëve

o Krijimi i vektorit prej anëtarëve

negativ të matricës

o Krijimi i vektorëve me anëtarët

pozitiv/negativ të matricave

17.12.2010, FIEK, Prishtinë

1

Page 125: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Deklarimi dhe inicializimi i matricave

@LAJQI 2010

P.sh., deklarimi dhe inicializimi i matricës K, e cila

përmban 4 rreshta dhe 3 shtylla, mund të bëhet:

Deklarimi: int K[4][3];

Deklarimi dhe incializimi:

17.12.2010, FIEK, Prishtinë

2

Page 126: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

Shembulli 1: Të krijohet matrica A(m,n)

dinamikisht dhe të shtypet matrica e krijuar.

3

Page 127: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

17.12.2010, FIEK, Prishtinë @LAJQI 2010

Krijimi i matricës #include <iostream>

using namespace std;

int main()

{

const int m=2, n=3;

int i,j;

int A[m][n];

cout << "Krijimi i matrices

A[m][n]:\n";

char g[]="------------------------

--------";

for (i=0;i<m;i++)

{

cout << "\nKrijimi i rreshtit "

<<i+1

<<" te matrices A: \n";

cout<<g<<endl;

for (j=0;j<n;j++)

{

cout << "\tA["<<i<<"]["<<j<<"] =

";

cin >> A[i][j];

}

cout << "\n";

}

cout << "Shtypja e matrices

A[m][n]:\n” <<g

<<"\n";

for (i=0;i<m;i++)

{

for (j=0;j<n;j++)

{

cout.width(6);

cout<< A[i][j] ;

}

cout << "\n";

}

cout <<g<<"\n";

return 0;

}

4

Page 128: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

Shembulli 2: Të shkruhet programi që bën

shtypjen e matricës A(m,n) dhe gjen numrin e

anëtarëve negativë k të matricës A(m,n).

5

Page 129: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Zgjidhja e shemullit 1:

@LAJQI 2010 17.12.2010, FIEK, Prishtinë 6

Page 130: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

7

Shembulli 3: Të krijohet matrica Z(m, n), ku

anëtarët e saj të përcaktohen përmes shprehjes.

Page 131: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010

Zgjidhja e shemullit 2:

17.12.2010, FIEK, Prishtinë 8

Page 132: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

9

Shembulli 4: Të shkruhet programi në gjuhën c++,

përmes së cilit gjendet anëtari më i madh në

matricën e dhënë A(m,n).

Page 133: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Zgjidhja e shemullit 3:

17.12.2010, FIEK, Prishtinë 10 @LAJQI 2010

Page 134: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

11

Shembulli 5: Programi përmes së cilit gjendet

shuma e anëtarëve të matricës së dhënë R(m,n).

Page 135: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

17.12.2010, FIEK, Prishtinë 12 @LAJQI 2010

Page 136: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Sortimi i anëtarëve të vektorit

17.12.2010, FIEK, Prishtinë @LAJQI 2010

13

A[i]

b

A[j]

1

2

3

Page 137: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

14

Shembulli 6: Të shkruhet programi në gjuhën C++

përmes së cilit radhiten anëtarët e vektorit A(m)

sipas madhësisë , duke filluar prej anëtarit më të

madh kah i vogëli.

Page 138: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Zgjidhja e shemullit 5:

17.12.2010, FIEK, Prishtinë 15 @LAJQI 2010

Page 139: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

A [ i ] [ j ] = B [ i ] + p o w ( j , 2 ) ; - m b i d i a g o n a l e

A [ i ] [ j ] = B [ i ] ; - n ë d i a g o n a l e

A [ i ] [ j ] = B [ i ] + 1 0 ; - n ë n d i a g o n a l e

k u B [ m ] = { 6 , - 8 , 7 , 4 , - 2 } ;

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

16

Formimi i matricës prej vektorit

Shembulli 7: Të krijohet matrica A(m,m) duke

shfrytëzuar shprehjen :

Page 140: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010

//Formimi i matrices prej vektorit

#include <iostream.h>

#include <math.h>

int main()

{

const m=5;

int B[m]={6,-8,7,4,-2};

int i,j,A[m][m];

for (i=0;i<m;i++)

for (j=0;j<m;j++)

if (i<j)

A[i][j]=B[i]+pow(j,2);

else

if (i==j)

A[i][j]=B[i];

else

A[i][j]=B[i] + 10;

cout << "Matrica e formuar” << "\n"; for (i=0;i<m;i++)

{

for (j=0;j<m;j++)

{

cout.width(5);

cout << A[i][j];

}

cout << "\n";

}

return 0;

}

17.12.2010, FIEK, Prishtinë 17

Page 141: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

A[m]={1,-2,-3,4,9,6,-15};

//rreshti i pare, vektori A[m]

B[m]={4,-8,-9,2,14,6,-3};

//rreshti i dyte, vektori B[m]

C[m]={8,-8,-9,32,14,6,-5};

//rreshti i trete, vektori C[m]

E[m]={11,-8,-9,12,1,6,-7};

//rreshti i katert, vektori E[m]

F[m]={5,-4,-6,2,12,16,-17};

//rreshti i peste, vektori F[m]

H[m]={11,-8,-9,12,1,6,-1};

//rreshti i gjashte, vektori H[m]

J[m]={3,-5,-23,12, 31,6,-21};

//rreshti i shtate vektori J[m]

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

18

Formimi i matrices prej shume vektoreve

Shembulli 8: Të krijohet matrica G(m,m) duke i

shfrytëzuar vektorët e mëposhtëm për rreshtat

përkatës të matricës:

Page 142: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

//Formimi i matrices prej shume vektoreve

#include <iostream.h>

int main()

{

const m=7;

int A[m]={1,-2,-3,4,9,6,-15}; //Rreshti i pare, vektori A[m]

int B[m]={4,-8,-9,2,14,6,-3}; //Rreshti i dyte, vektori B[m]

int C[m]={8,-8,-9,32,14,6,-5}; //Rreshti i trete, vektori C[m]

int E[m]={11,-8,-9,12,1,6,-7}; //Rreshti i katert, vektori E[m]

int F[m]={5,-4,-6,2,12,16,-17}; //Rreshti i peste, vektori F[m]

int H[m]={11,-8,-9,12,1,6,-1}; //Rreshti i gjashte, vektori H[m]

int J[m]={3,-5,-23,12, 31,6,-21}; //Rreshti i shtate vektori J[m]

int i,j,G[m][m];

for (i=0;i<m;i++)

for (j=0;j<m;j++)

switch(i)

{

case 0:

G[i][j]=A[j];

break;

case 1:

G[i][j]=B[j];

break;

case 2:

G[i][j]=C[j];

break;

case 3:

G[i][j]=E[j];

break;

case 4:

G[i][j]=F[j];

break;

case 5:

G[i][j]=H[j];

break;

case 6:

G[i][j]=J[j];

break;

default:

G[i][j]=0;

break;

}

cout << "Matrica e formuar"

<< "\n";

for (i=0;i<m;i++)

{

for (j=0;j<m;j++)

{

cout.width(5);

cout << G[i][j];

}

cout << "\n";

}

return 0;

}

@LAJQI 2010 17.12.2010, FIEK, Prishtinë 19

Page 143: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

int A[m][n]={{3,-4,6},

{-9,1,2},

{7,-8,1}};

@LAJQI 2010 17.12.2010, FIEK, Prishtinë

20

Krijimi i vektorit prej anëtarëve negativ të matricës

Shembulli 9: Të krijohet vektori B(m*n) nga anëtarët

negativ të matricës A(m,n):

Page 144: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010

//Krijimi i vektorit prej anetareve

negativ te matrices

#include <iostream.h>

int main()

{

const m=3,n=3;

int A[m][n]={{3,-4,6},

{-9,1,2},

{7,-8,1}};

int i,j,k,B[m*n];

//Krijimi i vektorit

k=-1;

for (i=0;i<m;i++)

for (j=0;j<n;j++)

if (A[i][j]<0)

{

k=k+1;

B[k]=A[i][j];

}

cout << "B=[";

17.12.2010, FIEK, Prishtinë 21

//Shtypja e vektorit B

for (i=0;i<=k;i++)

{

cout.width(3);

cout << B[i];

}

cout << " ]\n";

return 0;

}

Page 145: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2010 17.12.2010, FIEK, Prishtinë 22

Page 146: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Universiteti i Prishtinës

Fakulteti i inxhinierisë elektrike dhe kompjuterike

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

Nënprogramet (Funksionet)

• Definimi i funksionit

• Parametrat e funksionit

• Thirrja e funksionit

• Përdorimi i disa funksioneve në një

program

Funksioni void dhe inline

Variablat lokale dhe globale

1

Page 147: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Nënprogramet - Definimi i tyre

16.01.2012, FIEK, Prishtinë @LAJQI 2012

Funksioni ngërthen ne vete nje grup te urdhërave të cilat i ekzekuton me rastin e thirrjes se tij nga nje pjesë e caktuar e programit. Forma e përgjithshme e funksionit është:

tipi emri(tipi1 prm1,tipi2 prm2,...,tipin prmn) { urdhëri/at; return rezultati; }

ku janë:

tipi - tipi i rezultatit të funksionit. emri - emri i funksionit. tipi1,... tipin - tipet e parametrave formal. prm1, prm2, ..., prmn - parametrat formal. urhdëri/at - urhdëri/at që ekezekutohen brenda funksionit r - rezultati të cilin e kthen funksioni.

2

Page 148: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Parametrat e funksionit

16.01.2012, FIEK, Prishtinë @LAJQI 2012

Parametra formal (param1, param2)

Parametra aktual (kur ju japim vlera parametrave formal)

int shuma(int param1, int param2)

r = shuma ( 3 , 10 )

int shuma(int param1, int param2)

13

r = shuma ( 3 , 10 )

3

Page 149: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 1: Thirrja e funksionit

16.01.2012, FIEK, Prishtinë @LAJQI 2012

// Thirrja e funksioneve

#include <iostream.h>

int shuma(int a,int b)

{

int y;

y=a + b;

return y;

}

int zbritja(int a,int b)

{

int y;

y=a - b;

return y;

}

int main()

{

int x, y, z, s;

cout << "Vlera x = ";

cin >> x;

cout << "\nVlera y = ";

cin >> y;

s = shuma(x, y);

z = zbritja(x, y);

cout << "\nShuma e llogaritur: s = "

<< s

<< "\n\n";

cout << "Zbritja e llogaritur: s = "

<< z

<< "\n\n";

return 0;

}

4

Page 150: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

16.01.2012, FIEK, Prishtinë @LAJQI 2012

Përdorimi i disa funksioneve në një program

Shembulli 2: Të shkruhet programi në gjuhën programuese c++ që

bën llogaritjen e funksioneve s dhe p. Për llogaritjen e funksioneve

të shfrytëzohen funksionet me emertimin ShumaVargut dhe

ProdhimiVargut.

n

i

i2

)2*3(

n

mi

i )1(

s = p =

5

Page 151: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

16.01.2012, FIEK, Prishtinë @LAJQI 2012

double ShumaVargut(int a,

int b,int c,int d)

{

int i;

double S=0;

for (i=a;i<=b;i++)

S=S+(c*i+d);

return S;

}

double ProdhimiVargut(int a,

int b,int d)

{

int i;

double P=1;

for (i=a;i<= b;i++)

P=P*(i+d);

return P;

}

#include <iostream.h>

double ShumaVargut(int a, int

b, int c, int d);

double ProdhimiVarg(int a, int

b, int d);

int main()

{

int n, m = 0;

double Prodhimi;

double Shuma;

cout<<"Vlera n = ";

cin>>n;

Shuma = ShumaVargut(2,n,3,2);

cout << "Shuma S= "

<< Shuma

<<"\n";

Prodhimi=ProdhimiVargut(m,n,1);

cout << "Prodhimi p = "

<< Prodhimi

<< "\n“; return 0;

}

6

Page 152: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Funksionet void, inline

VOID Funksionet të cilat nuk kthejnë rezultat fare, quhen funksione void (ang.

boshe, të zbrazëta, shterpe) dhe definohen si funksione të tipit void. Urdhëri i tyre për kthim të rezultateve shkruhet vetem return;.

Shembull funksioni void: void shtypMesazhin()

{

cout аа さKy eshte nje funksion void!";

return;

}

INLINE さTヴ┌ヮキざ キ a┌ミニゲキラミキデ ┣;ニラミキゲエデ ヮ;ヴ;ケキデWデ ミ¥ a┌ミS デ¥ ヮヴラェヴ;マキデく N¥ゲW

komplet funskioni zhvillohet në fillim të programit, në vijë (ang. In line) të rrjedhës së programit, atëherë quhet さIミノキミW a┌ミIデキラミざく

16.01.2012, FIEK, Prishtinë

7

@LAJQI 2012

Page 153: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 3: Funksion inline

16.01.2012, FIEK, Prishtinë @LAJQI 2012

#include <iostream.h>

inline int subtraction (int a, int b)

{

int r;

r=a-b;

return (r);

}

int main ()

{

int x=5, y=3, z;

z = subtraction (7,2);

cout << “Rezultati i pare eshte "<< z; cout << “\nRezultati i dyte eshte" << subtraction (7,2);

cout << “\nRezultati i trete eshte" << subtraction (x,y);

z= 4 + subtraction (x,y);

cout << “\nRezultati i katert eshte“ << z << '\n';

return 0;

}

Pas ekzekutimit… Rezultati i pare eshte 5

Rezultati i dyte eshte 5

nRezultati i trete eshte 2

Rezultati i katert eshte 6

8

Page 154: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 4: Funksioni void

16.01.2012, FIEK, Prishtinë @LAJQI 2012

#include <iostream>

using namespace std;

void printoMesazhin()

{

cout<<“Une jam një funksion!"; }

int main ()

{

printoMesazhin();

return 0;

}

Pas ekzekutimit… Une jam një funksion!

9

Page 155: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Variablat lokale dhe globale - definicion

@LAJQI 2012

Variablat lokale

Variablat të cilat përcaktohen brenda një funksioni, përfshirë edhe programin kryesor si funksion, paraqesin variabla lokale. Këto variabla mund të shfrytëzohen vetëm brenda funksionit ku janë definuar, përkatësisht vetëm brenda hapësirës e cila përcaktohet me kllapat e mëdha të funksionit {}.

Variablat globale Variabla të cilat deklarohen para deklarimit të funksionit main(), ose

jashtë kllapave të funksioneve, paraqesin variabla globale. Variablat globale shifen nga të gjithë nënprogramet, pavarsisht nga ajo se a shfrytëzohen ose jo prej tyre.

16.01.2012, FIEK, Prishtinë

10

Page 156: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

#include <iostream>

using namespace std;

int main()

{

cout <<“Mosha:” cin >> mosha;

… return 0;

}

Dukshmëria e variablave

Varësisht se në cilën pjesë të programit deklarohen

variablat, ato mund të jenë:

Variabla LOKALE

Variabla GLOBALE

int n, m;

double rezultati;

char emri;

int mosha, pesha;

float gjatesia;

variabla globale

variabla lokale

16.01.2012, FIEK, Prishtinë

11

@LAJQI 2012

Page 157: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Universiteti i Prishtinës

Fakulteti i inxhinierisë elektrike dhe kompjuterike

12

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

- Fushat numerike në nënprograme

- Makrofunksionet

- Funksionet e librarisë së C++

- Funksionet matematikore në c++

- Funksionet për punë me stringje

Page 158: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

përcaktimi i anëtarëve të vektorit:

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

13

Fushat numerike në nënprograme

Shembulli 1: Të krijohet vektori A(m) duke e

shfrytezuar funksionin KrijoVektorin, pas krijimit të

vektorit, të shtypen anëtarët e atij vektori.

Page 159: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

16.01.2012, FIEK, Prishtinë @LAJQI 2012 14

Page 160: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

përcaktimi i anëtarëve të matricës:

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

15

Fushat numerike në nënprograme

Shembulli 1: Të krijohet matrica A(m, n) duke e

shfrytezuar funksionin KrijoMatrcicen, pas krijimit

të matricës, të shtypen anëtarët e asaj matrice.

Page 161: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

16.01.2012, FIEK, Prishtinë @LAJQI 2012 16

Page 162: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Makrofunksionet

Direktiva #define mund te perdoret

per krijimin e makro funksioneve.

Makrot marrin argumente ngajshem

sikurse funksionet.

Krijimi i nje makro funksioni:

#define llogarit(x) ( (x) * 2 )

llogarit (4) atehere do te kemi rez.8!

Makrot mund te kene nje e me shume

parametra.

#include <iostream.h>

#include <math.h>

#define katrori(x) (pow(x,2))

#define kubi(y) (pow(y,3))

#define shuma(x, y) (x + y) //prototipi

int main()

{

double f,g, sh;

f=katrori(2);

cout << "Katrori ......: “ << f << "\n";

g=kubi(3);

cout << "Kubi .........: “ << g << "\n";

sh = shuma(f, g);

cout << "Shuma ........: “ << sh << "\n";

return 0;

}

16.01.2012, FIEK, Prishtinë

17

@LAJQI 2012

Page 163: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Funksionet e librarisë së C++

Shembull: perdorimi i funksionit toupper()

#include <cctype>

#include <iostream>

using namespace std;

void main()

{

char d='v';

d=toupper(d);

cout<<d<<"\n";

return;

}

rand ()

#include <cstdlib>

tolower()

#include <cctype>

toupper()

#include <cctype>

time()

#include <ctime>

rename()

#include <cstdio>

remove()

#include <cstdio>

16.01.2012, FIEK, Prishtinë

18

@LAJQI 2012

Page 164: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Funksionet matematikore ne c++

Në matematikë Në gjuhën C++

sin(x) sin(x)

cos(x) cos(x)

tg(x) tan(x)

arcsin(x) asin(x)

arccos(x) acos(x)

arctang(x) atan(x)

ln(x) log(x)

log(x) log10(x)

xy pow(x,y)

ex exp(x)

sqrt(x)

x abs(x), fabs(x)

sh(x) sinh(x)

ch(x) cosh(x)

th(x) tanh(x)

#include <iostream.h>

#include <math.h> int main() { const int m=7; double y; int i,x; int A[m]={4,-7,3,-9,5,-3,6}; x=abs(A[1]); for (i=0;i<m;i++) if (abs(A[i])>x) x=abs(A[i]); cout << "Anetari me i madh per

nga vlera absolute: x =“ << x << "\n"; y=3*sin(x+1)+4*exp(x)-2*log(x+2); cout << "Vlera e funksionit: y=" << y << "\n"; return 0; }

16.01.2012, FIEK, Prishtinë

19

@LAJQI 2012

Page 165: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Funksionet për punë me stringje

Gjatesia e stringut

strlen (x)

Kopjimi i stringut

strcpy(y,x)

Kop. stringut n karaktere

strncpy(y,x,n).

Bashkimi i dy stringjeve

strncat(x,y)

Shtimi i pjeses se stringut

strncat(x,y,k)

//Kopjimi I tekstit nga A ne B

#include <iostream.h>

#include <string.h>

int main()

{

const m=20; char A[m],B[m];

cout << "Teksti që lexohet ...: ";

cin.getline(A,m);

cout << "Teksti i lexuar .....: "

<< A

<< "\n";

strcpy(B,A);

cout << "Teksti i kopjuar ....: "

<< B << "\n";

return 0;

} 16.01.2012, FIEK, Prishtinë

20

@LAJQI 2012

Page 166: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembull 1

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

21

Page 167: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 2

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

22

Page 168: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 3

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

23

Page 169: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

24

Page 170: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 4

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

25

Page 171: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

26

Page 172: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 5

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

27

Page 173: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

28

Page 174: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 6

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

29

Page 175: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

Shembulli 7

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

30

Page 176: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

@LAJQI 2012 16.01.2012, FIEK, Prishtinë

31

Page 177: HaxhiLajqi · PDF fileAlgoritme numerike ... Vargjet e simblove të ndryshme (shkronjave, numrave), përkatësisht tekstet e çfarëdoshme të vendosura brenda thonjëzave i quajmë

32 @LAJQI 2012 16.01.2012, FIEK, Prishtinë