/**
 * Razred, ki predstavlja osnovne podatke o cesti.
 * Vključuje informacije o imenu, dolžini in materialu ceste ter natančne metode za izračun in prikaz podatkov.
 */
public class Cesta {
    private String ime; // Ime ceste
    private double dolzina; // Dolžina ceste v kilometrih
    private String material; // Material ceste (asfalt, makadam, itd.)

    /**
     * Konstruktor za ustvarjanje objekta ceste.
     * 
     * @param ime Ime ceste
     * @param dolzina Dolžina ceste v kilometrih
     * @param material Material ceste (asfalt, makadam, itd.)
     */
    public Cesta(String ime, double dolzina, String material) {
        this.ime = ime;
        this.dolzina = dolzina;
        this.material = material;
    }

    /**
     * Getter za ime ceste.
     * 
     * @return Ime ceste
     */
    public String getIme() {
        return ime;
    }

    /**
     * Setter za ime ceste.
     * 
     * @param ime Ime ceste
     */
    public void setIme(String ime) {
        this.ime = ime;
    }

    /**
     * Getter za dolžino ceste.
     * 
     * @return Dolžina ceste v kilometrih
     */
    public double getDolzina() {
        return dolzina;
    }

    /**
     * Setter za dolžino ceste.
     * 
     * @param dolzina Dolžina ceste v kilometrih
     */
    public void setDolzina(double dolzina) {
        this.dolzina = dolzina;
    }

    /**
     * Getter za material ceste.
     * 
     * @return Material ceste (asfalt, makadam, itd.)
     */
    public String getMaterial() {
        return material;
    }

    /**
     * Setter za material ceste.
     * 
     * @param material Material ceste (asfalt, makadam, itd.)
     */
    public void setMaterial(String material) {
        this.material = material;
    }

    /**
     * Metoda za prikaz osnovnih informacij o cesti, vključno z imenom, dolžino in materialom.
     */
    public void prikaziInformacije() {
        System.out.println("Ime ceste: " + ime);
        System.out.println("Dolžina ceste: " + dolzina + " km");
        System.out.println("Material ceste: " + material);
    }

    /**
     * Metoda za izračunavanje povprečne hitrostne omejitve glede na dolžino ceste.
     * 
     * @return Povprečna hitrostna omejitev (50 km/h za ceste krajše od 10 km, 80 km/h za daljše ceste)
     */
    public double izracunajPovprecnoHitrostnoOmejitev() {
        return dolzina < 10 ? 50 : 80; // Na kratkih cestah manjša hitrostna omejitev
    }
}
