Zadane 1 object Time{ def apply(h1: Int) = new Time(h1); } class Time(private[this] var h:Int) { hour = h; def hour:Int = h; def hour_=(newHour:Int){ if(newHour<0) h=0 else h=newHour; } } Zadanie 2a class Time2(var h:Int, var m:Int){ require(h>=0 && h<24); //h = hour require(m>=0 && m<60); //m = minute def hour:Int = h; def hour_=(newH:Int){ require(newH>=0 && newH < 24); h = newH; } def minute:Int = m; def minute_=(newM:Int){ require(newM>=0 && newM<60); m= newM; } def before(other:Time2):Boolean={ h=0 && h<24); require(m>=0 && m<60); private var minutesAfterMidnight = 60 * h + m; def hour:Int = minutesAfterMidnight / 60; def hour_=(newH:Int){ require(newH>=0 && newH < 24); minutesAfterMidnight = minute + newH * 60 ; } def minute:Int = minutesAfterMidnight % 60 ; def minute_=(newM:Int){ require(newM>=0 && newM<60); minutesAfterMidnight = 60 * hour + newM;//???? } def before(other:Time3):Boolean={ minutesAfterMidnight < other.minutesAfterMidnight; } }