Jezyki i metody programowania WYKŁAD 7 i 8 Baltie system programowania obrazkowego. Dr Bożena Woźna-Szcześniak bwozna@gmail.com Instytut Matematyki i Informatyki Akademia im. Jana Długosza
Slajdy opracowane na podstawie: Baltie 3. podręcznik programowania nie tylko dla dzieci RUDOLF PECINOVSKÝ JIŘÍ VÁCHA 2010-03-19 dr B. Woźna-Szcześniak 2
Baltie - http://www.sgpsys.com/pl/ Twórcą Baltiego jest Czech - Bohumir Soukup. W Czechach i na Słowacji jest bardzo popularny, zarówno mały czarodziej Baltie, jak jego twórca. Historia zaczęła się w roku 1978, kiedy to Bohumir Soukup założył firmę SGP Systems, w której początkowo programował kalkulatory TI-58/59, potem Sinclaire Spectrum, następnie komputery Robotron 1715, SM-5040, a od roku 1985 komputery klasy PC. W 1993 r. stworzył Baltazara - swój pierwszy program do nauki programowania, który był przeznaczony do nauki programowania w języku C. Program uruchamiał się w trybie DOS, algorytm programu zapisywało się w specjalnym diagramie - strukturogramie. Obecnie nie można już kupić licencji programu. Ostatnia wersja: SGP Baltazar 5.05 Profi powstała 1999 r.; 2010-03-19 dr B. Woźna-Szcześniak 3
Baltie Soukup stale myślał o stworzeniu takiego kompilatora, w którym nie trzeba pisać tekstowego kodu. W ten sposób powstał Baltie, choć podobny do Baltazara (mowa o pierwszej wersji - Baltie.2), to jednak całkiem nowy program, w którym w miejsce tekstowych poleceń użyte są polecenia graficzne - ikony. Programowanie polega na układaniu sekwencji poleceń dla Baltiego, a kod źródłowy tworzy się wstawiając odpowiednie elementy graficzne - polecenia i dane. Charakterystyczne również dla Baltiego są bogate "biblioteki danych" - banki z przedmiotami wykorzystywanymi w tworzonych programach. Dzięki nim powstają efektowne multimedialne programy. Możliwości Baltiego są analogiczne jak w Pascalu, Basicu czy C. 2010-03-19 dr B. Woźna-Szcześniak 4
Baltie Zapis programu w Baltiem jest prostszy i krótszy. Baltie ma także więcej możliwości pracy z animacjami i multimediami niż inne klasyczne języki programowania. Baltie używa struktur języków C, C++, Java, JavaScript. Baltie jest nowoczesnym narzędziem edukacyjnym do programowania dla dzieci, młodzieży, dorosłych - praktycznie od 9 roku życia. Dzięki Baltie uczeń, w prostszy i bardziej zrozumiały sposób może poznać podstawowe struktury, funkcje i polecenia popularnych języków programowania. Obecnie dostępne są następujące wersje programu: Baltie 2 (pierwsza wersja - dosowa) i Baltie 3.7 - obie w języku polskim oraz najnowsza wersja Baltie korzystająca z grafiki 3D - Baltie 4.NET (w języku czeskim i angielskim). 2010-03-19 dr B. Woźna-Szcześniak 5
Baltie wersje programu BALTIE 2 to program dla dzieci w wieku przedszkolnym Wymagania sprzętowe: komputer z procesorem 486, 16 MB RAM, VGA i system Windows 95 lub komputer, na którym działa tylko system operacyjny DOS 2010-03-19 dr B. Woźna-Szcześniak 6
Baltie wersje programu BALTIE 3 - program dla uczniów szkoły podstawowej i gimnazjum. Wymagania sprzętowe: PC Pentium, 32 MB RAM, SVGA High Color (16 bit), 40 MB HD wolnej przestrzeni na dysku twardym, system operacyjny Windows 9x/ME/NT/2000/XP/7 2010-03-19 dr B. Woźna-Szcześniak 7
Baltie wersje programu BALTIE 4 C# Pro - program dla uczniów szkoły ponadgimnazjalnej i studentów Wymaganie sprzętowe: PC Pentium 1.5 GHz, 256 MB RAM, karta graficzna do generowania grafiki 3D kompatybilna z DirectX 9.0c, 70 MB wolnej przestrzeni na dysku twardym, system operacyjny Windows 2000/XP/Vista/7 2010-03-19 dr B. Woźna-Szcześniak 8
2010-03-19 dr B. Woźna-Szcześniak 9
Tutor Program Tutor wyjaśnia podstawy pracy we wszystkich trybach działania Baltiego. Jeśli komputer jest wyposażony w kartę dźwiękową, można nie tylko zobaczyć wszystko, lecz i posłuchać komentarza. Program Tutor pozwala wypróbować opisywane akcje. Przy tym można częściowo wyobrazić sobie, co znaczy programowanie w Baltiem, bo cały program Tutor jest napisany w Baltiem. 2010-03-19 dr B. Woźna-Szcześniak 10
Tutor Program Tutor można uruchomić następującym sposobem: wydać polecenie Pomoc - Audiowizualny program uczący. Program przedstawi się oknem wstępnym, po którym pojawi się ekran opcji. W tym ekranie program żąda wprowadzenia niektórych informacji dodatkowych. Jeśli nie posiadamy karty dźwiękowej, wybieramy opcję Karta dźwiękowa wyłączona. Wskazujemy myszą na białe okrągłe pole przed symbolem lub opisem wybranej opcji i naciskamy lewy przycisk myszy. Jeśli nie chcemy niczego próbować wybieramy opcję Tylko teoria. Uruchamiamy przycisk OK naciskając lewy przycisk myszy. Przewodnik rozpocznie swoją czynność i można patrzeć na to, co dzieje się na ekranie. 2010-03-19 dr B. Woźna-Szcześniak 11
Baltie tryby pracy Program Baltie może pracować w trzech trybach: Budowanie sceny Czarowanie sceny Programowanie 2010-03-19 dr B. Woźna-Szcześniak 12
Tryb budowania sceny W trybie Budowanie sceny budujemy scenę tylko za pomocą myszy. Na tym poziomie dzieci uczą się używania myszki i klawiatury, poznają środowisko Baltiego, banki przedmiotów, mogą samodzielnie tworzyć własne przedmioty w edytorze graficznym. Poziom ten pozwala dzieciom tworzyć własne sceny z samodzielnie wybieranych przedmiotów z banków. 2010-03-19 dr B. Woźna-Szcześniak 13
Tryb budowania sceny Scena, to przestrzeń, na której tworzymy rysunki, składające się z pojedynczych części, nazywanych przedmiotami. Na scenie mieści się razem 150 przedmiotów dziesięć wierszy po piętnaście przedmiotów. Przedmioty, to małe prostokątne rysunki, które Baltie przechowuje w specjalnych przechowalniach, nazywanych bankami. Każdy bank przechowuje 150 przedmiotów, które są (tak jak w scenie) ułożone do 10 wierszy po 15 przedmiotów. 2010-03-19 dr B. Woźna-Szcześniak 14
Banki przedmiotów Baltie ma dwa rodzaje banków przedmiotów: Systemowe banki przedmiotów: Zapisane do plików z nazwą Baltie. Należą do nich wszystkie banki otrzymane z programem i zawarte w tym samym folderze, w którym są wszystkie pliki programu Baltiego, tzn. w folderze, gdzie zainstalowany jest Baltie; Banki przedmiotów użytkownika: Zapisywane w plikach z nazwą, którą wprowadził użytkownik. Jeśli w trybie Budowanie sceny otworzymy okno Przedmioty, pojawią się w nim banki systemowe i te banki użytkownika, które znajdują się w tym samym folderze i mają tą samą nazwę, jak tworzona scena. 2010-03-19 dr B. Woźna-Szcześniak 15
Banki przedmiotów bank nr 0 i 1 2010-03-19 dr B. Woźna-Szcześniak 16
Banki przedmiotów bank nr 2 i 3 2010-03-19 dr B. Woźna-Szcześniak 17
Banki przedmiotów bank nr 4 i 5 2010-03-19 dr B. Woźna-Szcześniak 18
Banki przedmiotów bank nr 6 i 7 2010-03-19 dr B. Woźna-Szcześniak 19
Banki przedmiotów bank nr 8 i 9 2010-03-19 dr B. Woźna-Szcześniak 20
Banki przedmiotów bank nr 10 i 11 2010-03-19 dr B. Woźna-Szcześniak 21
Banki przedmiotów bank nr 12 i 13 i 51 2010-03-19 dr B. Woźna-Szcześniak 22
Tryb budowania sceny Aby umieścić przedmiot na scenie, należy go najpierw wybrać w banku. Aby dostać się do banku, klikamy na przycisk Przedmioty lub gdzieś na szarą przestrzeń wokół sceny (wskaźnik myszy zmienia się wówczas na siatkę) i otwieramy okno Przedmioty, w którym dostępne są wszystkie banki z jednej grupy. W jednym momencie widzimy tylko jeden bank bieżący. Na dole pod obrazem zawartości bieżącego banku przedmiotów są zakładki z numerami dostępnych banków (tzn. z numerami poszczególnych banków z grupy). 2010-03-19 dr B. Woźna-Szcześniak 23
Tryb budowania sceny Bieżący bank można zmienić dwoma sposobami: kliknięciem na zakładkę z numerem banku, kliknięciem na jeden z przycisków z żółtą strzałką, które można znaleźć w środku szarej przestrzeni. 2010-03-19 dr B. Woźna-Szcześniak 24
Tryb budowanie sceny Po wybieraniu przedmiotu z banku, klikamy na niego myszką i chwytamy. Okno Przedmioty zamka się, my wracamy do sceny, a przedmiot jest ciągle trzymany. Na scenie upuszczamy przedmiot w miejscu, gdzie chcemy go wstawić i znów klikamy. Jeśli przedmiot nie trafi we właściwe miejsce, to wskazujemy na niego, chwytamy go naciśnięciem lewego przycisku myszy i trzymając przycisk przesuwamy przedmiot w pożądane miejsce. Gdy potrzebujemy na scenie ten sam przedmiot w wielu miejscach, wystarczy użyć prawego przycisku myszy, aby go skopiować (na wskaźniku w kształcie ręki pojawi się znak plus). Przedmiot ze sceny usuwamy chwytając go lewym przyciskiem myszy, przesuwając na szarą przestrzeń wokół sceny tak, by na przedmiocie pojawiło się szare przekreślenie i upuszczając go tam. 2010-03-19 dr B. Woźna-Szcześniak 25
Zapisywanie i otwieranie scen Zapisywaniem scen do plików jest możliwe tylko dla tych, którzy pracują z pełną, tzn. rejestrowaną wersją programu. Demo-wersja różni się od pełnej wersji tylko tym, że nie pozwoli nic zapisać. Jeśli chcemy zapisać scenę, należy wprowadzić polecenie Scena - Zapisz jako. Jeśli chcemy otworzyć scenę istniejącą lub utworzyć nową, należy wprowadzić polecenie Scena otwórz/nowa (ctrl+0). 2010-03-19 dr B. Woźna-Szcześniak 26
Tryb - Czarowanie sceny W trybie Czarownie sceny też budujemy scenę, ale teraz za pomocą czarodzieja Baltiego - wydajemy mu polecenia, a on je natychmiast wykonuje. Wygląd okna aplikacji trochę się zmieni: zmniejszy się przycisk Przenieś scenę w części centralnej panelu narzędzi zostaną dwa przyciski ze strzałkami zastąpione trzema przyciskami z figurką czarownika Baltiego. na scenie w lewym dolnym rogu po raz pierwszy pojawia się Baltie mała figurka, która czeka na nasze polecenia. 2010-03-19 dr B. Woźna-Szcześniak 27
Tryb - Czarowanie sceny Baltie potrafi iść do przodu, obrócić się w lewo i w prawo - idzie zawsze w stronę, w którą jest odwrócony. Baltie potrafi wyczarować na najbliższe pole przed sobą przedmiot, który wybierzemy mu z banku przedmiotów (przed nim powinno być pole, nie ściana krawędzi w tym przypadku nie wyczaruje nic). Przedmiot do czarowania wybieramy tak samo, jak w trybie Budowanie sceny. W przypadku, gdy potrzebujemy wyczarować taki sam przedmiot więcej razy, po wyczarowaniu pierwszego przedmiotu pojawi się w panelu narzędzi po prawej stronie przycisku Wyczaruj z wyborem przycisk Wyczaruj z ostatnio wyczarowanym przedmiotem. 2010-03-19 dr B. Woźna-Szcześniak 28
Tryb - Czarowanie sceny Tryb Czarowanie sceny nie jest po to, aby tworzyć skomplikowane sceny, ale po to by dowiedzieć się jakie polecenia można wydawać Baltiemu, by robił to, czego żądamy. W tym trybie możemy zapisać scenę do pliku i z powrotem ją z pliku otworzyć. Postępujemy przy tym dokładnie tak samo, jak w trybie Budowanie sceny. Między pierwszym i drugim trybem można dowolnie przełączać i zapisywać stworzone sceny oraz odtwarzać w którymkolwiek z nich. 2010-03-19 dr B. Woźna-Szcześniak 29
Tryb - Programowanie Programowanie jest najciekawszym trybem Baltiego. W tym trybie można utworzyć dowolne programy i uruchomić klikając polecenie Program-Start (ctrl+f9, zielona strzałka). Można pracować w dwóch trybach: nowicjusz (od 6 do 13 lat) zaawansowany (od 9 do 99 lat) Polecenia dla nowicjuszy znajdują się w dwóch pierwszych wierszach. Są to: polecenie umożliwiające poruszanie Baltiego, czekania, nastawiania mroku dla czarowania i dźwięku, bezpośrednie obrócenia Baltiego, innego sterowania Baltiego, formatowanie programu, cyfry, nawiasy. W trybie zaawansowanym oprócz poleceń z trybu podstawowego dostępne są: polecenia dla liczb rzeczywistych, liczby losowej, praca ze zmiennymi, operacje i wyrażenia matematyczne, literały, liczby ujemne, separator parametrów, współrzędna, kursor tekstowy, ciągi znaków, animacje, odtwarzanie muzyki i płyt audio z CD, wyświetlanie, pętle, wybór i operatory relacji, numery przedmiotów, praca z myszką, praca z klawiaturą, data i czas, konwersja kodu na znak i z powrotem, polecenia graficzne i czcionki, numer błędu, komentarze, pliki i foldery, funkcje matematyczne, zatrzymanie programu lub pomocnika. 2010-03-19 dr B. Woźna-Szcześniak 30
Tryb programowanie Nowicjusz W trybie programowanie (nowicjusz) pokaże się nowy wygląd obszaru roboczego. W panelu narzędzi pod menu głównym znajdują się przyciski, pod którymi pojawia się nowy panel narzędzi z trzydziestoma przyciskami - jest to panel elementów. Programy tworzymy w czarnej przestrzeni pod panelem elementów. Przestrzeń tą nazywamy obszarem roboczym 2010-03-19 dr B. Woźna-Szcześniak 31
Tryb programowanie Nowicjusz Tworzenie programu: Chwytamy element Idź ( ), który jest w lewym górnym rogu panelu elementów, przenosimy go na czarną przestrzeń i tam go upuszczamy. Gdziekolwiek upuścimy go, zawsze sam skoczy do lewego górnego rogu czarnej przestrzeni. Program o jednym poleceniu jest gotowy. 2010-03-19 dr B. Woźna-Szcześniak 32
Tryb programowanie Nowicjusz Program można uruchomić naciskając przycisk Start (zielona strzałka). Otworzy się okno wykonywania, w którego lewym dolnym rogu będzie stać Baltie. Potem przejdzie kawałek drogi i okno wykonywania zamknie się. 2010-03-19 dr B. Woźna-Szcześniak 33
Tryb programowanie Nowicjusz Tworzenie programu: Aby sprawdzić, czy Baltie wykonał to co mu rozkazaliśmy, należy wydać Baltiemu polecenie, by po skończeniu programu poczekał, dopóki nie zobaczymy wyniku. Wprowadzamy zatem do programu element Czekaj, tuż za element Idź. Niezależnie od tego, na którym miejscu pierwszego wiersza upuścimy ten element, automatycznie przesunie się on na lewą stronę tak, by sąsiadował z ostatnim elementem tego wiersza. 2010-03-19 dr B. Woźna-Szcześniak 34
Zad 1. Budujemy domek z gwiaździstą nocą w tle 1. Ustalamy szybkość wykonywania poleceń na 4 2. Polecenie: Idź jedno pole do przodu czarodziej wykonuje dwukrotnie. 3. Czarujemy kolejne przedmioty, przemieszczając jednocześnie Baltiego. 4. Mamy już domek z ogrodem. Teraz dodamy rozgwieżdżoną noc. Czarodziej Baltie przechodzi ponad domek i czaruje gwiazdy oraz księżyc. 5. Na końcu dodajemy element Czekaj, aby za szybko nie stracić z oczu efektów działania programu. 6. Program uruchamiamy, wciskając przycisk 2010-03-19 dr B. Woźna-Szcześniak 35
Zad 1. Budujemy domek z gwiaździstą nocą w tle Program Wykonanie 2010-03-19 dr B. Woźna-Szcześniak 36
Zad 2. Budujemy domek w słoneczny dzień Program Wykonanie 2010-03-19 dr B. Woźna-Szcześniak 37
Zad 3. Budujemy domek w słoneczny dzień instrukcja powtórz Program Wykonanie 2010-03-19 dr B. Woźna-Szcześniak 38
Zadanie Sprawdź, czy potrafisz zbudować dom obok? 2010-03-19 dr B. Woźna-Szcześniak 39
Zad 4. Las ( tryb zaawansowany) Program Wykonanie 2010-03-19 dr B. Woźna-Szcześniak 40
Zadanie Przygotować scenę z polską flagą - Baltie ma wykonać jak najmniej kroków 2010-03-19 dr B. Woźna-Szcześniak 41
Zadanie Zmodyfikuj program, który maluje dom obok, tak aby wykorzystać instrukcje powtarzającą kod powinien się znacznie skrócić. 2010-03-19 dr B. Woźna-Szcześniak 42
Współrzędne pola Pola są małymi obszarami, na których umieszczane są przedmioty podczas pracy na poziomie Budowanie sceny. Pole ma takie same rozmiary jak przedmiot Baltiego, dlatego na scenie mieści się 15 10 pól. Współrzędne pola oznaczane są wielkimi literami X i Y. Pole w lewym górnym rogu sceny ma współrzędne X=0; Y=0, pole w prawym dolnym rogu sceny ma współrzędne X=14; Y=9. 2010-03-19 dr B. Woźna-Szcześniak 43
Wykorzystanie współrzędnych ustawienie na ekranie księżyca w prawym górnym rogu, a słoneczka w lewym górnym rogu. 2010-03-19 dr B. Woźna-Szcześniak 44
Współrzędne piksela Baltie pozwala wprowadzać współrzędne z dokładnością do jednego piksela. Współrzędne piksela oznaczane są małymi literami x i y. Ponieważ scena ma rozmiar 15 10 pól, a pole ma rozmiar 39 29 pikseli, łatwo obliczyć, że Piksel w lewym górnym kącie sceny ma współrzędne: x=0; y=0, piksel w prawym dolnym kącie sceny ma współrzędne: x=584; y=289. 2010-03-19 dr B. Woźna-Szcześniak 45
Wykorzystanie współrzędnych ustawienie na ekranie księżyca w prawym górnym rogu, a słoneczka w lewym górnym rogu. 2010-03-19 dr B. Woźna-Szcześniak 46
Polecenia graficzne Poleceniami graficznymi można rysować kręgi, elipsy, kwadraty, prostokąty, linie, punkty, można także używać spraju i wypełniać obszary. Za pomocą elementu Punkt można otrzymać kolor szczególnego piksela na ekranie. Polecenia graficzne mają formę: <Element> <Parametr> <Styl> <Kolor> <Współrzędne dwóch pikseli > <Element> to Prostokąt (kwadrat), Elipsa (kręg), Linia, Punkt (używany też do otrzymania koloru), Wypełnij, Spraj <Parametr> to liczba, oznaczająca: dla poleceń Elipsa, Prostokąt, Linia i Punkt - szerokość linii, dla polecenia Wypełnij - kolor krawędzi, do której ma się wypełniać, lub kolor obszaru, który ma się wypełnić (patrz styl), dla polecenia Styl - liczbę wyświetlonych pikseli (100 jeśli parametru brak). 2010-03-19 dr B. Woźna-Szcześniak 47
Polecenia graficzne Polecenia graficzne mają formę: <Element> <Parametr> <Styl> <Kolor> <Współrzędne dwóch pikseli > <Kolor> - określa kolor, który będzie użyty do rysowania. Kolor można określić dwoma sposobami (patrz rozdział Kolor): wybraniem koloru z okna dialogu Kolor, określeniem numeru koloru. W banku stałych całkowitych są stałe systemowe, które określają kolory Baltiego dla łatwiejszego użycia. Gdy nie podano koloru, użyty będzie kolor biały. <Współrzędne dwóch pikseli> - określają pozycję i wielkość rysowanego kształtu. <Styl> - to kombinacja elementów XOR i Wypełnij 2010-03-19 dr B. Woźna-Szcześniak 48
Polecenia graficzne 2010-03-19 dr B. Woźna-Szcześniak 49
Ciągi znaków, formatowanie tekstu Ciąg znaków Format tekstu 2010-03-19 dr B. Woźna-Szcześniak 50
Ciągi znaków, zmienne Czytaj z klawiatury Wprowadzony ciąg znaków Nowy element (stała, zmienna, przedmiot, klawisz) Konwersja na ciąg znaków 2010-03-19 dr B. Woźna-Szcześniak 51
Umieszczanie banku (np. nr 7) na ekranie 2010-03-19 dr B. Woźna-Szcześniak 52
Zmienne, obszary, tablice obiektów 2010-03-19 dr B. Woźna-Szcześniak 53
Zmienne, obszary, tablice obiektów 2010-03-19 dr B. Woźna-Szcześniak 54