Programovanie (2) v Jave
1-INF-166, LS 2017/18

Úvod · Pravidlá · Prednášky · Netbeans · Testovač · Test a skúška
· Vyučujúcich môžete kontaktovať pomocou e-mailovej adresy E-prg.png (bude odpovedať ten z nás, kto má príslušnú otázku na starosti alebo kto má práve čas).
· DÚ10 je zverejnená, odovzdávajte do stredy 16.5. 22:00.
· Bonusový projekt odovzdávajte do pondelka 21.5. 22:00 na testovači. Predvádzanie projektov bude po prvom termíne skúšky v stredu 23.5. (t.j. začneme medzi 11:45 a 12:00 v H6). Ak vtedy nemôžete prísť, kontaktujte vyučujúce, dohodneme iný termín.
· Opravný/náhradný test bude v pondelok 28.5. o 10:00 v F1-108. V prípade záujmu sa prihláste v AISe.
· Na termíny skúšok sa zapisujte v AIS. Termíny: streda 23.5. (riadny), štvrtok 7.6. (riadny alebo 1. opravný), streda 20.6. (1. alebo 2. opravný) plus v prípade potreby ešte jeden termín v poslednom týždni skúškového. Prípadné konflikty nám dajte vedieť čím skôr. Ďalšie informácie na stránke Test a skúška.


Cvičenia 13

Z Programovanie
Prejsť na: navigácia, hľadanie

Cieľom dnešného cvičenia je vyskúšať si prácu v Jave, precvičiť si prácu s poliami, vstupom a výstupom a odovzdať malý bonusový príklad na testovač

  • Na testovačí máte to isté heslo ako minulý semester. Ak si ho nepamätáte, povedzte cvičiacim alebo napíšte na prog@fmph.uniba.sk
  • Bonusový príklad môžete robiť do 22:00 (v budúcnosti môžu byť prípadné bonusové príklady limitované na dobu cvičenia)

Budúci týždeň bude na začiatku cvičenia rozcvička z tohtotýždňového učiva

Príklad 1: Spúšťanie programu Hello world

Skúste spustiť program Hello world v Netbeans, na príkazovom riadku alebo v inom prostredí

V Netbeans

Vytvorenie projektu:

  • V menu zvolíme New Project
  • Na prvej obrazovke zvolíme Categories: Java a Projects: Java Application
  • Na ďalšej obrazovke Project name: hello a Create Main Class: hello.Hello
  • Do súboru Hello.java napíšeme text:
 
package hello;

public class Hello {

    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
  • Potom spúšťame podobne ako program v jazyku C++

V Linuxe na príkazovom riadku

Ak chcete Javu skúsiť bez použitia Netbeans:

  • Vytvoríme adresár hello, v ňom súbor Hello.java s rovnakým obsahom ako vyššie
  • Kompilácia javac hello/Hello.java (vznikne súbor hello/Hello.class)
  • Spustenie java hello.Hello
  • Pozor, meno adresára musí sedieť s menom balíčka (hello), meno súboru s menom triedy (Hello)
  • Ak vynecháme riadok package hello, môžeme mať súbor Hello.java priamo v aktuálnom adresári.

Príklad 2: Matice a vstup v Jave

Príklad 3: Práca so súbormi

  • Napíšte program, ktorý načítava súbor vstup.txt znak po znaku pomocou funkcie read triedy BufferedReader a kopíruje ho do súboru vystup.txt
  • Program si sami otestujte - skúste meniť obsah vstupného súboru a skontrolujte výstupný.
  • Potom program zmeňte tak, aby keď ide vo vstupe niekoľko rovnakých znakov za sebou, vypíšete z nich iba jeden. Takže napr. pre vstup aabbbccdaa vypíše abcda

Príklad 3: Náhodné čísla

  • Pozrite si dokumentáciu k triede Random v balíčku java.util a napíšte program, ktorý odsimuluje 10 hodov kockou, teda vypíše 10 náhodných celých čísel od 1 po 6.
  • Napíšte program, ktorý odsimuluje 10 hodov nevyváženou mincou, pri ktorej v každom hode s pravdepodobnosťou 80% padne hlava a s pravdepodobnosťou 20% prípadoch padne znak. Pomôcka: Ak sa chceme rozhodovať medzi dvoma vecami s určitou pravdepodobnosťou x, môžeme vygenerovať náhodné desatinné číslo z intervalu [0,1) a ak je toto náhodné číslo menej ako x, zvolíme jednu možnosť a ak viac ako x, zvolíme druhú.