java

 avatar
unknown
java
a year ago
4.6 kB
6
Indexable

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