50
Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011 1 Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire te gjithë numrat e thjeshte që janë nga 1 deri tek mesatarja e numrave ne file-in e inputit. Shënim : Pasi do te llogaritet mesatarja e elementeve te vektorit duhet te shkruhen ne file-in e outputit numrat e thjeshte nga 1 deri tek mesatarja (edhe mesatarja përfshihet). Numrat duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne cikël fprintf(f2,"%d ", 1); , për te mos vështirësuar programin te mos hiqet hapësira pas numrit te fundit. Zgjidhje : #include <stdio.h> int f_nr_thjeshte(int nr) { int i; if (nr==1 || nr==2) { return 1; } else if (nr<1) { return 0; } if (nr%2 ==0 ) { return 0; } for(i=3; i<nr; i=i+2) { if (nr%i==0) { return 0; } } return 1; } int main(int argc, char *argv[]) { int i, s=0,n,v[100]; FILE *f1,*f2;

Teknika Dhe Gjuhet e Programimit Det Kursi

Tags:

Embed Size (px)

DESCRIPTION

Detyra e kursit te teknika dh gjuhet e programimit te FTI UPT

Citation preview

Page 1: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

1

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire te gjithë

numrat e thjeshte që janë nga 1 deri tek mesatarja e numrave ne file-in e inputit.

Shënim : Pasi do te llogaritet mesatarja e elementeve te vektorit duhet te shkruhen ne file-in e outputit numrat e

thjeshte nga 1 deri tek mesatarja (edhe mesatarja përfshihet). Numrat duhet te ndahen me hapësire ndërmjet

tyre pra duhet te përdoret ne cikël fprintf(f2,"%d ", 1); , për te mos vështirësuar programin te mos

hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

int f_nr_thjeshte(int nr)

{

int i;

if (nr==1 || nr==2)

{

return 1;

}

else if (nr<1)

{

return 0;

}

if (nr%2 ==0 )

{

return 0;

}

for(i=3; i<nr; i=i+2)

{

if (nr%i==0)

{

return 0;

}

}

return 1;

}

int main(int argc, char *argv[])

{

int i, s=0,n,v[100];

FILE *f1,*f2;

Page 2: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

2

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

s=s+v[i];

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

if (f_nr_thjeshte(i)==1)

fprintf(f2,"%d ", i);

}

fclose(f2);

return 1;

}

Page 3: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

3

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhet ne file-in e outputit maksimumi i numrave ne file-in e

inputit, por ne mënyrë te invertuar.

Shënim : Ne file-in e outputit do te shkruhet maksimumi i investuar si vlere numerike, Psh : 12340 4321

Zgjidhje :

#include <stdio.h>

int f_inverto(int nr)

{

int rebmun = 0;

int temp = 0;

temp = nr;

do

{

rebmun = 10*rebmun + temp % 10;

temp = temp/10;

} while(temp);

return rebmun;

}

int main(int argc, char *argv[])

{

int i, max,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

Page 4: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

4

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

// maksimumi

max=v[0];

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

{

if (max<v[i])

max=v[i];

}

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

fprintf(f2,"%d", f_inverto(max));

fclose(f2);

return 1;

}

Page 5: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

5

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire shuma e

numrave te një pas njëshëm qe gjenden ne file-in e inputit. (v[i]+v[i+1])

Shënim : Shumat duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , për te mos vështirësuar programin te mos hiqet hapësira pas numrit te fundit.

Elementi i fundit nuk mblidhet me asnjë element tjetër.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s=0,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

Page 6: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

6

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

{

fprintf(f2,"%d ", v[i]+v[i+1]);

}

fclose(f2);

return 1;

}

Page 7: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

7

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire shuma e

numrave te qe gjenden ne file-in e inputit, sipas logjikes ku nr i pare mblidhet me te fundin, i dyti me te parafundit

e kështu me radhe.

Shënim : Shumat duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s=0,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

Page 8: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

8

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

{

fprintf(f2,"%d ", v[i]+v[n-1-i]);

}

fclose(f2);

return 1;

}

Page 9: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

9

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire numrat qe

përsëriten me shume se njëherë ne file-in e inputit.

Shënim : Elementet qe perseriten duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te fundit.

Psh : nese kemi serine e nr : 2 3 5 6 2 5 2 5 2 5 ( do te printohen te gjitha rastet)

Zgjidhje :

