Documente Academic
Documente Profesional
Documente Cultură
Studiul individual
Nr. 1
Programarea Orientată pe
Obiecte
POO
import java.util.Scanner;
class Carte { // clasa Carte
public int Id; // id cartii
public String Denumire; // denumirea cartii
public String Autor; // autorul cartii
public String Editura; // editura cartii
Carte(int Id,String Denumire,String Autor,String Editura) {
// constructorul clasei cu parametrii necesari
this.Id=Id;
this.Denumire=Denumire;
this.Autor=Autor;
this.Editura=Editura;
}
public static void main (String [] args) {
try {
FileWriter file = new FileWriter (“carte.txt”);
File.write (Carte());
File.write close();}
catch(Eception ex){ex.printstrackTrace();}
try {
FileReader lector = new FileRrader (“carte.txt”);
BufferedReader BR = new BufferedReader(lector);
System.out.printl(BR.readline());}
catch(Exception ex){ex.printStackTrace();}
}
public void afisare() { // metoda care afiseaza unele
date despre carte
System.out.println("ID:"+Id);
System.out.println("Denumire:"+Denumire);
System.out.println("Autor:"+Autor);
System.out.println("Editura:"+Editura);
}
}
class DateCarte extends Carte { // clasa DateCarte care
mosteneste datele din clasa Carte
public int AnEditie; // anul editarii cartii
public int NumarPagini; // numarul de pagini
public int Pret; // pretul cartii
public String TipCoperta; // tipul copertei
DateCarte(int Id,String Denumire,String Autor,String Editura,int
AnEditie,int NumarPagini,int Pret,String TipCoperta) { // constructorul
clasei cu parametrii necesari
super(Id,Denumire,Autor,Editura); // mostenim datele din
clasa Carte
this.Id=Id;
this.Denumire=Denumire;
this.Autor=Autor;
this.Editura=Editura;
this.AnEditie=AnEditie;
this.NumarPagini=NumarPagini;
this.Pret=Pret;
this.TipCoperta=TipCoperta;
}
Centrul de Excelență în Informatică li Tehnologii Informaționale
System.out.println("################################################");
}
}
public class SetCarti {
public static void afisareCarte(DateCarte[] carte) {
// metoda ce afiseaza la ecran toate cartile
for(int i=0;i<carte.length;i++) {
carte[i].afisare(); // apelam metoda de
afisare din clasa DateCarte
}
}
public static void autor(DateCarte[] autor) { //
metoda ce afiseaza lista cartilor unui autor anumit
Scanner cin=new Scanner(System.in); // declara un
obiect de tip Scanner
String a; // declaram variabila a care va fi
numele autorului introdus
System.out.println("Introduceti autorul:");
a=cin.next(); // introducem numele autorului
System.out.println("Lista cartilor cu autorul "+a);
for(int i=0;i<autor.length;i++) {
if(autor[i].Autor.equals(a)) { // daca
conditia va fi adevarata
autor[i].afisare(); // se va apela
metoda de afisare
}
}
}
public static void editura(DateCarte[] edit) { //
metoda ce va afisa lista cartilor de o anumita editura
Scanner cin=new Scanner(System.in); // cream un
obiect de tip Scanner
String editura; // variabila care va servi ca
numele editurii pe care o vom introduce
System.out.println("Introduceti editura:");
editura=cin.next(); // introducem editura
for(int i=0;i<edit.length;i++) {
if(edit[i].Editura.equals(editura)) {
// daca conditia va fi adevarata
edit[i].afisare(); // se va apela
metoda de afisare
}
}
}
Centrul de Excelență în Informatică li Tehnologii Informaționale
System.out.println("ID:");
int id=cin.nextInt(); // introducem id cartii
System.out.println("Denumire:");
String denum=cin.next(); // introducem denumirea
cartii
System.out.println("Autor:");
String autor=cin.next(); // introducem autorul
cartii
System.out.println("Editura:");
String editura=cin.next(); // introducem editura
cartii
System.out.println("Anul editarii cartii:");
int an=cin.nextInt(); // introducem anul
editarii cartii
System.out.println("Numarul de pagini:");
int pag=cin.nextInt(); // introducem numarul
de pagini
System.out.println("Pret:");
int pret=cin.nextInt(); // introducem
pretul cartii
System.out.println("Tipul copertei:");
String tip=cin.next(); // introducem tipul
copertei
carte[i]=new
DateCarte(id,denum,autor,editura,an,pag,pret,tip);
}
int a;
do {
// meniul programului
System.out.println("1.Afișarea datelor colectate;");
System.out.println("2.Afișarea listei cărților unui autor
anumit;");
System.out.println("3.Afișarea listei cărților unei edituri
anumite;");
System.out.println("4.Afișarea numărului de cărți ce au
numărul de pagini mai mare ca 500;");
System.out.println("5.Afișarea listei cărților editate după
un an anumit;");
System.out.println("6.Afișarea listei cărților ce au preț
mai mic de 200 lei. \n");
System.out.println("Alegeti o optiune:");
a=cin.nextInt(); // introducem o optiune din
meniu
switch(a) {
case 1: afisareCarte(carte); break; // se va apela
metoda de afisare
case 2: autor(carte); break; // se va apela metoda
ce afiseaza lista cartilor editate de un autor
case 3: editura(carte); break; // se va apela
metoda ce va afisa lista cartilor de o anumita editura
case 4: numcarti(carte); break; // se va apela
metoda ce va afisa numarul de carti ce au mai mult de 500 de pagini
case 5: editan(carte); break; // se va apela
metoda ce va afisa lista cartilor editate dupa un an anumit
Centrul de Excelență în Informatică li Tehnologii Informaționale
P.S. Îmi cer iertare că nu pot demonstra prin fotografii cum merge programul, căci
programul ,,eclipse” mi s-a blocat și trebuie să găsesc o soluție. Mulțumesc
anticipat pentru atenție și înțelegere.