Laboratoare Java

Previzualizare laborator:

Extras din laborator:

Câmpurile obligatorii:

- un câmp de tip intreg (int), pentru păstrarea numărul de etaje la fiecare casa;

- un cimp de tip intreg pentru pastrarea nr apartamentelor pe etaj;

- o matrice dinamica, în care se păstrează informaţia despre nr de locuitori in fiecare apartament.

De creat trei tipuri de constructori pentru această clasă (cu alocare dinamică a memoriei):

- constructor standard (fără parametri)

- câteva constructori cu parametri

- constructor de copiere

De creat metodele pentru acces la toate câmpurile clasei şi de modificare a lor.

De creat metoda pentru a afişa la ecran toată informaţia despre casa, adică toate câmpurile din această clasă.

De creat metoda, ce face mutarea in totalitate a unei case in alta casa. Deasemenea fiecare apartament al casei cu toti locatarii se muta in apartamentul corespunzator celeilalte case, apelind functia data. Functia lucreaza numai in cazul in care casa este in intregime liber(adica fara locatari).

De creat metoda, care calculează numărul sumar de locuitori.

În metoda main() de creat(construit) case, utilizând toţi constructorii declaraţi. După creerea fiecărei instantze a clasei “casa”, de afişat la ecran câmpurile cu ajutorul metodei respective, deasemenea de apelat functia ce numara nr total de locuitori a fiecarei case. Rezultatele de afişat la ecran. Deasemenea de mutat citeva case in alte case si afisate la ecran componenta caselor relocuite. Mai apoi de numarat toti locuitorii in casele construite. Rezultatele de afişat la ecran.

Listing (cod) a programului:

import java.io.*;

class Casa

{

String adr;

int nr_etaje;

int nr_ap_etaj;

int loc_ap[][];

static int nr_case;

Casa() throws IOException

{

BufferedReader s= new BufferedReader(new InputStreamReader(System.in));

System.out.print("nIntrodu adresa: ");

adr = s.readLine();

System.out.print("Introdu numarul de etaje: ");

nr_etaje = Integer.parseInt(s.readLine());

System.out.print("Introdu numarul de apartamente pe etaj: ");

nr_ap_etaj = Integer.parseInt(s.readLine());

loc_ap = new int[nr_etaje][nr_ap_etaj];

for(int i=0; i<nr_etaje; i++)

for(int j=0; j<nr_ap_etaj; j++)

{ System.out.print("Introdu nr de locuitori in ap " +(j+1));

System.out.println(" etajul " +(i+1));

loc_ap[i][j]= Integer.parseInt(s.readLine());}

nr_case++;

}

Casa(String adresa, int nr_etaje)

{

adr=adresa;

this.nr_etaje=nr_etaje;

nr_ap_etaj=4;

loc_ap=new int [nr_etaje][nr_ap_etaj];

for(int i=0; i<nr_etaje; i++)

for(int j=0; j<nr_ap_etaj; j++)

loc_ap[i][j]=3;

nr_case++;

}

Casa(Casa Centru)

{

adr=Centru.adr;

nr_etaje=Centru.nr_etaje;

nr_ap_etaj=Centru.nr_ap_etaj;

loc_ap=new int [nr_etaje][nr_ap_etaj];

for(int i=0; i<nr_etaje; i++)

for(int j=0; j<nr_ap_etaj; j++)

loc_ap[i][j]=Centru.loc_ap[i][j];

nr_case++;

}

public int getloc_ap(int x,int y) {

if ((x>=0 && x<nr_etaje) && (y>=0 && y<nr_ap_etaj))

return loc_ap[x][y];

else return -1;

}

public void setloc_ap(int i,int j,int x){

if ( i>=0 && i<nr_etaje && j>=0 && j<nr_ap_etaj && x>0 && x<10)

loc_ap[i][j]=x;

}

public String getadr(){

return adr;

}

public void setadr(String adr){

this.adr = adr;

}

public int getnr_etaje(){

return nr_etaje;

}

public void setnr_etaje(int nr_etaje){

if (nr_etaje>0)

{this.nr_etaje = nr_etaje;

loc_ap = new int[nr_etaje][nr_ap_etaj]; };

Observații:

UNIVERSITATEA DE STAT DIN MOLDOVA

FACULTATEA MATEMATICĂ ŞI INFORMATICĂ

CATEDRA „TEHNOLOGII DE PROGRAMARE”

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • java1.doc
  • java2.doc
  • java3.doc
  • java4.doc
  • java5.doc.doc
Alte informații:
Tipuri fișiere:
doc
Nota:
9/10 (2 voturi)
Nr fișiere:
5 fisiere
Pagini (total):
35 pagini
Imagini extrase:
45 imagini
Nr cuvinte:
5 449 cuvinte
Nr caractere:
35 603 caractere
Marime:
217.70KB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Laborator
Domeniu:
Limbaje de Programare
Predat:
la facultate
Materie:
Limbaje de Programare
Profesorului:
Marin M.
Sus!