Uživatelské nástroje

Nástroje pro tento web


nahradni_prace_za_cviceni_pro1_17.2.2015

Náhradní práce za cvičení PRO1 17.2.2016

Úkoly:

  1. Do níže uvedené třídy Studenti2 doprogramujte obsah metody porovnejCasy podle instrukcí v kódu.
  2. 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)
  3. Vytvořte v projektu novou třídu Student, která bude mít privátní atributy:
    • jmeno typu String
    • hodina typu int
    • minuta typu int
  4. 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);
        }
    }
 
}
nahradni_prace_za_cviceni_pro1_17.2.2015.txt · Poslední úprava: 2016/02/17 11:29 autor: pavkriz