Download as pdf or txt
Download as pdf or txt
You are on page 1of 50

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire te gjith numrat e thjeshte q jan nga 1 deri tek mesatarja e numrave ne file-in e inputit. Shnim : 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 prfshihet). Numrat duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne cikl fprintf(f2,"%d ", 1); , pr te mos vshtirsuar programin te mos hiqet hapsira 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;

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 mnyr te invertuar. Shnim : Ne file-in e outputit do te shkruhet maksimumi i investuar si vlere numerike, 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); Psh : 12340 4321

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire shuma e numrave te nj pas njshm qe gjenden ne file-in e inputit. (v[i]+v[i+1]) Shnim : Shumat duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , pr te mos vshtirsuar programin te mos hiqet hapsira pas numrit te fundit. Elementi i fundit nuk mblidhet me asnj element tjetr. 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; }

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

for(i=0;i<n-1;i++) { fprintf(f2,"%d ", v[i]+v[i+1]); } fclose(f2); return 1; }

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire 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 kshtu me radhe. Shnim : Shumat duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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; }

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

for(i=0;i<n;i++) { fprintf(f2,"%d ", v[i]+v[n-1-i]); } fclose(f2); return 1; }

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire numrat qe prsriten me shume se njher ne file-in e inputit. Shnim : Elementet qe perseriten duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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; }

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

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; }

10

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire, te gjith numrat qe jan te barabarte me elementin e pare ose te fundit qe gjenden ne file-in e inputit. Shnim : Elementet qe plotesojne kushtin duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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; }

11

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

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; }

12

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire numri e shifrave te do numri qe gjendet ne file-in e inputit. Shnim : Numrat e shifrave te cdo elementi duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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;

13

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


} 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; }

14

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire numrat te nuk prsriten ne file-in e inputit. Shnim : Elementet qe nuk prsriten duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nj cikl fprintf(f2,"%d ", 1); , per te mos vshtirsuar programin te mos hiqet hapsira pas numrit te fundit. Psh : nse 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");

15

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

16

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 prsritet me shpesh dhe numri e herve te ndare me hapsire pr numrat qe jan ne file-in e inputit. Shnim : Pasi kontrollohet se cili numer perseritet me shpesh do te shkruhet ne nje file me hapsire vetem ndermjet ktij 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");

17

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

18

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire numrat qe jan te barabarte me minimumin e dyte qe gjenden ne file-in e inputit. Shnim : Elementet qe nuk prsriten duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nj cikl fprintf(f2,"%d ", 1); , per te mos vshtirsuar programin te mos hiqet hapsira pas numrit te fundit. Minimumi i dyte nnkupton vleren e dyte me te vogel. Psh : nse 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++) {

19

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

20

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire 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. Shnim : Elementet qe nuk prsriten duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nj cikl fprintf(f2,"%d ", 1); , per te mos vshtirsuar programin te mos hiqet hapsira 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;

21

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


} 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; }

22

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. File-i i hyrjes sht i strukturuar ku numri i pare tregon se sa numra bjn pjese ne secilin nga dy grupet qe ndodhen pas tij ne ket file. Te hidhen ne file-in e outputit te ndare me hapsire shuma e numrave te e te dy grupeve ku kane indeksin e njjte qe gjenden ne file-in e inputit. (v[i]=g1[i]+ g2[i]) Shnim : Shumat duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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);

23

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

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; }

24

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire te gjith numrat pozitiv qe gjenden ne file-in e inputit, ne mnyr te radhitur ne rend rrits. Shnim : Shumat duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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];

25

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

26

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 nse elementet jan qe gjenden ne file-in e inputit jan te radhitur dhe jo nse nuk jan. Shnim : 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; }

27

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

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; }

28

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire 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 hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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])

29

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


{ 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; }

30

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire numrat te cilt jan te barabarte me mesataren e numrave qe gjenden ne file-in e inputit. Shenim : Elementet duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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; }

31

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

for(i=0;i<n;i++) { if (v[i]==s/n) fprintf(f2,"%d ", v[i]); } fclose(f2); return 1; }

32

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire numrat te cilt jan te ndryshm nga numri i fundit qe gjenden ne file-in e inputit. Shenim : Elementet duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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; }

33

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


for(i=0;i<n;i++) { if (v[i]!=v[n-1]) fprintf(f2,"%d ", v[i]); } fclose(f2); return 1; }

34

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire numrat e grupimit te pare te cilt nuk bjn pjese tek grupimi i dyte. Shenim : Elementet duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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; }

35

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

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; }

36

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire minimumi, maksimumi dhe mesatarja e numrave qe gjenden ne file-in e inputit. Shenim : Elementet duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret 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");

37

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


} 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; }

38

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave 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 hapsire minimumi dhe maksimumi i elementeve ne diagonalen kryesore. Shenim : Elementet duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret 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]); } }

39

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

40

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire shuma e do rreshti te matrics qe gjendet tek file i inputit. Shnim : Shumat duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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]); } }

41

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

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; }

42

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire maksimumi i do kolone te matrics. Shnim : Maksimumet duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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]); } }

43

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

44

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire numri i herve qe prsritet elementi i pare i do reshti i matrics (ne at rresht). Shnim : Numrat duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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]); } }

45

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

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; }

46

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 matrics i radhitur ne rend rrits (Numrat te ndahen me hapsire). Shnim : Elementet duhet te ndahen me hapsire ndrmjet tyre pra duhet te prdoret ne nje cikel fprintf(f2,"%d ", 1); , per te mos veshtiresuar programin te mos hiqet hapsira 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]); } }

47

Detyre Kursi Teknikat dhe gjuhet e programimit 2011


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; }

48

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

Te ndrtohet program i cili thirret me dy parametra ku parametri i pare sht emri i file-it te inputit te t dhnave dhe parametri i dyte sht emri i file-it te outputit te te dhnave. 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 hapsire emrat dhe mbiemrat e studenteve te cilve emri u vjen prpara ne rend alfabetik. Shenim : Duhet te perdoret ne nje cikel, ne menyre qe te kete hapsire ndermjet emrit dhe mbiemrit fprintf(f,"%s %s ", emri[i],mbiemri[j] ); per te mos veshtiresuar programin te mos hiqet hapsira 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]); }

49

Detyre Kursi Teknikat dhe gjuhet e programimit 2011

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; }

50

You might also like