#include <stdio.h>

int f_kontrollo(int v[], int nr,int n)

{

int i, a=0;

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

{

if (nr==v[i])

{

a++;

}

}

return a;

}

int main(int argc, char *argv[])

{

int i, s=0,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

Page 10: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

10

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

s=s+v[i];

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

if (f_kontrollo(v,v[i],n)>1)

fprintf(f2,"%d ", v[i]);

}

fclose(f2);

return 1;

}

Page 11: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

11

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire, te gjithë

numrat qe janë te barabarte me elementin e pare ose te fundit qe gjenden ne file-in e inputit.

Shënim : Elementet qe plotesojne kushtin duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne

nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te

fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s=0,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

Page 12: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

12

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

{

if (v[i]==v[0] || v[i]==v[n-1] )

fprintf(f2,"%d ", v[i]);

}

fclose(f2);

return 1;

}

Page 13: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

13

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhet ne file-in e outputit te ndare me hapësire numri e

shifrave te çdo numri qe gjendet ne file-in e inputit.

Shënim : Numrat e shifrave te cdo elementi duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret

ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit

te fundit. Shenja negative nuk konsiderohet si shifer.

Zgjidhje :

#include <stdio.h>

#include <stdlib.h>

int f_nr_shifra(int nr)

{

int rebmun = 0;

int temp = 0;

temp = nr;

do

{

rebmun ++;

temp = temp/10;

} while(temp);

return rebmun;

}

int main(int argc, char *argv[])

{

int i, n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

Page 14: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

14

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

fprintf(f2,"%d ", f_nr_shifra(abs(v[i])));

}

fclose(f2);

return 1;

}

Page 15: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

15

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire numrat te nuk

përsëriten ne file-in e inputit.

Shënim : Elementet qe nuk përsëriten duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne një

cikël fprintf(f2,"%d ", 1); , per te mos vështirësuar programin te mos hiqet hapësira pas numrit te

fundit.

Psh : nëse kemi serine e nr : 2 3 5 6 2 5 3 6 ( do te printohen te gjitha rastet)

Zgjidhje :

#include <stdio.h>

int f_kontrollo(int v[], int nr,int n)

{

int i, a=0;

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

{

if (nr==v[i])

{

a++;

}

}

return a;

}

int main(int argc, char *argv[])

{

int i, s=0,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

Page 16: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

16

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

if (f_kontrollo(v,v[i],n)==1)

fprintf(f2,"%d ", v[i]);

}

fclose(f2);

return 1;

}

Page 17: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

17

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhet ne file-in e outputit numrin qe përsëritet me shpesh dhe

numri e herëve te ndare me hapësire për numrat qe janë ne file-in e inputit.

Shënim : Pasi kontrollohet se cili numer perseritet me shpesh do te shkruhet ne nje file me hapësire vetem

ndermjet këtij numri dhe numrit qe tregon shpeshtesine. fprintf(f2,"%d %d", 1,2);. Ne rast se

ka dy numra te ndryshem qe perseriten me te njejten numer heresh te merret

numri qe gjendet i pari ne file.

Psh : 2 3 6 5 6 6 3 2 3 3 2 6 3 4

Zgjidhje :

#include <stdio.h>

int f_kontrollo(int v[], int nr,int n)

{

int i, a=0;

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

{

if (nr==v[i])

{

a++;

}

}

return a;

}

int main(int argc, char *argv[])

{

int i, max, n,v[100],r[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

Page 18: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

18

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

r[i]=f_kontrollo(v,v[i],n);

}

max = 0;

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

{

if (r[i]>r[max])

max=i;

}

fprintf(f2,"%d %d", v[max],r[max]);

fclose(f2);

return 1;

}

Page 19: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

19

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire numrat qe

janë te barabarte me minimumin e dyte qe gjenden ne file-in e inputit.

Shënim : Elementet qe nuk përsëriten duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne një

cikël fprintf(f2,"%d ", 1); , per te mos vështirësuar programin te mos hiqet hapësira pas numrit te

fundit. Minimumi i dyte nënkupton vleren e dyte me te vogel.

Psh : nëse kemi serine e nr : 2 3 5 6 2 5 minimumi i dyte është 3 dhe jo 2 i dyte.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, min1, min2,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

min1=v[0];

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

{

Page 20: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

20

if (min1>v[i])

min1=v[i];

}

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

