Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package zad2;
- import java.util.Date;
- /**
- *
- * @author Jovanovski
- */
- public class Iznajmuvanje {
- public String iziznajmuvach;
- public Date pocetok, kraj;
- public double cenaPoDen;
- public Iznajmuvanje(String iziznajmuvach, Date pocetok, Date kraj, double cenaPoDen) {
- this.iziznajmuvach = iziznajmuvach;
- this.pocetok = pocetok;
- this.kraj = kraj;
- this.cenaPoDen = cenaPoDen;
- }
- public double vkCena(){
- int denovi = (int)( (kraj.getTime() - pocetok.getTime()) / (1000 * 60 * 60 * 24));
- return denovi*cenaPoDen;
- }
- public boolean daliKraj(Date d1){
- if(d1.equals(kraj)) return true;
- return false;
- }
- public void pecati(){
- System.out.println("Iznajmuvac: "+iziznajmuvach+" Pocetok: "+pocetok+" Kraj: "+kraj+" Cena po den: "+ cenaPoDen+"\n");
- }
- }
- package zad2;
- import java.util.Date;
- /**
- *
- * @author Jovanovski
- */
- public class IznajmuvanjeAvtomobil extends Iznajmuvanje{
- private String model;
- private double konjskiSili;
- public IznajmuvanjeAvtomobil(String model, double konjskiSili, String iziznajmuvach, Date pocetok, Date kraj, double cenaPoDen) {
- super(iziznajmuvach, pocetok, kraj, cenaPoDen);
- this.model = model;
- this.konjskiSili = konjskiSili;
- }
- @Override
- public double vkCena(){
- int denovi = (int)( (super.kraj.getTime() - super.pocetok.getTime()) / (1000 * 60 * 60 * 24));
- if(konjskiSili>70)
- return denovi*super.cenaPoDen+1000;
- else
- return denovi*super.cenaPoDen;
- }
- @Override
- public boolean daliKraj(Date d1){
- if(d1.equals(super.kraj)) return true;
- return false;
- }
- @Override
- public void pecati(){
- System.out.println("Iznajmuvac: "+super.iziznajmuvach+" Pocetok: "+super.pocetok+" Kraj: "+super.kraj+" Cena po den: "+ super.cenaPoDen+" Model: "+model+"Konjski sili: "+konjskiSili+"\n");
- }
- }
- package zad2;
- import java.util.Date;
- /**
- *
- * @author Jovanovski
- */
- public class IznajmuvanjeStan extends Iznajmuvanje {
- private double Kvadrati;
- public IznajmuvanjeStan(double Kvadrati, String iziznajmuvach, Date pocetok, Date kraj, double cenaPoDen) {
- super(iziznajmuvach, pocetok, kraj, cenaPoDen);
- this.Kvadrati = Kvadrati;
- }
- @Override
- public double vkCena(){
- int denovi = (int)( (super.kraj.getTime() - super.pocetok.getTime()) / (1000 * 60 * 60 * 24));
- return denovi*super.cenaPoDen+(Kvadrati*50);
- }
- @Override
- public boolean daliKraj(Date d1){
- if(d1.equals(super.kraj)) return true;
- return false;
- }
- @Override
- public void pecati(){
- System.out.println("Iznajmuvac: "+super.iziznajmuvach+" Pocetok: "+super.pocetok+" Kraj: "+super.kraj+" Cena po den: "+ super.cenaPoDen+" Kvadrati: "+Kvadrati+"\n");
- }
- }
- package zad2;
- import java.util.Date;
- /**
- *
- * @author Jovanovski
- */
- public class Agencija {
- public int brnaiznajmuvanja = 0;
- private Iznajmuvanje niza[];
- public Agencija() {
- niza = new Iznajmuvanje[20];
- }
- public void dodadiIznajmuvanje(Iznajmuvanje a) {
- niza[brnaiznajmuvanja] = a;
- brnaiznajmuvanja++;
- System.out.println("Dodadov!");
- }
- public void listajIznajmuvanja() {
- for (int i = 0; i < brnaiznajmuvanja; i++) {
- niza[i].pecati();
- }
- System.out.println("Listav!");
- }
- public void listajIznajmuvanjaAvtomobil() {
- for (int i = 0; i < brnaiznajmuvanja; i++) {
- if (niza[i] instanceof IznajmuvanjeAvtomobil) {
- niza[i].pecati();
- }
- }
- }
- public void listajIznajmuvanjaStan() {
- for (int i = 0; i < brnaiznajmuvanja; i++) {
- if (niza[i] instanceof IznajmuvanjeStan) {
- niza[i].pecati();
- }
- }
- }
- public void listajIznajmuvanjaDo(Date d1) {
- for (int i = 0; i < brnaiznajmuvanja; i++) {
- if (niza[i].kraj.before(d1)) {
- niza[i].pecati();
- }
- }
- }
- public double vratiVkupenProfit() {
- double profit = 0;
- for (int i = 0; i < brnaiznajmuvanja; i++) {
- profit+=niza[i].vkCena();
- }
- return profit;
- }
- }
- package zad2;
- import java.util.Date;
- import java.util.Scanner;
- /**
- *
- * @author Jovanovski
- */
- public class Test {
- public static void main(String[] args) {
- Scanner input = new Scanner(System.in);
- Agencija a = new Agencija(); //se kreira ovjekt od klasata Agencija
- System.out.print("Simulacija na agencija na deneshen den...");
- System.out.print("Vnesete datum: ");
- int datum = input.nextInt();
- System.out.print("Vnesete mesec: ");
- int mesec = input.nextInt();
- System.out.print("Vnesete godina: ");
- int godina = input.nextInt();
- long time = Date.UTC(godina, mesec, datum, 0, 0, 0);
- Date pocetok = new Date(time);
- int izbor, podizbor;
- do {
- System.out.println("1.Dodadi iznajmuvanje");
- System.out.println("2.Listaj site");
- System.out.println("3.Listaj avtomobili");
- System.out.println("4.Listaj stanovi");
- System.out.println("5.Listaj iznajmuvanja do datum");
- System.out.println("6.Pecati vkupen profit");
- System.out.println("7.Kraj");
- System.out.print("Vashtiot izbor e: ");
- izbor = input.nextInt();
- switch (izbor) {
- case 1:
- if(a.brnaiznajmuvanja<=20){
- System.out.print("Vnesete iznajmuvach: ");
- input.nextLine();
- String iznajmuvach = input.nextLine();
- System.out.print("Vnesete datum: ");
- datum = input.nextInt();
- System.out.print("Vnesete mesec: ");
- mesec = input.nextInt();
- System.out.print("Vnesete godina: ");
- godina = input.nextInt();
- Date kraj = new Date(godina, mesec, datum);
- System.out.print("Vnesete cena po den: ");
- double cenaPoDen = input.nextDouble();
- do {
- System.out.println("1. Avtomogil?");
- System.out.println("2.Stan?");
- System.out.println("3.Ostanato?");
- System.out.print("Vashtiot izbor e: ");
- podizbor = input.nextInt();
- } while (podizbor != 1 && podizbor != 2 && podizbor != 3);
- switch (podizbor) {
- case 1:
- System.out.print("Vnesete model: ");
- input.nextLine();
- String model = input.nextLine();
- System.out.print("Vnesete broj na konjski sili: ");
- double konjSili = input.nextDouble();
- a.dodadiIznajmuvanje(new IznajmuvanjeAvtomobil(model, konjSili,iznajmuvach,pocetok, kraj, cenaPoDen));
- break;
- case 2:
- System.out.print("Vnesete ja kvadraturata: ");
- double kvadrati = input.nextDouble();
- a.dodadiIznajmuvanje(new IznajmuvanjeStan(kvadrati, iznajmuvach,pocetok, kraj, cenaPoDen));
- break;
- case 3:
- a.dodadiIznajmuvanje(new Iznajmuvanje(iznajmuvach, pocetok, kraj, cenaPoDen));
- break;
- }
- }
- else{
- System.out.println("Vekje se napraveni maksimalni 20 iznajmuvanja!");
- }
- break;
- case 2:
- a.listajIznajmuvanja();
- break;
- case 3:
- a.listajIznajmuvanjaAvtomobil();
- break;
- case 4:
- a.listajIznajmuvanjaStan();
- break;
- case 5:
- System.out.print("Vnesete datum: ");
- datum = input.nextInt();
- System.out.print("Vnesete mesec: ");
- mesec = input.nextInt();
- System.out.print("Vnesete godina: ");
- godina = input.nextInt();
- Date d = new Date(godina, mesec, datum);
- a.listajIznajmuvanjaDo(d);
- break;
- case 6:
- System.out.println("Profit: "+a.vratiVkupenProfit());
- break;
- }
- } while (izbor != 7);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment