You are on page 1of 8

Gjuha C – Seminar 7

Tabelat dypërmasore (Matricat)

10/01/2022 Xhoi ALIÇKOLLI


Temat që do të trajtohen:
1. Veçoritë e tabelave dypërmasore
2. Deklarimi dhe veprime me matricat

1.2 Xhoi ALIÇKOLLI


1. Veçoritë e tabelave dypërmasore

■ Matricat (2D arrays):


● Janë variabla
● Janë vektorë që përmbajnë vektorë
● Janë struktura të dhënash në C
● Ruajnë një koleksion elementesh (një e më tepër)
 Kanë të njëjtin tip të dhënash
 Aksesohen përmes indeksimit (rresht,kolonë) të emrit të matricës
● Kanë një gjatësi (rreshta) dhe gjerësi (kolona) të caktuar
■ Deklarimi i tabelave dypërmasore
● tip_kthimi Emër_Matrice [përmasa1] [përmasa2];
● Shembuj:
 double balanca[10][2]; //20 elemente (balanca[0][0] deri në balanca[9][1])
 int sasia[2][4] = {{10, 11, 12, 13},{14, 15, 16, 17}}; //elementet e
parapërcaktuar në inicializim
 char germa[32][6];
 double paga = balanca[8][1];
1.3 Xhoi ALIÇKOLLI
1. Veçoritë e tabelave dypërmasore (Vazh..)

■ Bredhja e matricave:
● Me anë të ciklit for
 Variabli i parë iterues bredh rreshtat e matricës nga pozicioni 0 (i=0) deri në
m-1 (i<m)
 Variabli i dytë iterues bredh kolonat e matricës nga pozicioni 0 (j=0) deri në
n-1 (j<n) për çdo rresht të matricës
 Numërimi mund të fillojë dhe nga numri 1, në këtë rast variablat iterues
bredhin rreshtat dhe kolonat nga pozicioni 1 (i=1) deri në m (i<=m) dhe 1
(j=1) deri në n (j<=n)

1.4 Xhoi ALIÇKOLLI


2. Deklarimi dhe veprime me matricat
■ Kërkesa 1:
● Shkruani një program që gjen shumën e çdo rreshti dhe kolone të një matrice katrore:
■ Zgjidhje:
for(row=0; row<rresht; row++)
#include <stdio.h> {
#include <conio.h> shuma = 0;
int main() for(col=0; col<kolone; col++)
{ {
int rresht, kolone; shuma += A[row][col];
scanf("%d", &rresht); }
scanf("%d", &kolone); printf(“Shuma e el ne rreshtin %d = %d\n", row+1, shuma);
}
int A[rresht][kolone];
for(row=0; row<rresht; row++)
int row, col, shuma = 0; {
printf(“Jepni elementet e matrices me shuma = 0;
permase %dx%d: \n", rresht, kolone); for(col=0; col<kolone; col++)
for(row=0; row<rresht; row++) {
{ shuma += A[col][row];
for(col=0; col<kolone; col++) }
{ printf(" Shuma e el ne kolonen %d = %d\n", row+1, shuma);
scanf("%d", &A[row][col]); }
} getch();
} return 0;
1.5 } Xhoi ALIÇKOLLI
2. Deklarimi dhe veprime me matricat (Vazh..)

■ Kërkesa 2:
● Shkruani një program në C, që gjen nëse një element ndodhet në diagonalen kryesore të
një matrice katrore apo jo:
■ Zgjidhje: scanf("%d", &A[row][col]);
}
#include <stdio.h> }
#include <conio.h> scanf("%d", &numri); bool u_gjet=false;
#include <stdbool.h> if(rresht==kolone)
int main() {
{ for(int i=0;i<rresht;i++)
int rresht, kolone, numri; {
scanf("%d", &rresht); for(int j=0;j<kolone;j++)
scanf("%d", &kolone); {
int A[rresht][kolone]; if (i==j && A[i][j]==numri)
int row, col, shuma = 0; { u_gjet=true; break; }
printf(“Jepni elementet e matrices me }}
permase %dx%d: \n", rresht, kolone); if (u_gjet) printf(“Gjendet”);
else printf(“Nuk Gjendet”);
for(row=0; row<rresht; row++)
}
{
else printf("\nMatrica nuk është katrore.");
for(col=0; col<kolone; col++) getch();
{ return 0;
1.6 } Xhoi ALIÇKOLLI
Referenca dhe Literaturë

■ Gjuha C, Ilia Ninka


■ https://www.udemy.com/course/c-programming-for-beginners-programming-in-c/
■ https://www.programiz.com/c-programming
■ https://www.tutorialspoint.com/cprogramming/index.htm
■ https://www.w3schools.in/c-tutorial/

1.7 Xhoi ALIÇKOLLI


Fund

10/01/2022 Xhoi ALIÇKOLLI

You might also like