{

if (min1!=v[i])

{

min2=v[i];

break;

}

}

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

{

if (min2>v[i] && min1!=v[i])

{

min2=v[i];

}

}

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

if (min2==v[i] )

{

fprintf(f2,"%d ", v[i]);

}

}

fclose(f2);

return 1;

}

Page 21: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

21

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire te gjithë

numrat ku numri i shifrave te tyre është i barabarte me numrin e shifrave te numrit me te madh qe gjenden ne

file-in e inputit.

Shënim : Elementet qe nuk përsëriten duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne një

cikël fprintf(f2,"%d ", 1); , per te mos vështirësuar programin te mos hiqet hapësira pas numrit te

fundit.

Zgjidhje :

#include <stdio.h>

int f_nr_shifra(int nr)

{

int rebmun = 0;

int temp = 0;

temp = nr;

do

{

rebmun ++;

temp = temp/10;

} while(temp);

return rebmun;

}

int main(int argc, char *argv[])

{

int i, max,m_sh,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

Page 22: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

22

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

max=v[0];

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

{

if (max<v[i])

max=v[i];

}

m_sh = f_nr_shifra(max);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

if (m_sh==f_nr_shifra(v[i]) )

{

fprintf(f2,"%d ", v[i]);

}

}

fclose(f2);

return 1;

}

Page 23: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

23

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra bëjnë pjese ne secilin nga dy grupet qe ndodhen pas tij ne ketë file. Te hidhen ne file-in e

outputit te ndare me hapësire shuma e numrave te e te dy grupeve ku kane indeksin e njëjte qe gjenden ne file-in

e inputit. (v[i]=g1[i]+ g2[i])

Shënim : Shumat duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s=0,a,b,v1[100],v2[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&a);

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

{

fscanf(f1,"%d",&v1[i]);

}

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

{

fscanf(f1,"%d",&v2[i]);

}

fclose(f1);

Page 24: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

24

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

fprintf(f2,"%d ", v1[i]+v2[i]);

}

fclose(f2);

return 1;

}

Page 25: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

25

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire te gjithë

numrat pozitiv qe gjenden ne file-in e inputit, ne mënyrë te radhitur ne rend rritës.

Shënim : Shumat duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

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

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

if (v[i]>v[j])

{

s=v[i];

v[i]=v[j];

Page 26: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

26

v[j]=s;

}

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

if (v[i]>=0)

fprintf(f2,"%d ", v[i]);

}

fclose(f2);

return 1;

}

Page 27: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

27

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te shkruhet ne file-in e outputit “po” nëse elementet janë qe

gjenden ne file-in e inputit janë te radhitur dhe “jo” nëse nuk janë.

Shënim : Rradhitja nuk eshte e specifikuar keshtu qe duhet te kontrollohen te dy rastet si ne rend rrites ashtu

edhe ne ate zbrites.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

s=1;

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

if (v[i]>v[i+1])

{

s=0;

break;

}

Page 28: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

28

if (s==0)

{

s=1;

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

if (v[i]<v[i+1])

{

s=0;

break;

}

}

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

if (s==1)

fprintf(f2,"po");

else

fprintf(f2,"jo");

fclose(f2);

return 1;

}

Page 29: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

29

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire numrat qe

gjenden ne file-in e inputit, te radhitura sipas një grupimi me nga 5 element.

Shenim : Rradhitja do te behet ne rend rrites, per cdo grup. Elementet duhet te ndahen me hapësire ndërmjet

tyre pra duhet te përdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te

mos hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

for(int k=0;k<n;k=k+5)

{

for(i=k;i<n-1 && i<k+5;i++)

for (int j=i+1;j<n && j<k+5;j++)

if (v[i]>v[j])

Page 30: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

30

{

s=v[i];

v[i]=v[j];

v[j]=s;

}

}

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

fprintf(f2,"%d ", v[i]);

}

fclose(f2);

return 1;

}

Page 31: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

31

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire numrat te

cilët janë te barabarte me mesataren e numrave qe gjenden ne file-in e inputit.

Shenim : Elementet duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s=0,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

s=s+v[i];

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

Page 32: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

32

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

{

if (v[i]==s/n)

fprintf(f2,"%d ", v[i]);

}

fclose(f2);

return 1;

}

Page 33: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

33

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ndodhen pas tij ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire numrat te

