Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
po:lab1 [2017/10/12 01:13]
pszwed [Wybór IDE]
po:lab1 [2018/01/24 23:05]
pszwed created
Line 1: Line 1:
-====== Programowanie obiektowe - Laboratorium 1 ====== +xyz
- +
-===== 1.1 Kompilacja i uruchomienia Hello World ===== +
- +
-  * Za pomocą swojego ulubionego edytora utwórz plik HelloWorld.java +
-  * zadeklaruj w nim klasę HelloWorld +
-  * Wpisz wewnątrz funkcję  +
-<code java> +
-public static void main(String[] args) +
-</code> +
-  * W funkcji wypisz: tekst ''Hello World'' --  użyj instrukcji ''System.out.println("tekst")'' +
- +
-Sprawdź czy działają polecenia: +
-  * ''javac'' - kompilator +
-  * ''java'' - maszyna wirtualna +
- +
-Skmpiluj program wywołując  +
-<code> +
-javac HelloWorld.java +
-</code> +
- +
-Co pojawiło się w wyniku kompilacji na dysku? +
- +
-Uruchom program wywołując +
-<code> +
-java HelloWorld +
-</code> +
- +
-===== 1.2 Klasa należąca do pakietu ===== +
- +
-  * Utwórz podkatalog ''lab1'' +
-  * Skopiuj tam plik HelloWorld.java +
-  * Dodaj na początku pliku +
-<code java> +
-package lab1; +
-</code> +
-  * Skompiluj za pomocą ''javac'' +
-  * Spróbuj uruchomić wywołując: +
-    - ''java HelloWorld'' +
-    - ''java lab1/HelloWorld''    +
-    - ''java lab1.HelloWorld''    +
-    - ''java -cp .. lab1.HelloWorld''    +
- +
-Które rozwiązanie zadziałało i z jakiej lokalizacji względem pliku HelloWorld.class? +
-===== 1.3 Proste wejście wyjście ===== +
- +
-**Wyjście** - wypróbuj warianty: +
- +
-<code java> +
-System.out.print("..."+
-System.out.println("..."+
-System.out.printf("String %s int %d double %d",???+
-</code> +
- +
-**Wejście** - wczytywanie danych z konsoli: +
- +
-Zaimportuj klasy ''Scanner'' i ''Locale'' +
- +
-<code java> +
- +
-import java.util.Scanner; +
-import java.util.Locale; +
- +
-public class Main { +
- +
-    public static void main(String[] args) { +
-     ... +
-    } +
-}    +
- +
-</code> +
- +
-Zobacz, jak można wczytać dane +
- +
-<code java> +
-        Scanner scan = new Scanner(System.in); +
-        String s = scan.next(); +
-        int i = scan.nextInt(); +
-        double d = scan.nextDouble(); +
-        System.out.printf("Wczytano %s , %d, %f",s,i,d); +
- +
-</code> +
- +
-Wolisz stosować kropki, jako separator dziesiętny? Zmień locale na ''Locale.US'' +
- +
-<code java> +
-        Scanner scan = new Scanner(System.in).useLocale(Locale.US); +
-        String s = scan.next(); +
-        int i = scan.nextInt(); +
-        double d = scan.nextDouble(); +
-        System.out.printf(Locale.US,"Wczytano %s , %d, %f",s,i,d); +
-</code> +
- +
-''Locale.US'' to stała (zmienna statyczna) zdefiniowana wewnątrz klasy ''Locale''. Kropka ma takie znaczenie, jak operator zasięgu ''::'' w C++.  +
- +
-===== Wybór IDE ===== +
- +
-Netbeans :-) vs. InteliJ  =) vs. Eclipse :-\ +
- +
-  * Osobiście najczęściej używam Netbeans (sprawnie obsługuje kodowanie w Java, C/C++, SQL i PHP, usługi sieciowe, JavaScript, itp.). Rozwijane przez Oracle, bezpłatne. +
-  * InteliJ ma podobną efektywność i funkcjonalność. Praktycznie ten sam produkt jest oficjalnym narzędziem budowy aplikacji dla systemu Android. Dostępna wersja community lub pełna (dla studentów bezpłatna) +
-  * Eclipse jest rozpowszechnione, także jako platforma do budowy samodzielnych aplikacji z GUI. Mam jednak wrażenie, że działa wolno i często "zatyka się", zwłaszcza przy uzupełnianiu kodu (//code completion//). Bezpłatne. +
-===== 1.4 Tworzymy pierwszy projekt w IDE ===== +
- +
-  * Utwórz projekt Lab1 +
-  * Utwórz w nim klasę ''SimpleIO'' umieszczoną w pakiecie ''lab1''. W zależności od IDE - może być konieczne wpierw utworzenie pakietu, a potem klasy +
-  * Przekopiuj tam kod  +
-  * Obserwuj edytor - program jest kompilowany w locie, błędy są zaznaczane, część rutynowych działań mających na celu ich wyeliminowanie można wykonać automatycznie (klikając lub używając kombinacji klawiszy) +
-  * Uruchom (możesz wybrać Run lub Run file) +
- +
-===== 1.5 Druga funkcja main ? ===== +
- +
-Utwórz klasę o nazwie ''Fibo'' i utwórz w niej funkcję ''main()'' +
- +
-Zaimplementuj tam kod umieszczony w funkcji ''main()'', który  +
-  * wczytuje liczbę całkowitą ''n'' z zakresu 1 - 45 (dla liczb spoza zakresu wychodzi z funkcji ''main''+
-  * deklaruje tablicę (czytaj: deklaruje zmienną ''tab'' i tworzy tablicę na stercie) ''int[] tab = new int[n]'' +
-  * wypełnia ją wartościami ciągu Fibbonaciego +
-  * Wypisuje elementy tablicy +
- +
-Uruchom program za pomocą opcji Run File +
- +
- +
-===== 1.6 Trzecia funkcja main? Problem 610A ===== +
- +
-  *Dodaj do projektu klasę ''Problem610A'' +
-  *Przeczytaj opis zadania na stronie [[http://codeforces.com/problemset/problem/610/A]] +
-  *Zaimplementuj... +
-  *Sprawdź działanie dla opublikowanych przykładów +
-  *Opcjonalnie: załóż konto i prześlij kod do wykonania w chmurze. Sprawdź, czy przeszedł wszystkie testy? +
- +
-===== 1.7 I jeszcze czwarta. Problem 115A ===== +
- +
-  *Dodaj do projektu klasę ''Problem115A'' +
-  *Przeczytaj opis zadania na stronie [[http://codeforces.com/problemset/problem/115/A]] +
-  * Podobnie, jak poprzednio zaimplementuj i przetestuj +
- +
- +
- +
- +
- +
po/lab1.txt · Last modified: 2018/10/11 12:45 by pszwed
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0