Upload
fatjon-dashhana
View
280
Download
7
Tags:
Embed Size (px)
DESCRIPTION
Detyra e kursit te teknika dh gjuhet e programimit te FTI UPT
Citation preview
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;
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;
}
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);
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;
}
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;
}
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;
}
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;
}
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;
}
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;
}
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;
}
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;
}
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;
}
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;
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;
}
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");
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;
}
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");
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;
}
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++)
{
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;
}
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;
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;
}
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);
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;
}
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];
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;
}
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;
}
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;
}
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])
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;
}
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;
}
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;
}
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;
}
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;
}
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;
}
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;
}
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");
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;
}
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]);
}
}
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;
}
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]);
}
}
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;
}
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]);
}
}
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;
}
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]);
}
}
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;
}
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]);
}
}
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;
}
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]);
}
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;
}