cilët janë te ndryshëm nga numri i fundit qe gjenden ne file-in e inputit.

Shenim : Elementet duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i, s=0,n,v[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%d",&v[i]);

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

Page 34: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

34

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

{

if (v[i]!=v[n-1])

fprintf(f2,"%d ", v[i]);

}

fclose(f2);

return 1;

}

Page 35: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

35

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të dhënave

dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku numri i pare

tregon se sa numra ka grupimi i pare “A” dhe numri i dyte tregon se sa numra ka grupimi i dyte “B”, numrat ne file

janë te vendosur sipas grupimeve, ne fillim grupimi A dhe me pas ai B . Te hidhen ne file-in e outputit te ndare me

hapësire numrat e grupimit te pare te cilët nuk bëjnë pjese tek grupimi i dyte.

Shenim : Elementet duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

int f_kontrollo(int v[], int nr,int n)

{

int i, a=0;

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

{

if (nr==v[i])

{

a++;

}

}

return a;

}

int main(int argc, char *argv[])

{

int i, s=0,a,b,v1[100],v2[100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

Page 36: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

36

fscanf(f1,"%d",&a);

fscanf(f1,"%d",&b);

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

{

fscanf(f1,"%d",&v1[i]);

}

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

{

fscanf(f1,"%d",&v2[i]);

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

if (f_kontrollo(v2,v1[i],b)==0)

fprintf(f2,"%d ", v1[i]);

}

fclose(f2);

return 1;

}

Page 37: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

37

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të

dhënave dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku

numri i pare tregon numrin e rreshtave dhe numri i dyte tregon numrin e kolonave te nje matrice qe ndodhen

pas tyre ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire minimumi, maksimumi dhe

mesatarja e numrave qe gjenden ne file-in e inputit.

Shenim : Elementet duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret

fprintf(f2,"%d %d %d", 1,10,5);

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i,j, s=0,n,m,v[100][100];

int min, max, mes;

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&m);

fscanf(f1,"%d",&n);

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

{

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

{

fscanf(f1,"%d",&v[i][j]);

//printf("%4d ",v[i][j]);

}

//printf("\n");

Page 38: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

38

}

min=v[0][0];

max=v[0][0];

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

{

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

{

if (min>v[i][j])

{

min=v[i][j];

}

if (max<v[i][j])

{

max=v[i][j];

}

s+=v[i][j];

}

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

fprintf(f2,"%d %d %d", max, min, s/(m*n));

fclose(f2);

return 1;

}

Page 39: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

39

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të

dhënave dhe parametri i dyte është emri i file-it te outputit te te dhënave File-i i hyrjes është i strukturuar ku

numri i pare tregon numrin e rreshtave dhe numri i dyte tregon numrin e kolonave te një matrice qe ndodhen

pas tyre ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire minimumi dhe maksimumi i

elementeve ne diagonalen kryesore.

Shenim : Elementet duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret

fprintf(f2,"%d %d ", 1,10);

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i,j, s=0,n,m,v[100][100];

int min, max, mes;

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&m);

fscanf(f1,"%d",&n);

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

{

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

{

fscanf(f1,"%d",&v[i][j]);

}

}

Page 40: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

40

min=v[0][0];

max=v[0][0];

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

{

if (min>v[i][i])

{

min=v[i][i];

}

if (max<v[i][i])

{

max=v[i][i];

}

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

fprintf(f2,"%d %d", min, max);

fclose(f2);

return 1;

}

Page 41: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

41

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të

dhënave dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku

numri i pare tregon numrin e rreshtave dhe numri i dyte tregon numrin e kolonave te një matrice qe ndodhen

pas tyre ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire shuma e çdo rreshti te matricës qe

gjendet tek file i inputit.

Shënim : Shumat duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te

fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i,j, s=0,n,m,v[100][100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&m);

fscanf(f1,"%d",&n);

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

{

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

{

fscanf(f1,"%d",&v[i][j]);

}

}

Page 42: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

42

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

s=0;

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

{

s+=v[i][j];

}

fprintf(f2,"%d ", s);

}

fclose(f2);

return 1;

}

Page 43: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

43

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të

dhënave dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku

numri i pare tregon numrin e rreshtave dhe numri i dyte tregon numrin e kolonave te një matrice qe ndodhen

pas tyre ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire maksimumi i çdo kolone te matricës.

