You are on page 1of 13

Shembuj nga Leksioni:

1. //Inicializimi i Matricave me vlera 0


public class MatricaInit {

public static void main(String[] args) {

int[] mat;

mat= new int[ 10 ];

//int[] mat = { 32, 27, 64, 18, 95, 14, 90, 70, 60, 37 };

System.out.printf( "%s%8s\n", "Indeksi", "Vlera" );

for ( int i = 0; i < mat.length; i++ )


System.out.printf( "%5d%8d\n", i, mat[i ] );
}
}

2. //Inicializimi i Matricave

public class MatricaInit2 {

public static void main(String[] args) {

final int ARRAY_LENGTH = 10;


int[] mat = new int[ ARRAY_LENGTH ];

for ( int i = 0; i < mat.length; i++ )


mat[ i ] = 2 + 2 * i;

System.out.printf( "%s%8s\n", "Indeksi", "Vlera" );

for ( int i = 0; i < mat.length; i++ )


System.out.printf( "%5d%8d\n", i,mat[i ] );
}
}

3. //Shuma e elementeve te matrices


public class ShumaMat {

public static void main(String[] args) {

int[] mat = { 87, 68, 94, 100, 83, 78, 85, 91, 76, 87 };
int totali = 0;

for ( int i = 0; i < mat.length; i++ )


totali += mat[ i ];
System.out.printf( "Shuma e elemeneteve te matrices: %d\n", totali
);
}
}

4. //printimi i grafikut me yje


public class Grafiku {

public static void main(String[] args) {

int[] mat = { 0, 0, 0, 0, 0, 0, 1, 2, 4, 2, 1 };

System.out.println( "Shperndarja:" );

for ( int i = 0; i < mat.length; i++ )


{

if ( i == 10 )
System.out.printf( "%5d: ", 100 );
else
System.out.printf( "%02d-%02d: ",
i * 10, i * 10 + 9 );

for ( int yje = 0; yje < mat[ i ]; yje++ )


System.out.print( "*" );

System.out.println();
}
}
}

5. // Hedhja e kubit duke perdorur matricat ne vend te switch.


import java.util.Random;

public class HedhjaKubit {

public static void main(String[] args) {

Random nr = new Random();


int[] fr = new int[ 7 ];

for ( int i = 1; i <= 6000000; i++ )


++fr[ 1 + nr.nextInt( 6 ) ];

System.out.printf( "%s%10s\n", "Faqja", "Frekuenca" );

for ( int f = 1; f < fr.length; f++ )


System.out.printf( "%4d%10d\n", f, fr[ f ] );
}
}

6. /Kalimi ne medote e matrices si argument


public class KalimiNeMetode {

public static void main(String[] args) {

int[] mat = { 1, 2, 3, 4, 5 };

System.out.println(
"Kalimi si reference:\n" +
"Matrica Origjianle:" );

for ( int vl : mat )


System.out.printf( " %d", vl );

modifikoMatrice( mat );
System.out.println( "\n\nMatrica e modifikuar:" );

for ( int vl : mat )


System.out.printf( " %d", vl );

System.out.printf(
"\n\nKalimi i vleres se nje elementi:\n" +
"mat[3]para modifikoElement: %d\n", mat[ 3 ] );

modifikoElement( mat[ 3 ] );
System.out.printf(
"mat[3] mbas modifikoElement: %d\n", mat[ 3 ] );
}

public static void modifikoMatrice( int mat2[] )


{
for ( int i = 0; i < mat2.length; i++ )
mat2[ i ] *= 2;
}

public static void modifikoElement( int element )


{
element *= 2;
System.out.printf(
"Vlera e elementit: %d\n", element );
}
}

7. // Perdorimi i Matricave ne nje klase jashte klases aplikacion


