Professional Documents
Culture Documents
Teknika Dhe Gjuhet e Programimit Det Kursi
Teknika Dhe Gjuhet e Programimit Det Kursi
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; }
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
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; }
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; }
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; }
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
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
12
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
14
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
16
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
18
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
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
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
22
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
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
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
26
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
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
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
30
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
32
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
34
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
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
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
38
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
40
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
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
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
fclose(f2); return 1; }
44
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
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
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
fclose(f2); return 1; }
48
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
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