====== Náhradní práce za cvičení PRO1 17.2.2016 ====== ==== Úkoly: ==== - Do níže uvedené třídy ''Studenti2'' doprogramujte obsah metody ''porovnejCasy'' podle instrukcí v kódu. - Ověřte si změnou hodnot proměnných ''hodina1'', ''minuta1'', ''hodina2'', ''minuta2'', že váš algoritmus porovnává časy správně (nezapomeňte na případ, kdy jsou hodiny shodné a liší se minuty) - Vytvořte v projektu novou třídu ''Student'', která bude mít privátní atributy: * ''jmeno'' typu String * ''hodina'' typu int * ''minuta'' typu int - Ve třídě ''Student'' vytvořte settery a gettery ke všem třem atributům dle zvyklostí Javy Vypracování úkolů bude zkontrolováno na příštím cvičení. ==== Třída Studenti2 ==== package cz.uhk.pro1.studenti; public class Studenti2 { /** * Metoda ("funkce") porovna dva casy zadane v hodinach a minutach a * pokud je prvni cas (hodinaA a minutaA) vetsi nez druhy cas (hodinaB a minutaB), vraci kladne cislo (napr. 1), * pokud je prvni cas (hodinaA a minutaA) mensi nez druhy cas (hodinaB a minutaB), vraci zaporne cislo (napr. -1), * pokud jsou si casy rovny, vraci 0 * * @param hodinaA hodina prvniho casu * @param minutaA minuta prvniho casu * @param hodinaB hodina druheho casu * @param minutaB minuta druheho casu * @return vysledek porovnani (kladne cislo, zaporne cislo nebo 0) */ public static int porovnejCasy(int hodinaA, int minutaA, int hodinaB, int minutaB) { // doplnte kod teto metody tak, aby vracela pomoci return hodnoty -1, 0 nebo 1, podle // specifikace v dokumentacnim komentari vyse } /** * Tato metoda vytiskne "hezky" jmeno studenta a cas prichodu * * @param jmeno * @param hodina * @param minuta */ public static void vytiskniStudenta(String jmeno, int hodina, int minuta) { System.out.println("Student " + jmeno + " přišel v " + hodina + ":" + minuta); } public static void main(String[] args) { System.out.println("Ahoj FIMe"); String jmeno1 = "Pavel Kříž"; int hodina1 = 9; int minuta1 = 20; String jmeno2 = "Tomáš Kozel"; int hodina2 = 10; int minuta2 = 30; // vsimnete si, jak se kod zjednodusil, kdyz jsme logiku pro porovnani casu zapouzdrili do // zvlastni metody; take jsme priklad rozsirili o rozpoznani situace, ze studenti prisli ve stejny cas // volani funkce, predali jsme konkretni hodnoty jejim parametrum a vysledek si ulozili do promenne vysledekPorovnani int vysledekPorovnani = porovnejCasy(hodina1, minuta1, hodina2, minuta2); if (vysledekPorovnani > 0) { System.out.println("Tento student přišel později:"); vytiskniStudenta(jmeno1, hodina1, minuta1); } else if (vysledekPorovnani == 0) { System.out.println("Oba studenti přišli ve stejný čas"); } else { System.out.println("Tento student přišel později:"); vytiskniStudenta(jmeno2, hodina2, minuta2); } } }