class NotatStudente {
private String lenda;
private int[] piket;

public NotatStudente( String emer, int[] piket1 )


{
lenda = emer;
piket = piket1;
}

public void setLenda( String e )


{
lenda =e;
}

public String getLenda()


{
return lenda;
}

public void shfaq()


{

System.out.printf( "Vleresimet per \n%s!\n\n",


getLenda() );
}

public void perpuno()


{

daljaPiket();

System.out.printf( "\nMesatarja eshte %.2f\n", getMesatare() );

System.out.printf( "Vlera me e vogel %d\n Vlera me e madhe


%d\n\n",
getMin(), getMax() );

dalja();
}

public int getMin()


{
int min = piket[ 0 ];
for ( int piket :piket )
{
if ( piket < min )
min = piket;
}

return min;
}

public int getMax()


{
int max = piket[ 0 ];

for ( int piket : piket )


{

if ( piket > max )


max = piket;
}

return max;
}

public double getMesatare()


{
int total = 0;

for ( int piket : piket )


total += piket;

return (double) total / piket.length;


}

public void dalja()


{
System.out.println( "shperndarja:" );

int[] frekuenca = new int[ 11 ];

for ( int piket :piket )


++frekuenca[ piket / 10 ];

for ( int i = 0; i < frekuenca.length; i++ )


{

if ( i == 10 )
System.out.printf( "%5d: ", 100 );
else
System.out.printf( "%02d-%02d: ",
i * 10, i * 10 + 9 );

for ( int yje = 0; yje < frekuenca[ i]; yje++ )


System.out.print( "*" );

System.out.println();
}
}
public void daljaPiket()
{
System.out.println( "Piket jane:\n" );

for ( int student = 0; student < piket.length; student++ )


System.out.printf( "Studenti %2d: %3d\n",
student + 1, piket[ student ] );
}
}
public class Notat
{

public static void main( String[] args )


{

int[] piket = { 87, 68, 94, 100, 83, 78, 85, 91, 76, 87 };

NotatStudente prove = new NotatStudente(


"Programimi i orientuar nga Objekti", piket );
prove.shfaq();
prove.perpuno();
}
}

8. /Nje program per pyetesoret e studenteve


public class PyetesorStudent {

public static void main( String[] args )


{

int[] pergjigje = { 1, 2, 5, 4, 3, 5, 2, 1, 3, 3, 1, 4, 3, 3, 3,
2, 3, 3, 2, 14 };
int[] frekuenca = new int[ 6 ];

for ( int i = 0; i < pergjigje.length; i++ )


{
try
{
++frekuenca[ pergjigje[ i ] ];
}
catch ( ArrayIndexOutOfBoundsException e )
{
System.out.println( e );
System.out.printf( "pergjigje[%d] = %d\n\n",
i, pergjigje[i ] );
}
}

System.out.printf( "%s%10s\n", "Renditja", "Frekuenca" );

for ( int t = 1; t < frekuenca.length; t++ )


System.out.printf( "%6d%10d\n", t, frekuenca[ t ] );
}
}

Detyra:

Të ndërtohet një program i cili ka një klase Person e cila përmban disa variabla private për te
mbajtur gjeneralitetet e një personi (emer, mbiemer, mosha, vendlindja, gjinia). Për te aksesuar këto
variabla qe janë jo publike duhet te thirren metodat publike qe janë pjese e kësaj klase. Kjo klase
gjithashtu mban totalin e te ardhurave për disa detyra te ndryshme qe ka realizuar ky person si dhe
një metode qe llogarit se sa duhet te jene taksat qe duhet te paguaj vete personi qe është 10% e te
ardhurave.
Nga klasa e mësipërme duhet te ndërtohen tre nënklasa te tjera qe janë Student, Punëtor dhe
Pensionist qe kane veçoritë e mëposhtme (te përdoret trashëgimia):
1- Student
a. Nuk paguan taksa.
b. Duhet ti përcaktohet emri i universitetit dhe fakultetit.
2- Punëtor
a. Statusi nëse është i punësuar, nëse po vendi i punës
b. Paguan taksa nëse është i punësuar (10 % nëse është i punësuar dhe 5% nëse jo)
3- Pensionist
a. Viti i daljes ne pension
b. Kontrolli nëse i takon te jete pensionist (mosha >=65 për meshkuj dhe >=60 femra)
c. Paguan vetëm 2% taksa për vlerën deri ne 20,000 leke te ardhura.
Cdo klase duhet te kete dhe metoden toString() qe printon vlerat e gjithe fushave te asaj klase dhe te
klases nga e cila eshte trasheguar.
Te ndërtohet një aplikacion qe përdor klasat e mësipërme

