Informatik II
Informatik II
c++ ne distanc Programimi viti i -II-
Fillim
#include <iostream>
using namespace std;
#define per for
#define lexo cin
#define shtyp cout
#define MIN 1
#define MAKS 10
#define SHUMA a+b
#define Katrori(k) (a*a)
#define kthe return
int main()
{
int i,a,b,k;
shtyp<<"Jepni vlerat per X1 dhe X2: ";
lexo>>a
>>b;
shtyp<< "Shuma = a+b = "
<<SHUMA
<<"\n";
shtyp<< "Katrori (h) = "
<< Katrori(k)
<<"/n";
per(i=1;i<=10;i++)
shtyp << i
<< "\n";
kthe 0;
}
1. Numerimi I zanoreve dhe bashketingelloreve ne nje varg shkronjash
Kodi:
#include <iostream>
using namespace std;
//Ky program kerkon nga perdoruesi te jape disa shkronja dhe pastaj numeron
//sa prej tyre jane zanore e sa bashketingellore. Numri i shkronjave qe do
//lexohen jepet ne fillim te programit nga perdoruesi
int main()
int i, n;
char shkronja;
int zanore, bashkt;
//Se pari kerkojme nga perdoruesi te tregoje sa shkronja do te jape
cout << "Sa shkronja do te lexohen: ";
cin >> n;
//Inicializojme numrin e zanoreve ne 0
zanore = 0;
//Tani perseritim n here. Ne cdo perseritje lexojme nje shkronjenga
//tastiera, kontrollojme nese eshte zanore dhe nese eshte ateherenumrin
//e zanoreve e rrisim per 1.
for (i = 1; i <= n; i++) {
//Kerkojme nga perdoruesi te jape shkronjen
cout << "Jepni shkronjen " << i << ": ";
cin >> shkronja;
//Kontrollojme nese eshte zanore, nese po rrisim numrin e zanoreveper 1
switch (shkronja) {
case 'a':
case 'e':
case 'ë':
case 'o':
case 'i':
case 'u':
case 'y': zanore++; break;
}
//Tani qe kemi mbaruar me leximin e dijme numrin e zanoreve
//Numri i bashketingelloreve eshte numri i shkronja minus zanoret
bashkt = n - zanore;
//Shtypim rezultatin
cout << "Gjithsejt jane lexuar " << zanore << " zanore " << endl;
cout << "Gjithsejt jane lexuar " << bashkt << " bashketingellore";
=============================================================
2. Numerimi I numrave cift dhe tek ne nje varg numrash
Kodi:
#include <iostream>
using namespace std;
//Ky program lexon nje varg numrash nga tastiera dhe numeron sa prej tyre
//cift e sa tek. Numri i numrave qe do te lexohen nuk dihet qe perpara dhe
//leximi do te perfundoje kur te lexohet ndonje numer negativ ose zero.
int main()
int numri;
int cift, tek; //Variabla qe do te mbajne numrin e numrave cift/tek
//Inicializojme variablat cift dhe tek; numerimi fillon prej 0
cift = 0;
tek = 0;
//Tani do te perserisim pandalur duke lexuar numra, do te kontrollojme
//nese jane cift ose tek. Ndalimi i perseritjes do te behet prej brenda
//ciklit me ane te urdherit break, kur do te lexohet numer <= 0
while (true) {
//Lexo numrin
cout << "Jep numrin: ";
cin >> numri;
//Kontrollo nese eshte me i vogel ose i barabarte se 0. Nese po,
//perseritjen duke perdorur urdherin break
if (numri <= 0) {
break;
}
//Tani kontrollojme nese numri eshte cift ose tek dhe rrisimnumerimin
//e numrave cift ose tek. Kete e bejme duke krahasur mbetjen gjate
//pjesetimit te atij numri me 0
if ((numri % 2) == 0) {
//Nese mbetja eshte 0, atehere eshte numer cift
cift++;
} else {
//Perndryshe eshte numer tek
tek++;
}
} //mbyll urdherin while
//Na ka mbetur vetem ti shtypim rezultatet
cout << "Gjithsejt jane lexuar " << cift << " numra cift\n";
cout << "Gjithsejt jane lexuar " << tek << " numra tek";
return 0;}
// Programi vektor1
#include <iostream.h>
int main()
{
const int m=5;
int i;
int A[m]={2,5,-1,6,3}; //Deklarimi dhe inicializimi i vektrorit
cout << "Vektori A"
<< "\n";
for (i=0;i<m;i++)
cout << A[i]
<< " ";
cout << "\n";
return 0;
}
// Programi vektor2
#include <iostream.h>
int main()
{
const int m=5;
int i;
int A[m]={2,5,-1,6,3};
for (i=0;i<m;i++)
cout << "A["
<< i
<< "]="
<< A[i]
<< "\n";
return 0;
}
// Programi vektor3
#include <iostream.h>
int main()
{
const int m=5;
int i, A[m];
//Krijimi i vektorit
for (i=0;i<m;i++)
{
cout << "A["
<< i+1
<< "]= ";
cin >> A[i];
}
// Shtypja e vektorit
cout << " Vektori i krijuar: \n";
cout << "A={ ";
for (i=0;i<m;i++)
cout << A[i]
<< " ";
cout << "}\n";
return 0;
}
// Programi Prg6_6
// Formimi i vektorit prej vektorit
#include <iostream.h>
int main()
{
const n=4;
int i,A[n]={1,2,3,4},B[n];
for (i=0;i<n;i++)
{
B[i]=2*A[i];
cout << "B["
<< i
<< "]="
<< B[i]
<< "\n";
}
return 0;
}
// Programi Prg6_8
// Bashkimi i dy vektoreve
#include <iostream.h>
int main()
{
const m=3,n=2;
int A[n]={1,2},
B[m]={3,4,5},
i,G[m+n];
for (i=0;i<m+n;i++)
{
if (i<m)
G[i]=B[i];
else
G[i]=A[i-m];
cout << "G["
<< i
<< "]="
<< G[i]
<< "\n";
}
return 0;
}
Matricat
// Programi matrica1
#include <iostream.h>
int main()
{
const int m=3, n=3;
int i,j;
int A[m][n]={{1,2,3},
{4,5,6},
{7,8,9}};
cout << "Matrica A: " << "\n";
for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
cout << A[i][j]
<< " ";
cout << "\n";
}
return 0;
}
// Programi matrica2
#include <iostream.h>
int main()
{
const int m=3, n=3;
int A[m][n];
int i,j;
//Krijimi i matricës
for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
{
cout << "A[" << i+1 << "][" << j+1 << "]=";
cin >> A[i][j];
}
}
cout << "Matrica A: " << "\n";
for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
cout << A[i][j]
<< " ";
cout << "\n";
}
return 0;}
// Programi FunksionMatrica3
#include <iostream.h>
const int n=3;
double ShumaAntPozMat(int X[][n],int m);
int main()
{
const int m=2, n=3;
double Shuma;
int A[m][n]={ {1,-2,3},
{-4,5,-6},
};
Shuma=ShumaAntPozMat(A,m);
cout << "Shuma e anetareve pozitiv te matrices S="
<< Shuma
<< "\n";
return 0;
}
double ShumaAntPozMat(int X[][n],int m)
{
int i,j;
double s;
s=0;
for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
if (X[i][j]>0)
s=s+X[i][j];
}
return s;
}
Numrimi i anëtarëve bëhet duke marrë një numrator (p.sh. “n”) me vlerën fillestare n=0; para unazës dhe pastaj në unazën e cila i përshkon të gjithë anëtarët e vargut, sa herë që gjendet një anëtarë që e plotëson kushtin e dhënë, numratori rritet për një (n=n+1).
// Programi Prg6_22
//Numri i antareve negativ te vektorit
#include <iostream.h>
int main()
{
const m=5;
int A[m]={3,-2,7,-4,5},i,n;
n=0; //numratori – fillimisht vlera zero
for (i=0;i<m;i++) //unaza që përshkon vargun
if (A[i]<0) //kushti për numrim
n=n+1; //rritja e numratorit
cout << "Anëtarë negativë n="
<< n
<< "\n";
return 0;
}
// Programi Prg6_26
//Numri i antareve negativ dhe pozitiv te vektorit
#include <iostream.h>
#include <math.h>
int main()
{
const m=5;
int A[m]={2,-3,-7,4,1},i,p,n;
p=0;
n=0;
for (i=0;i<m;i++)
if (A[i]<0)
n=n+1;
else
p=p+1;
cout << "Anëtarë pozitiv p="
<< p
<< "\n";
cout << "Anëtarë negativ n="
<< n
<< "\n";
return 0;
}
// Programi Prg6_28
//Numri i anetareve mes 3 dhe 8
#include <iostream.h>
#include <math.h>
int main()
{
const n=5;
int A[n]={5,2,4,9,-7},i,k;
k=0;
for (i=0;i<n;i++)
{
if ((A[i]>3) && (A[i]<8))
k=k+1;
else
cout << "i="
<< i
<< " A["
<< i
<< "]="
<< A[i]
<< "\n";
}
cout << "Numri i kërkuar k="
<< k
<< "\n";
return 0;
}
Gjetja e anëtarit minimal/maksimal bëhet, duke e deklaruar fillimisht anëtarin e parë të vargut, si anëtari minimal/maksimal: p.sh., Amax=A[0]; dhe pastaj përmes unazës që i përshkon të gjithë anëtarët tjerë të vargut, e krahasojmë vlerën momentale të Amax me të gjithë anëtarët tjerë të vargut. Nëse gjindet ndonjë që është më i madh (për rastin minimal më i vogël) se anëtari momental maksimal, atëherë Amax, e merr vlerën e tij dhe krahasimi vazhdon me anëtarët vijues të vargut.
// Programi Prg6_30
//Anetari me i madh i vektorit
#include <iostream.h>
int main()
{
const m=4;
int A[m]={3,7,5,9},i, Amax;
Amax=A[0];
for (i=1;i<m;i++)
{
if (Amax < A[i]) //nëse ndonjë anëtar është më i madh
Amax = A[i]; //Amax e merr vlerën e tij
}
cout << "Numri më i madhë Amax ="
<< Amax
<< "\n";
return 0;
}
Sortimi I vektorit
#include <iostream>
using namespace std;
int main()
{
const int n=4;
int A[n]={7,2,8,3},i,j,b;
for (i=0;i<n-1;i++)
for (j=i+1;j<n;j++)
{
if (A[i]>A[j])
{
b=A[i];
A[i]=A[j];
A[j]=b;
}
}
cout << "A=[ ";
for (i=0;i<n;i++)
cout << A[i]
<< " ";
cout << "]"
<< "\n";
return 0;
}
Sortimi sipaas heres se ndrimit ?
#include <iostream>
using namespace std;
int main()
{
const int n=4;
int A[n]={7,2,8,3},i,j,b;
for (int z=0;z<n;z++)
cout << A[z];
cout<<endl;
for (i=0;i<n-1;i++)
{
for (j=i+1;j<n;j++)
{
if (A[i]>A[j])
{
b=A[i];
A[i]=A[j];
A[j]=b;
cout<<"hera" <<j<<" ";
for (int z=0;z<n;z++)
cout << A[z];
cout<<endl;
}
}
}
cout<<endl;
cout << "A=[ ";
for (i=0;i<n;i++)
cout << A[i]
<< " ";
cout << "]"
<< "\n";
return 0;
}
Formimi I fushave numerike
#include <iostream>
using namespace std;
#include <cmath>
int main()
{
const int m=5,n=5;
int i,j,A[m][n];
for (i=0;i<m;i++)
for (j=0;j<n;j++)
if (i<j)
A[i][j]=1;
else if (i==j)
A[i][j]=0;
else A[i][j]=2;
cout << "Matrica e formuar"
<< "\n"; for (i=0;i<m;i++)
{ for (j=0;j<n;j++)
cout << A[i][j]
<< " ";
cout << "\n"; }
return 0; }