Shënim : Maksimumet duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te

fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i,j, s=0,n,m,v[100][100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&m);

fscanf(f1,"%d",&n);

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

{

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

{

fscanf(f1,"%d",&v[i][j]);

}

}

Page 44: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

44

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

s=v[0][j];

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

{

if (v[i][j]>s )

s=v[i][j];

}

fprintf(f2,"%d ", s);

}

fclose(f2);

return 1;

}

Page 45: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

45

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të

dhënave dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku

numri i pare tregon numrin e rreshtave dhe numri i dyte tregon numrin e kolonave te një matrice qe ndodhen

pas tyre ne ketë file. Te hidhen ne file-in e outputit te ndare me hapësire numri i herëve qe përsëritet elementi

i pare i çdo reshti i matricës (ne atë rresht).

Shënim : Numrat duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te

fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i,j, s=0,n,m,v[100][100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&m);

fscanf(f1,"%d",&n);

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

{

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

{

fscanf(f1,"%d",&v[i][j]);

}

}

Page 46: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

46

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

s=0;

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

{

if(v[i][j]==v[i][0])

s++;

}

fprintf(f2,"%d ", s);

}

fclose(f2);

return 1;

}

Page 47: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

47

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të

dhënave dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku

numri i pare tregon numrin e rreshtave dhe numri i dyte tregon numrin e kolonave te një matrice qe ndodhen

pas tyre ne ketë file. Te hidhen ne file-in e outputit çdo resht i matricës i radhitur ne rend rritës (Numrat te

ndahen me hapsire).

Shënim : Elementet duhet te ndahen me hapësire ndërmjet tyre pra duhet te përdoret ne nje cikel

fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te

fundit.

Zgjidhje :

#include <stdio.h>

int main(int argc, char *argv[])

{

int i,j, s=0,n,m,v[100][100];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&m);

fscanf(f1,"%d",&n);

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

{

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

{

fscanf(f1,"%d",&v[i][j]);

}

}

Page 48: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

48

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

{

for (int k=0;k<n-1;k++)

for(j=k+1;j<n;j++)

if(v[i][k]>v[i][j])

{

s=v[i][k];

v[i][k]=v[i][j];

v[i][j]=s;

}

}

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

{

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

fprintf(f2,"%d ", v[i][j]);

}

fclose(f2);

return 1;

}

Page 49: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

49

Te ndërtohet program i cili thirret me dy parametra ku parametri i pare është emri i file-it te inputit te të

dhënave dhe parametri i dyte është emri i file-it te outputit te te dhënave. File-i i hyrjes është i strukturuar ku

numri i pare tregon numrin e studenteve, dhe rreshtat e tjerë mbajnë emrin dhe mbiemrin e çdo studenti. Te

hidhen ne file-in e outputit te ndare me hapësire emrat dhe mbiemrat e studenteve te cilëve emri u vjen

përpara ne rend alfabetik.

Shenim : Duhet te perdoret ne nje cikel, ne menyre qe te kete hapësire ndermjet emrit dhe mbiemrit

fprintf(f,"%s %s ", emri[i],mbiemri[j] );

per te mos veshtiresuar programin te mos hiqet hapësira pas numrit te fundit.

Zgjidhje :

#include <stdio.h>

#include <string.h>

int main(int argc, char *argv[])

{

int i,j, s=0,n,m;

char emri[100][50],mbiemri[100][50];

FILE *f1,*f2;

if (argc!=3)

{

printf("Numri i argumentave i gabuar");

return 0;

}

if ((f1=fopen(argv[1],"r"))==NULL)

{

printf("File-i i kerkuar nuk mund qe te hapet.\n");

return 0;

}

fscanf(f1,"%d",&n);

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

{

fscanf(f1,"%s",emri[j]);

fscanf(f1,"%s",mbiemri[j]);

}

Page 50: Teknika Dhe Gjuhet e Programimit Det Kursi

Detyre Kursi “Teknikat dhe gjuhet e programimit” 2011

50

fclose(f1);

if (( f2=fopen(argv[2],"w"))==NULL)

{

printf("File-i i ri (%s) nuk mund qe te hapet.\n", argv[2]);

return 0;

}

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

if (strcmp(emri[j],mbiemri[j])<0)

fprintf(f2,"%s %s ", emri[j],mbiemri[j] );

fclose(f2);

return 1;

}