public class Person {


private String emer;
private String mbiemer;
private int mosha;
private String vendlindja;
private String gjinia;
private double teardhura;
public Person(String e,String m,int mo,String v,String g,double t)
{
emer=e;
mbiemer=m;
mosha=mo;
vendlindja=v;
gjinia=g;
teardhura=t;
}
public String getEmer()
{ return emer;}
public String getMbiemer()
{ return mbiemer;}
public int getMosha()
{ return mosha; }
public String getVendlindja()
{ return vendlindja;}
public String getGjinia()
{ return gjinia; }
public double getTeardhura()
{ return teardhura;}
public void setEmer(String e)
{ emer=e; }
public void setMbiemer(String m)
{ mbiemer=m; }
public void setMosha(int mo)
{ mosha=mo; }
public void setVendlindja(String v)
{ vendlindja=v; }
public void setGjinia(String g)
{ gjinia=g; }
public void setTeardhura(double t)
{ teardhura=t; }
public double Taksa()
{ return 0.1*teardhura; }
public String toString()
{ return (emer +" "+ mbiemer+ " " + mosha +" "+ vendlindja +" "+ gjinia +"
"+teardhura ); }
}

public class Student extends Person{


String universiteti;
String fakulteti;
public Student(String e,String m,int mo,String v,String g,double t,String
u,String f)
{ super(e,m,mo,v,g,t);
universiteti=u;
fakulteti=f;
}
public double Taksa(){
return 0.0;
}
public String toString()
{ return( super.toString() + " " + universiteti + " "+ fakulteti);
}

public class Punetor extends Person{


boolean status;
String vendpune;
public Punetor(String e,String m,int mo,String v,String g,double t)
{ super(e,m,mo,v,g,t);

}
public boolean getStatus()
{ return status;

}
public void setStatus(boolean st)
{ status=st;

}
public String getVendpune()
{ return vendpune;

}
public void setVendpune(String vp)
{ vendpune=vp;

}
{ if(status)
getVendpune();
}
public double Taksa()
{
if(status)
{ return 0.1*super.getTeardhura(); }
else
{ return 0.05*super.getTeardhura();}
}
public String toString()
{ return( super.toString() +" "+vendpune +" "+ status);
}

public class Pensionist extends Person{


int vitipension;
boolean pensionist;
public Pensionist(String e,String m,int mo,String v,String g,double t,int vp)
{super(e,m,mo,v,g,t);
vitipension=vp;
}
{
if (getGjinia().equals("Femer") && getMosha()>=60 ||
getGjinia().equals("Mashkull") && getMosha()>=65)
pensionist=true;
else pensionist=false;
}
public double Taksa()
{
if ((pensionist)&& super.getTeardhura()<=20.000)
{ return 0.02*super.getTeardhura();
}
else{
return 0.1*super.getTeardhura();}
}
public String toString()
{ return( super.toString() +" "+ pensionist +" "+ vitipension);
}

public class TestPerson {

public static void main(String[] args) {


Person pers=new Person("Ilir","Trimi",40,"Tirane","Mashkull",65.000);
System.out.println(pers.toString());
System.out.println(pers.Taksa());

Student st=new Student("Era","Dita",21,"Vlore","Femer",15.000,


"Universiteti i Tiranes","Bioteknologji");
System.out.println(st.toString());
System.out.println(st.Taksa()+" "+ "Studentet nuk kane takse per te ardhurat.");

Punetor pun1=new Punetor("Ermal","Kodra",57,"Fier","Mashkull",47.000);


pun1.setVendpune("Mekanik");
pun1.setStatus(true);
System.out.println(pun1.toString());
System.out.println(pun1.Taksa());
Punetor pun2=new Punetor("Ermir","Lira",39,"Shkoder","Mashkull",24.000);
pun2.setVendpune("Hidraulik");
pun2.setStatus(false);
System.out.println(pun2.toString());
System.out.println(pun2.Taksa());

Pensionist pens1=new Pensionist("Liri","Mali",68,"Durres","Femer",18.500,1986);


System.out.println(pens1.toString());
System.out.println(pens1.Taksa());
Pensionist pens2=new
Pensionist("Erlis","Fusha",74,"Tirane","Mashkull",26.000,1971);
System.out.println(pens2.toString());
System.out.println(pens2.Taksa());

}}
Ushtrim 1

Shkruani nje program ne Java qe perzgjedh nga 52 letra bixhozi. Te gjitha letrat te perfaqesohen nga nje
matrice te emertuar deck nga 0 ne 51.

Shenimi: nga 0-12 jane letrat Mac (Spades), nga 13-25 jane letrat Kup (Hearts), nga 26-38 jane letrat
Karo (Diamonds), dhe nga 39-51 jane letrat Spathi (Clubs). Cilet funksionet qe do perdoren per te
percaktuar lulen dhe numrin e lertes se perzgjedhur? Ngaterroni letrat, zgjidhni 4 random, dhe afishoni
rezultatin.

public class DeckOfCards {


public static void main(String[] args) {
int[] deck = new int[52];
String[] suits = {"Spades","Hearts","Diamonds","Clubs"};
String[] ranks = {"Ace","2","3","4","5","6","7","8","9",
"10","Jack","Queen","King"};

// Inilizimi i letrave
for(int i = 0; i < deck.length; i++)
deck[i] = i;

// Ngaterrimi i letrave
for(int i = 0; i < deck.length; i++) {
// Generate an index randomly
int index = (int)(Math.random() * deck.length);
int temp = deck[i];
deck[i] = deck[index];
deck[index] = temp;
}

// Afishim i kater letrave te para


for(int i = 0; i < 4; i++) {
String suit = suits[deck[i] / 13];
String rank = ranks[deck[i] % 13];
System.out.println("Card number "+ deck[i] + ": "
+ rank + " of "+ suit);
}
}
}

Ushtrim 2

Shkruani nje program qe ilustron dallimin midis swap me variabla dhe swap me vektor

public class TestPassArray {


public static void main(String[] args) {
int[] a = {1,2};

// Shkembe nepermjet metodes swap


System.out.println("Para shkembimit");
System.out.println("vektori eshte {"+ a[0] + ", "+ a[1] + "}");
swap(a[0], a[1]);
System.out.println("Pas shkembimit");
System.out.println("vektori eshte {"+ a[0] + ", "+ a[1] + "}");

// Shkembe nepermjet swapFirstTwoInArray method


System.out.println("Para shkembimit swapFirstTwoInArray");
System.out.println("eshte {"+ a[0] + ", "+ a[1] + "}");
swapFirstTwoInArray(a);
System.out.println("Pas shkembimit swapFirstTwoInArray");
System.out.println("eshte {"+ a[0] + ", "+ a[1] + "}");
}

/** Shkembim i vlerave te variablave */


public static void swap(int n1, int n2) {
int temp = n1;
n1 = n2;
n2 = temp;
}

/** Shkemben dy elementet e pare te matrices */


public static void swapFirstTwoInArray(int[] array) {
int temp = array[0];
array[0] = array[1];
array[1] = temp;
}
}

Ushtrim 3

Shkruani nje program ne java qe gjeneron nje matrice me shkronja te vogla ne menyre te rastesishme
dhe numeron shpeshtine e seciles shkronje. Ne fund afishoni rezultatin
package RandomCharacter;

public class RandomCharacter {


public static char getRandomCharacter(char ch1, char ch2) {
return(char)(ch1 + Math.random() * (ch2 - ch1 + 1));
}
public static char getRandomLowerCaseLetter() {
return getRandomCharacter('a','z');
}

public static char getRandomUpperCaseLetter() {


return getRandomCharacter('A','Z');
}

public static char getRandomDigitCharacter() {


return getRandomCharacter('0','9');
}

public static char getRandomCharacter() {


return getRandomCharacter('\u0000','\uFFFF');
}
}
import RandomCharacter.RandomCharacter;
public class CountLettersInArray {
public static void main(String[] args) {
char[] chars = createArray();

System.out.println("Shkronjat e vogla jane:");


displayArray(chars);

int[] counts = countLetters(chars);

System.out.println();
System.out.println("Frekuenca e shkronjave: ");
displayCounts(counts);
}

public static char[] createArray() {


char[] chars = new char[100];

for(int i = 0; i < chars.length; i++)


chars[i] = RandomCharacter.getRandomLowerCaseLetter();

return chars;
}

public static void displayArray(char[] chars) {


for(int i = 0; i < chars.length; i++) {
if((i + 1) % 20== 0)
System.out.println(chars[i]);
else
System.out.print(chars[i] + " ");
}
}
public static int[] countLetters(char[] chars) {
int[] counts = new int[26];

for(int i = 0; i < chars.length; i++)


counts[chars[i] - 'a']++;

return counts;
}

public static void displayCounts(int[] counts) {


for(int i = 0; i < counts.length; i++) {
if((i + 1) % 10== 0)
System.out.println(counts[i] + " "+ (char)(i + 'a'));
else
System.out.print(counts[i] + " "+ (char)(i + 'a') + " ");
}
}
}

You might also like