java
public class Kompanija { private String naziv; private int godinaOsnivanja; private int maxBrojTel; private String[] nizBrojevaTel; public String getNaziv() { return naziv; } public void setNaziv(String naziv) { if(naziv.isEmpty() || naziv.equals("")) { System.out.println("Naziv ne smije biti prazan, postavljen default naziv"); this.naziv = "default"; return; } this.naziv = naziv; } public int getMaxBrojTel() { return maxBrojTel; } public void setMaxBrojTel(int maxBrojTel) { if(maxBrojTel < 3) { System.out.println("Max broj ne smije biti ispod 3, postavljen default 3"); this.maxBrojTel = 3; return; } this.maxBrojTel = maxBrojTel; } public Kompanija(String naziv, int godinaOsnivanja, int maxBrojTel) { super(); this.naziv = naziv; this.godinaOsnivanja = godinaOsnivanja; this.maxBrojTel = maxBrojTel; nizBrojevaTel = new String[maxBrojTel]; } public void prikazi() { System.out.println("Naziv: " + naziv); System.out.println("Godina osnivanja: " + godinaOsnivanja); System.out.println("Max broj telefona: " + maxBrojTel); System.out.println("=-=-=-=-=-=-=-=-=-="); for(int i = 0; i < maxBrojTel; i++) { System.out.println(nizBrojevaTel[i]); } } public void prosjek(int godina) { int br = 0; for(int i = 0; i < maxBrojTel; i++) { if(nizBrojevaTel[i] != null) { br++; } int godinaPostojanja = godina - godinaOsnivanja; double rezultat = br / godinaPostojanja; System.out.println("Prosjecno je " + rezultat + ", a cijeli broj je " + (int) rezultat); } } public void proracunajTelMreze() { int telekom = 0; int mtel = 0; int telenor = 0; for(int i = 0; i < maxBrojTel; i++) { if(nizBrojevaTel[i] != null) { if(nizBrojevaTel[i].startsWith("067")) { telekom++; } if(nizBrojevaTel[i].startsWith("068")) { mtel++; } if(nizBrojevaTel[i].startsWith("069")) { telenor++; } System.out.println("Proracun tel mreza: "); System.out.println("Telekom: " + telekom); System.out.println("Mtel: " + mtel); System.out.println("Telenor: " + telenor); } } } public String brojevi(){ String s = ""; for(int i = 0; i < maxBrojTel; i++) { if(nizBrojevaTel[i] != null) { s = s + nizBrojevaTel[i].substring(3); } } return s; } public String[] istiBrojevi(){ String s[] = new String [maxBrojTel]; for(int i = 0; i < maxBrojTel; i++) { if(nizBrojevaTel[i] != null) { String f = nizBrojevaTel[i].substring(3); if(f.contains("67") || f.contains("68") || f.contains("69")) { s[i] = nizBrojevaTel[i]; } } } /* * DA BI DOBIO REZULTAT U MAIN MORAS NAPRAVIT * String[] result = k1.istiBrojevi(); * * // Now you can work with the 'result' array * // For example, print each element: * for (int i = 0; i < result.length i++) { * if (result[i] != null) { * System.out.println(result[i]); * } * * * * */ return s; } public int palindrom() { int br = 0; for (int i = 0; i < nizBrojevaTel.length; i++) { boolean isPalindrome = true; // Petlja provjerava je li trenutni broj palindrom for (int j = 0; j < nizBrojevaTel[i].length() / 2; j++) { if (nizBrojevaTel[i].charAt(j) != nizBrojevaTel[i].charAt(nizBrojevaTel[i].length() - j - 1)) { isPalindrome = false; break; // Ako se pronađe nejednakost, nije potrebno dalje provjeravati, prekidamo petlju } } // Ako trenutni broj nije palindrom, povećavamo brojač if (!isPalindrome) { br++; } } return br; } public void zamijeni(int pozicija) { if (pozicija < 0 || pozicija >= nizBrojevaTel.length) { // Provjeravamo je li pozicija izvan granica niza System.out.println("Pozicija nije validna."); return; } // Spremamo telefonski broj na poziciji 'pozicija' String zamjena = nizBrojevaTel[pozicija]; // Pomjeramo sve brojeve unazad za jedno mjesto, počevši od pozicije 'pozicija' prema početku niza for (int i = pozicija; i > 0; i--) { nizBrojevaTel[i] = nizBrojevaTel[i - 1]; } // Postavljamo telefonski broj 'zamjena' na početak niza nizBrojevaTel[0] = zamjena; } }
Leave a Comment