Kontrola przepływu wykonywania -pętle (foreach, if, while ). Tworzenie własnych funkcji przy pomocy polecenia deffunction( ).

Wielkość: px
Rozpocząć pokaz od strony:

Download "Kontrola przepływu wykonywania -pętle (foreach, if, while ). Tworzenie własnych funkcji przy pomocy polecenia deffunction( )."

Transkrypt

1 Ćwiczenie numer 1 Wprowadzenie do języka programistycznego JESS Kontrola przepływu wykonywania -pętle (foreach, if, while ). Tworzenie własnych funkcji przy pomocy polecenia deffunction( ). Fakty, reguły 1. Cel ćwiczenia 1) Celem ćwiczenia jest zapoznanie się z podstawami języka programistycznego JESS. 2) Celem ćwiczenia jest zapoznanie się z kontrolą przepływu wykonywanych operacji przy pomocy pętli. Tworzenie własnych funkcji. 3) Celem ćwiczenia jest zapoznanie się z formami reprezentacji wiedzy w JESS, czyli faktami i regułami. 2. Opis ćwiczenia Jess jest to system ekspertowy opracowany w języku Sun Java przez Ernest Friedman-Hillat Sandia National Laboratoriesas. Pierwsza wersja Jess została stworzona w 1995 roku i rozwija się nieustannie. Programowanie w tym języku również może być wsparte językiem Java. Używany może być zarówno pod Windowsem, a także pod UNIXem. Kompatybilny jest z wszystkimi wersjami Java. Jess można wykorzystać do programowania systemów ekspertowych, których zadaniem jest wierne naśladowanie ludzkiego eksperta. Jess może również spełnić role języka ogólnego programowania. Przy wykorzystaniu bibliotek Java może mieć bardzo szerokie zastosowanie. Na stronie internetowej: po podaniu danych osobowych (imię, nazwisko i adres ) otrzymać można od twórców JESS, na podany , login i hasło wymagane do ściągnięcia najnowszej wersji JESS (licencja akademicka, roczna, do korzystania w celach niekomercyjnych). Po ściągnięciu pliku rozpakowujemy go w dowolne miejsce na komputerze. Do poprawnego działania JESS wymaga zainstalowanego oprogramowania JAVA. Najnowsze oprogramowanie można ściągnąć ze strony internetowej: W folderze JESS wchodzimy do folderu./bin i uruchamiamy aplikację jess.bat, można już korzystać z konsoli JESS.

2 W folderze JESS./bin tworzymy nowy dokument tekstowy.txt, następnie zmieniamy jego rozszerzenie z.txt na.clp, oraz jego nazwę na własną np.: kod.clp. W pliku tym umieszczamy wszystkie polecenia JESS, zapisujemy plik i w konsoli JESS po wpisaniu komendy (batch kod.clp) uruchomi się program jeżeli nie ma błędów w składni języka! Przykładowe polecenia JESS (należy zwracać uwagę na nawiasy, należy także robić odstępy pomiędzy kolejnymi wyrażeniami w nawiasach jak to ma miejsce w przykładach poniżej!). a) (batch nazwa.clp) wczytanie do konsoli pliku z kodem źródłowym nazwa.clp b) (printout t "aaa" crlf) wypisanie dowolnego stringu pomiędzy " " c) (bind?a 3) dodanie nowej zmiennej lokalnej a = 3 d) (printout t "zmienna a ma wartosc"?a crlf) wypisanie wartości zmiennej a e)?a wypisanie wartości zmiennej a f) ( + 2 2) wykona się dodawanie (można stosować +, -, *, /) g) ( * ( + 2 2) ( - 6 4)) jako wynik zwrócona zostanie wartość 8, najpierw wykonuje się dodawanie i odejmowanie 6-4, później wykonuje się mnożenie h) (bind?b ( + 2 2)) utworzona zostanie zmienna b, o wartości = (czyli 4) i) ( *?a?b) zwrócony zostanie wynik mnożenia wartości zmiennej a i b j) wyczyszczenie pamięci podręcznej JESS, najlepiej stosować zawsze na początku kodu źródłowego Pętle: W programowaniu pętla to jedna z trzech podstawowych konstrukcji programowania strukturalnego (obok instrukcji warunkowej i instrukcji wyboru). Umożliwia cykliczne wykonywanie ciągu instrukcji określoną liczbę razy, do momentu zajścia pewnych warunków, dla każdego elementu listy lub w nieskończoność. W JESS istnieje możliwość zastosowania następujących pętli: a) foreach b) while c) if / then/ else FOREACH: Pętla foreach, pętla "po kolekcji", to w programowaniu rodzaj pętli, której wykonanie polega na powtarzaniu kolejnych iteracji dla wszystkich elementów wybranych danych, takich jak, np. tablica, lista. Pętla ta jest przydatna w sytuacji kiedy mamy już listę zmiennych. Ma ona postać: (foreach <zmienna> <lista> <wyrażenie>+)

3 (bind?lista (create$ imie nazwisko adres)) (foreach?e?lista (printout t?e crlf)) Wypisane zostaną wszystkie elementy z listy. WHILE: Pętla while (ang. podczas gdy) wykonuje instrukcję tak długo, dopóki jej warunek jest spełniony (ma wartość prawdziwą). Instrukcja sprawdza warunek przed wykonaniem ciała pętli. Pętla while może wykonywać się nieskończoną ilość razy, gdy wyrażenie nigdy nie przyjmie wartości 0 (fałsz), może także nie wykonać się nigdy, gdy wartość przed pierwszym przebiegiem będzie FALSE. Ma ona postać: (while <wartość logiczna (true / false> do <wyrażenie>+) (bind?i 1) (bind?sum 0) (while (<=?i 10) do (bind?sum (+?sum?i)) (bind?i (+?i 1)))?sum Tworzymy dwie zmienne?i,?sum. W pętli while dopóki?i <= 10 zostanie wykonane polecenie do: do zmiennej?sum zostanie zapisana wartość?sum +?i, zmienna?i zostanie zwiększona o 1. Polecenie do będzie się wykonywało do momentu, gdy zmienna?i będzie równa 10. W 1 kroku mamy?sum = 0,?i = 1, pętla while wykona pierwsze iterację: zmienna?sum będzie wynosić = 1, zmienna?i będzie wynosić = 2. I tak dalej w kolejnych iteracjach (krokach). Jako wynik ostatecznie dostaniemy 55. Proszę sprawdzić na kalkulatorze czy się zgadza. IF/THEN/ELSE: Pętla ta pozwala na wybór, który fragment kodu ma się wykonać. Instrukcja if (ang. jeśli) to podstawowa instrukcja warunkowa. Gdy spełniony jest jej warunek - wykonany zostanie kod zawarty po słowie then. Fragment else jest opcjonalny. Ma ona postać: (if <wartość logiczna> then <wyrażenie>+ [else <wyrażenie>+]) (bind?lista (create$ imie nazwisko Krakow)) (if (member$ Krakow?lista) then (printout t "Ten ktoś mieszka w Krakowie" crlf)

4 else (printout t "Ten ktoś mieszka poza Krakowem" crlf)) Jeżeli w liście podamy Kraków to zostanie wykonane polecenie po słowie then, jeżeli podamy inne niż Kraków to wykonany zostanie kod po słowie else. Funkcje: Funkcja - procedura przekazująca wartość w miejsce swojego wywołania. Wywołanie funkcji ma w języku programowania na celu wykonanie odpowiedniego działania zawartego w ciele funkcji. W JESS oprócz funkcji wbudowanych poznane na poprzednich zajęciach (+, - * ), można definiować swoje własne funkcje, które wykonają zadanie napisane przez programistę. Funkcję tworzymy poleceniem (deffunction ()). Polecenie to ma postać: (deffunction <nazwa> (<parametry>*) <działanie (ciało)>*) (deffunction dodawanie (?x?y) (bind?suma (+?x?y)) (printout t "suma wynosi "?suma crlf)) (dodawanie 2 3) Zdefiniowana została funkcja dodająca dwie liczby do siebie. Wywołanie tej funkcji zostało poleceniem (dodawanie 2 3). Liczby 2 i 3 są to parametry przesłane do funkcji, która wykona na nich dodawanie. Jako parametry można przesłać zdefiniowane wcześniej zmienne lokalne np.:?a,?b, gdzie?a i?b zostały utworzone poleceniem (bind ) i przypisano im konkretne wartości. (deffunction pole_romb (?x?y) (bind?pole (/ (*?x?y) 2)) (printout t "Pole wynosi "?pole crlf)) (pole_rombu 2 3) Zdefiniowana funkcja odpowiada za obliczenie pola rombu. Do funkcji przesyłane są 2 parametry długości przekątnych. Funkcja w ciele ma napisaną formułę obliczającą pole i zwracającą wynik. Wywołujemy funkcję z parametrami i otrzymujemy odpowiedni wynik. Reprezentacja wiedzy: Reprezentacja wiedzy w dziedzinie sztucznej inteligencji jest jednym z głównych problemów, które jeszcze nie zostały rozwiązane. Wiedza oznacza zbiór wiadomości z określonej dziedziny, wszelkie zobiektywizowane i utrwalone formy kultury umysłowej i świadomości społecznej powstałe w wyniku kumulowania doświadczeń i uczenia się. Można powiedzieć, że wiedza jest symbolicznym opisem otaczającego nas świata rzeczywistego.

5 JESS pozwala na reprezentowanie wiedzy w postaci faktów. Zbiór takich faktów zwany jest w składni JESS jako pamięć robocza. Cała taka wiedza (zbiór informacji) jest reprezentowana w postaci faktów w pamięci roboczej. Dla przykładu jeżeli nasz program polega na kontroli klimatyzatora, to faktami będą temperatura, wilgotność, i inne. Fakty jak większość konstrukcji w JESS zapisane są w postaci listy. Fakt jest najmniejszą częścią informacji, która może być dodana lub usunięta z pamięci roboczej systemu ekspertowego. Fakty nie są pojedynczymi atomami, mają zazwyczaj określoną strukturę. Na elementach pamięci roboczej jakimi są w fakty można dokonywać różnych operacji. Do podstawowych operacji należą: reset inicjacja pamięci roboczej assert dodanie nowego faktu retract usunięcie faktu facts wyświetlenie zawartości pamięci roboczej (faktów) clear usunięcie wszystkiego z pamięci roboczej ASSERT: (assert (lista_faktow temperatura wilgotnoscć)) Jako wynik takiego działania zostanie dodany fakt do pamięci roboczej. Aby go wyświetlić posługujemy się poleceniem. RETRACT: (assert (lista_faktow temperatura wilgotnosc)) (assert (lista_faktow2 temperatur2 wilgotnosc2)) (retract 1) Jako wynik takiego działania zostaną utworzone 2 fakty, następnie poleceniem (retract numer_faktu) zostanie usunięty wybrany fakt. Czasami zamiast dodawać fakty poleceniem assert możemy posłużyć się poleceniem deffacts, które pozwala na hurtowe dodawanie faktów. Jest to przydatne kiedy chcemy wprowadzić do pamięci roboczej fakty początkowe, na podstawie których dokona się proces wnioskowania. Konstrukcja taka ma postać:

6 (deffacts catalog "Product catalog" (product 1 sticky-notes "$1.99") (product 2 paper-clips "$0.99") (product 3 blue-pens "$2.99") (product 4 index-cards "$0.99") (product 5 stapler "$5.99")) Dodane zostanie 5 faktów, które poleceniem załadujemy do pamięci roboczej. Fakty takie można później usuwać podobnie jak we wcześniejszym przykładzie, należy podać tylko odpowiedni numer faktu. W JESS można wyróżnić następujące rodzaje faktów, które różnią się między sobą sposobem ich implementacji: unordered facts (fakty nieuporządkowane) ordered facts (fakty uporządkowane) Fakty nieuporządkowane Ich podstawową charakterystyką jest to, że posiadają określoną strukturę: (deftemplate person (name Jan Kowalski) (age 23 ) (eye-color blue) (hair-color brown)) W JESS można definiować (tworzyć) różne rodzaje faktów nieuporządkowanych. Należy jednak pamiętać, że aby dodać jakiś fakt nieuporządkowany musimy wcześniej zdefiniować jego szablon, co pokazano poniżej: (deftemplate person "People" (slot name) (slot age) (slot gender)) (assert (person (age 34) (name "Bob Smith") (gender Male))) W przypadku, w którym dodając nowy fakt nie podamy wartości slotu, przyjmie on wartość nil (pustą). Np.: nie podajemy slotu name:

7 (assert (person (age 34) (gender Male))) Taki fakt zostanie dodany, a pod wartość name zostanie przypisana wartość pusta. Można także domyślnie każdemu slotowi przypisać konkretną wartość, jeżeli nie podamy wartości slotu podczas dodawania faktu to zostanie pod niego automatycznie przypisana wartość domyślna. Wartość domyślną dodajemy przy definiowaniu szablonu faktu: (deftemplate person "People" (slot name (default "Jan Kowalski")) (slot age) (slot gender)) Można także tworzyć tzw. multisloty. W sytuacji kiedy chcemy lub wiemy, że dana wartość slotu składa się więcej niż z jednego symbolu, np.: wartość slotu to opis (składający się z kilku symboli), należy posłużyć się trochę inna konstrukcją szablonu faktu: (deftemplate person "People" (slot name) (slot age) (multislot hobbies)) Tworząc fakt jako wartość hobbies możemy użyć ciągu symboli, np.: sport, tv, gry etc.. Osoba taka ma kilka wartości slotu hobbies. (assert (person (age 34) (name "Bob Smith") (gender Male) (hobbies sport, tv, gry etc. ) )) Wartości poszczególnych faktów mogą zostać modyfikowane przy pomocy polecenia modify. (deftemplate person "People" (slot name) (slot age) (slot gender)) (assert (person (age 34) (name "Bob Smith") (gender Male))) (modify 1 (age 23)) Zmieniona zostanie wartość age na nową = 23.

8 Fakty uporządkowane Są one prostymi listami, gdzie pierwszym polem jest rodzaj kategorii faktu. Np.: (stal niklowana) (data-godzina :30) (lista-numerow ) W sytuacji, w której dany fakt nie musi mieć wielu slotów lepiej posłużyć się faktami uporządkowanymi. Fakty takie definiujemy w postaci szablonu przed dodaniem faktu z konkretnymi wartościami. (deftemplate number (slot value)) (assert (number (value 123))) Podobnie jak w przypadku z faktami nieuporządkowanymi możemy posługiwać się poleceniami usuwania I modyfikowania takich faktów. Modyfikowanie: (deftemplate number (slot value)) (assert (number (value 123))) (modify 1 (value 1)) Usuwanie: (deftemplate number (slot value)) (assert (number (value 123))) (retract 1) JESS pozwala na reprezentowanie wiedzy w postaci reguł. Zbiór reguł w JESS to typowa baza wiedzy. Podczas tworzenia systemów ekspertowych najważniejsze i najtrudniejsze jest pozyskanie wiedzy od ekspertów z dziedziny tworzonego systemu. Zdobytą wiedzę należy odpowiednio zapisać w naszym systemie w postaci zbioru reguł. Program posiadający zestaw

9 faktów i reguł, oraz interfejs współpracy z użytkownikiem, który dokonuje procesu wnioskowania na zestawach tych danych można nazwać systemem ekspertowym. JESS posiada dwa mechanizmy wnioskowania: Wnioskowanie wprzód Wnioskowanie wstecz Na regułach podobnie jak na faktach można dokonywać różnych operacji. Do podstawowych operacji należą: defrule definiowanie nowej reguły undefrule usunięcie reguły run uruchomienie odpalania reguł, czyli proces wnioskowania DEFRULE: (defrule nazwa_reguly "regula nic nie robi" => ) Jako wynik takiego działania zostanie wyświetlone tylko TRUE. Jest to tylko przykład reguły, która nie robi nic. Postać każdej reguły jest następujący: IF THEN, czyli jeżeli coś jest prawdziwe to wykonaj działanie. W JESS słówko THEN to znak =>, aby działanie po prawej stronie znaku wykonało się wszystko co znajduje się po jego lewej stronie musi być prawdziwe. Gdy mamy już tak utworzoną regułę możemy wpisać do konsoli poniższe komendy: (watch facts) (watch activations) (watch rules) (run) Watch facts, activations i rules to funkcje, które w konsoli wyświetlą nam odpowiednie informacje. Reset ładuje fakty do pamięci roboczej (kiedy użytkownik sam nie wprowadzi faktu, w JESS zawsze istnieje fakt początkowy initial, który jest przez niego używany). Run odpowiada za odpalenie reguł. Polega to na tym, że przegląda on bazę reguł i fakty, jeżeli reguła może zostać uruchomiona przez fakt to jest ona uruchamiana. Jest to typowy proces wnioskowania, który JESS wykonuje samodzielnie.

10 UNDEFRULE: (undefrule nazwa_reguly) Polecenie to usunie nam daną regułę. Poniżej przedstawiam kompletny fragment kodu JESS, w którym mamy funkcję, regułę i fakt: (watch all) (deffunction change-baby () (printout t "Baby is now dry" crlf)) (defrule change-baby-if-wet "If baby is wet, change its diaper."?wet <- (baby-is-wet) => (change-baby) (retract?wet)) (assert (baby-is-wet)) (run) Aby reguła została odpalona musi być fakt uruchamiający tą regułę. Dodaliśmy fakt poleceniem assert. Run uruchomi proces wnioskowania, sprawdzi, że jest jedna reguła, którą można aktywować i to robi. Reguła jako efekt działania uruchamia naszą funkcję, która wyświetla nam informację. (defrule literal-values (letters b c) => ) (watch activations) (assert (letters b d)) (assert (letters b c)) W tym przypadku dodajemy dwa fakty, pierwszy z nich nie uruchomi naszej reguły. Dodaje on litery b i d, aby uruchomić regułę potrzeba liter b i c, litery te dodaje fakt drugi, który uruchomi naszą regułę. (defrule repeated-variables (a?x) (b?x) => (printout t "?x is "?x crlf)) (watch activations) (deffacts repeated-variable-facts (a 1)

11 (a 2) (b 2) (b 3)) (run) Mamy tutaj regułę, która zostanie aktywowana tylko wtedy, gdy fakty będą się powtarzać. Dodajemy jako fakty 4 liczby, powtarza się liczba z faktu 2 i 3, dlatego to te fakty uruchomią naszą regułę. Przedstawione teraz będą reguły, których przesłanki są bardziej rozbudowane. Przesłanki muszą być prawdziwe, aby reguła została uruchomiona. Jako efekt pracy reguły może zostać wyświetlona informacja, dodany/usunięty/zmodyfikowany fakt, lub nawet wywołanie funkcji. (deftemplate person (slot age)) (defrule find-trustworthy-people-1 (person (age?x)) (test (<?x 30)) => (printout t?x " is under 30!" crlf)) W tym przypadku reguła wymaga aby osoba miała wiek poniżej 30 lat. Tylko dla takiej osoby reguła zadziała. (deftemplate used-car (slot price) (slot mileage)) (deftemplate new-car (slot price) (slot warrantyperiod)) (defrule might-buy-car?candidate <- (or (used-car (mileage?m&:(<?m 50000))) (new-car (price?p&:(<?p 20000)))) => (assert (candidate?candidate))) (assert (new-car (price 18000))) (assert (used-car (mileage 30000))) (run) Tutaj reguł sprawdza nam informacje o samochodach, jeżeli używany samochód ma mniej niż 50k km na liczniku lub nowy ma cenę poniżej 20k zł to samochody takie są polecane użytkownikowi. Aby taka reguła została uruchomiona wystarczy jeden fakt, który ją spełnia (mamy słówko or, and powoduje, że obydwa fakty musiałby być spełnione).

12 3. Zadania Stworzyć system ekspertowy w oparciu o poznane na zajęciach metody (funkcje, fakty, reguły). 4. Literatura a) b) Jess in Action Ernest Friedman-Hill c) Tutoriale internetowe Mgr inż. Marynowski Przemysław pmarynow@agh.edu.pl Budynek B5, pokój 202

JESS FAKTY, REGUŁY. czyli faktami. Rodzaje faktów, oraz sposoby ich implementacji w programie. Szablony do tworzenia faktów.

JESS FAKTY, REGUŁY. czyli faktami. Rodzaje faktów, oraz sposoby ich implementacji w programie. Szablony do tworzenia faktów. Ćwiczenie numer 2 JESS FAKTY, REGUŁY 1. Cel ćwiczenia 1) Celem ćwiczenia jest zapoznanie się z jedną z form reprezentacji wiedzy w JESS, czyli faktami. Rodzaje faktów, oraz sposoby ich implementacji w

Bardziej szczegółowo

Programowanie w CLIPS

Programowanie w CLIPS Programowanie w CLIPS CLIPS - środowisko open source do tworzenia systemów ekspertowych. Stworzone w NASA - Johnson Space Center. System ekspertowy - jest to program lub zestaw programów komputerowych

Bardziej szczegółowo

Programowanie w CLIPS

Programowanie w CLIPS Programowanie w CLIPS Wiedza początkowa Reguły oraz fakty początkowe dodane na początku programu za pomocą deffacts. (deffacts people "Znajomi" (person (name "Adam Kowalski") (age 24) (eye-color blue)

Bardziej szczegółowo

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których

Bardziej szczegółowo

Systemy ekspertowe. Wykład 5 Wprowadzenie do CLIPSa Programowanie systemów ekspertowych. Joanna Kołodziejczyk

Systemy ekspertowe. Wykład 5 Wprowadzenie do CLIPSa Programowanie systemów ekspertowych. Joanna Kołodziejczyk Systemy ekspertowe Wykład 5 Wprowadzenie do CLIPSa Programowanie systemów ekspertowych Joanna Kołodziejczyk 2016 Joanna Kołodziejczyk Systemy ekspertowe 2016 1 / 26 Historia Plan wykładu 1 Historia 2 3

Bardziej szczegółowo

Programowanie w języku Python. Grażyna Koba

Programowanie w języku Python. Grażyna Koba Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY.

Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY. Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY. 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z przykładowym systemem ekspertowym napisanym w JESS. Studenci poznają strukturę systemu ekspertowego,

Bardziej szczegółowo

Zapisywanie algorytmów w języku programowania

Zapisywanie algorytmów w języku programowania Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI Wprowadzenie do środowiska Matlab 1. Podstawowe informacje Przedstawione poniżej informacje maja wprowadzić i zapoznać ze środowiskiem

Bardziej szczegółowo

Podstawy Programowania C++

Podstawy Programowania C++ Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:

Bardziej szczegółowo

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Jak napisać program obliczający pola powierzchni różnych figur płaskich? Część IX C++ Jak napisać program obliczający pola powierzchni różnych figur płaskich? Na początku, przed stworzeniem właściwego kodu programu zaprojektujemy naszą aplikację i stworzymy schemat blokowy

Bardziej szczegółowo

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

Blockly Kodowanie pomoc.

Blockly Kodowanie pomoc. 1 Blockly Kodowanie pomoc. Słowniczek: Zmienna posiada nazwę wywoływaną w programie oraz miejsce na przechowywanie wartości. Instrukcja warunkowa pozwala na wykonanie instrukcji w zależności od warunku

Bardziej szczegółowo

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Cw.12 JAVAScript w dokumentach HTML

Cw.12 JAVAScript w dokumentach HTML Cw.12 JAVAScript w dokumentach HTML Wstawienie skryptu do dokumentu HTML JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.skrypty Java- Script mogą być zagnieżdżane

Bardziej szczegółowo

Metody numeryczne Laboratorium 2

Metody numeryczne Laboratorium 2 Metody numeryczne Laboratorium 2 1. Tworzenie i uruchamianie skryptów Środowisko MATLAB/GNU Octave daje nam możliwość tworzenia skryptów czyli zapisywania grup poleceń czy funkcji w osobnym pliku i uruchamiania

Bardziej szczegółowo

Inżynieria wiedzy. Katedra Wytrzymałości Materiałów i Metod Komputerowych Mechaniki 1. Podstawy programowania w języku CLIPS

Inżynieria wiedzy. Katedra Wytrzymałości Materiałów i Metod Komputerowych Mechaniki  1. Podstawy programowania w języku CLIPS Katedra Wytrzymałości Materiałów i Metod Komputerowych Mechaniki www.kwmimkm.polsl.pl Wydział Mechaniczny Technologiczny Politechnika Śląska Inżynieria wiedzy Instrukcja do zajęć laboratoryjnych 1. Podstawy

Bardziej szczegółowo

Liczby losowe i pętla while w języku Python

Liczby losowe i pętla while w języku Python Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak

Bardziej szczegółowo

Programowanie w języku C++ Grażyna Koba

Programowanie w języku C++ Grażyna Koba Programowanie w języku C++ Grażyna Koba Kilka definicji: Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i zasad

Bardziej szczegółowo

4. Funkcje. Przykłady

4. Funkcje. Przykłady 4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni

Bardziej szczegółowo

Algorytmy i struktury danych

Algorytmy i struktury danych Algorytmy i struktury danych 4. Łódź 2018 Suma szeregu harmonicznego - Wpisz kod programu w oknie edycyjnym - Zapisz kod w pliku harmonic.py - Uruchom skrypt (In[1]: run harmonic.py) - Ten program wykorzystuje

Bardziej szczegółowo

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. IŚ ćw.8 JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w dokumentach HTML. Skrypt JavaScript

Bardziej szczegółowo

Bloki anonimowe w PL/SQL

Bloki anonimowe w PL/SQL Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.

Bardziej szczegółowo

W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby

W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby Część XI C++ W folderze nazwisko36 program za każdym razem sprawdza oba warunki co niepotrzebnie obciąża procesor. Ten problem można rozwiązać stosując instrukcje if...else Instrukcja if wykonuje polecenie

Bardziej szczegółowo

Umieszczanie kodu. kod skryptu

Umieszczanie kodu. kod skryptu PHP Definicja PHP jest językiem skryptowym służącym do rozszerzania możliwości stron internetowych. Jego składnia jest bardzo podobna do popularnych języków programowania C/C++, lecz jest bardzo uproszczona

Bardziej szczegółowo

Naukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem

Naukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem Moduł 1 1. Wprowadzenie do języka Python Python jest dynamicznym językiem interpretowanym. Interpretowany tzn. że kod, który napiszemy możemy natychmiast wykonać bez potrzeby tłumaczenia kodu programistycznego

Bardziej szczegółowo

Rys. 1 Budowa systemu ekspertowego

Rys. 1 Budowa systemu ekspertowego Wstęp Systemy ekspertowe [3] to jedno z narzędzi informatycznych, którego celem jest pomoc podczas podejmowania decyzji. Typowe systemy ekspertowe można podzielić na: Systemy doradcze których celem jest

Bardziej szczegółowo

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA Python wprowadzenie Warszawa, 24 marca 2017 Python to język: nowoczesny łatwy w użyciu silny można pisać aplikacje Obiektowy klejący może być zintegrowany z innymi językami np. C, C++, Java działający

Bardziej szczegółowo

Programowanie w Turbo Pascal

Programowanie w Turbo Pascal Skróty: ALT + F9 Kompilacja CTRL + F9 Uruchomienie Struktura programu: Programowanie w Turbo Pascal Program nazwa; - nagłówek programu - blok deklaracji (tu znajduje się VAR lub CONST) - blok instrukcji

Bardziej szczegółowo

Języki programowania zasady ich tworzenia

Języki programowania zasady ich tworzenia Strona 1 z 18 Języki programowania zasady ich tworzenia Definicja 5 Językami formalnymi nazywamy każdy system, w którym stosując dobrze określone reguły należące do ustalonego zbioru, możemy uzyskać wszystkie

Bardziej szczegółowo

Podstawy Programowania Podstawowa składnia języka C++

Podstawy Programowania Podstawowa składnia języka C++ Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include

Bardziej szczegółowo

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy

Bardziej szczegółowo

ECDL Podstawy programowania Sylabus - wersja 1.0

ECDL Podstawy programowania Sylabus - wersja 1.0 ECDL Podstawy programowania Sylabus - wersja 1.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu Podstawy programowania. Sylabus opisuje, poprzez efekty uczenia się, zakres wiedzy

Bardziej szczegółowo

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc. Zmienne powłoki Zmienne powłoki (shell variables) to tymczasowe zmienne, które mogą przechowywać wartości liczbowe lub ciągi znaków. Związane są z powłoką, Przypisania wartości do zmiennej następuje poprzez

Bardziej szczegółowo

Podstawy JavaScript ćwiczenia

Podstawy JavaScript ćwiczenia Podstawy JavaScript ćwiczenia Kontekst:

Bardziej szczegółowo

APLIKACJA SHAREPOINT

APLIKACJA SHAREPOINT APLIKACJA SHAREPOINT Spis treści 1. Co to jest SharePoint?... 2 2. Tworzenie nowej witryny SharePoint (obszar roboczy)... 2 3. Gdzie znaleźć utworzone witryny SharePoint?... 3 4. Personalizacja obszaru

Bardziej szczegółowo

Celem tego projektu jest stworzenie

Celem tego projektu jest stworzenie Prosty kalkulator Celem tego projektu jest stworzenie prostego kalkulatora, w którym użytkownik będzie podawał dwie liczby oraz działanie, które chce wykonać. Aplikacja będzie zwracała wynik tej operacji.

Bardziej szczegółowo

Smarty PHP. Leksykon kieszonkowy

Smarty PHP. Leksykon kieszonkowy IDZ DO PRZYK ADOWY ROZDZIA SPIS TREœCI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG Smarty PHP. Leksykon kieszonkowy Autor: Daniel Bargie³ ISBN: 83-246-0676-9 Format: B6, stron: 112 TWÓJ KOSZYK

Bardziej szczegółowo

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji Podstawy programowania Laboratorium Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji Instrukcja warunkowa if Format instrukcji warunkowej Przykład 1. if (warunek) instrukcja albo zestaw

Bardziej szczegółowo

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych 1. Wstawianie skryptu na stroną: Laboratorium 1 Do umieszczenia skryptów na stronie służy znacznik: //dla HTML5 ...instrukcje skryptu //dla HTML4 ...instrukcje

Bardziej szczegółowo

JAVAScript w dokumentach HTML (1)

JAVAScript w dokumentach HTML (1) JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript mogą być zagnieżdżane w dokumentach HTML. Instrukcje JavaScript

Bardziej szczegółowo

Pętle. for, while, do... while, foreach. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.

Pętle. for, while, do... while, foreach. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Pętle for, while, do... while, foreach Jeszcze o operatorach... Skrócone operatory arytmetyczne przykład x +=

Bardziej szczegółowo

Kiedy i czy konieczne?

Kiedy i czy konieczne? Bazy Danych Kiedy i czy konieczne? Zastanów się: czy często wykonujesz te same czynności? czy wielokrotnie musisz tworzyć i wypełniać dokumenty do siebie podobne (faktury, oferty, raporty itp.) czy ciągle

Bardziej szczegółowo

Podstawy programowania skrót z wykładów:

Podstawy programowania skrót z wykładów: Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace

Bardziej szczegółowo

Instrukcje cykliczne (pętle) WHILE...END WHILE

Instrukcje cykliczne (pętle) WHILE...END WHILE Instrukcje cykliczne (pętle) Pętle pozwalają na powtarzanie fragmentu kodu programu. PĘTLE LOGICZNE WHILE...END WHILE While (warunek)...... End While Pętla będzie się wykonywała dopóki warunek jest spełniony.

Bardziej szczegółowo

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1 Podstawy programowania, Poniedziałek 30.05.2016, 8-10 Projekt, część 1 1. Zadanie Projekt polega na stworzeniu logicznej gry komputerowej działającej w trybie tekstowym o nazwie Minefield. 2. Cele Celem

Bardziej szczegółowo

1 Wprowadzenie do algorytmiki

1 Wprowadzenie do algorytmiki Teoretyczne podstawy informatyki - ćwiczenia: Prowadzący: dr inż. Dariusz W Brzeziński 1 Wprowadzenie do algorytmiki 1.1 Algorytm 1. Skończony, uporządkowany ciąg precyzyjnie i zrozumiale opisanych czynności

Bardziej szczegółowo

Lekcja 1. Składnia języka zmienne i podstawowe instrukcje PHP. Do wyświetlania tekstu służy instrukcja echo echo Hello world ;

Lekcja 1. Składnia języka zmienne i podstawowe instrukcje PHP. Do wyświetlania tekstu służy instrukcja echo echo Hello world ; Do wyświetlania tekstu służy instrukcja echo echo Hello world ; PHP język ze słabą kontrolą typów. W języku php w przeciwieństwie do c++ nie musimy podawać typu zmiennej podczas jej deklaracji. Tworzenie

Bardziej szczegółowo

Konstrukcje warunkowe Pętle

Konstrukcje warunkowe Pętle * Konstrukcje warunkowe Pętle *Instrukcja if sposób na sprawdzanie warunków *Konstrukcja: if(warunek) else { instrukcje gdy warunek spełniony} {instrukcje gdy warunek NIE spełniony} * 1. Wylicz całkowity

Bardziej szczegółowo

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2 Pętle wielokrotne wykonywanie ciągu instrukcji. Bardzo często w programowaniu wykorzystuje się wielokrotne powtarzanie określonego ciągu czynności (instrukcji). Rozróżniamy sytuacje, gdy liczba powtórzeń

Bardziej szczegółowo

Ćwiczenie 1. Wprowadzenie do programu Octave

Ćwiczenie 1. Wprowadzenie do programu Octave Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie sygnałów laboratorium ETD5067L Ćwiczenie 1. Wprowadzenie do programu Octave Mimo że program Octave został stworzony do

Bardziej szczegółowo

Przedmiot: Informatyka w inżynierii produkcji Forma: Laboratorium Temat: Zadanie 4. Instrukcja warunkowa.

Przedmiot: Informatyka w inżynierii produkcji Forma: Laboratorium Temat: Zadanie 4. Instrukcja warunkowa. Przedmiot: Informatyka w inżynierii produkcji Forma: Laboratorium Temat: Zadanie 4. Instrukcja warunkowa. Celem ćwiczenia jest nabycie umiejętności wykorzystania w praktyce instrukcji warunkowych programowania

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia. Wprowadzenie teoretyczne.

Bardziej szczegółowo

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania 1) Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z podstawowymi elementami obiektowymi systemu Windows wykorzystując Visual Studio 2008 takimi jak: przyciski, pola tekstowe, okna pobierania danych

Bardziej szczegółowo

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch. Instrukcje warunkowe i skoku. Spotkanie 2 Dr inż. Dariusz JĘDRZEJCZYK Wyrażenia i operatory logiczne Instrukcje warunkowe: if else, switch Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania

Bardziej szczegółowo

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 3

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 3 Podstawy programowania, Poniedziałek 13.05.2015, 8-10 Projekt, część 3 1. Zadanie Projekt polega na stworzeniu logicznej gry komputerowej działającej w trybie tekstowym o nazwie Minefield. 2. Cele Celem

Bardziej szczegółowo

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH ĆWICZENIE NR 9 WYRAŻENIA LOGICZNE, INSTRUKCJE WARUNKOWE I INSTRUKCJE ITERACYJNE W PROGRAMIE KOMPUTEROWYM MATLAB Dr inż. Sergiusz Sienkowski ĆWICZENIE NR

Bardziej szczegółowo

Trochę o plikach wsadowych (Windows)

Trochę o plikach wsadowych (Windows) Trochę o plikach wsadowych (Windows) Zmienne środowiskowe Zmienną środowiskową można ustawić na stałe w systemie (Panel sterowania->system- >Zaawansowane ustawienia systemu->zmienne środowiskowe) lub też

Bardziej szczegółowo

Informatyka II. Laboratorium Aplikacja okienkowa

Informatyka II. Laboratorium Aplikacja okienkowa Informatyka II Laboratorium Aplikacja okienkowa Założenia Program będzie obliczał obwód oraz pole trójkąta na podstawie podanych zmiennych. Użytkownik będzie poproszony o podanie długości boków trójkąta.

Bardziej szczegółowo

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre) Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie

Bardziej szczegółowo

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Temat: Technologia informacyjna a informatyka 1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Technologia informacyjna (ang.) Information Technology, IT jedna

Bardziej szczegółowo

Wprowadzenie do Scilab: podstawy języka Scilab

Wprowadzenie do Scilab: podstawy języka Scilab Wprowadzenie do Scilab: podstawy języka Scilab Magdalena Deckert, Izabela Szczęch, Barbara Wołyńska, Bartłomiej Prędki Politechnika Poznańska, Instytut Informatyki Narzędzia Informatyki Narzędzia Informatyki

Bardziej szczegółowo

Laboratorium 1 - Programowanie proceduralne i obiektowe

Laboratorium 1 - Programowanie proceduralne i obiektowe Laboratorium 1 - Programowanie proceduralne i obiektowe mgr inż. Kajetan Kurus 4 marca 2014 1 Podstawy teoretyczne 1. Programowanie proceduralne (powtórzenie z poprzedniego semestru) (a) Czym się charakteryzuje?

Bardziej szczegółowo

PHP: bloki kodu, tablice, obiekty i formularze

PHP: bloki kodu, tablice, obiekty i formularze 1 PHP: bloki kodu, tablice, obiekty i formularze SYSTEMY SIECIOWE Michał Simiński 2 Bloki kodu Blok if-else Switch Pętle Funkcje Blok if-else 3 W PHP blok if i blok if-else wyglądają tak samo i funkcjonują

Bardziej szczegółowo

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal

Bardziej szczegółowo

Zapis algorytmów: schematy blokowe i pseudokod 1

Zapis algorytmów: schematy blokowe i pseudokod 1 Zapis algorytmów: schematy blokowe i pseudokod 1 Przed przystąpieniem do napisania kodu programu należy ten program najpierw zaprojektować. Projekt tworzącego go algorytmu może być zapisany w formie schematu

Bardziej szczegółowo

ForPascal Interpreter języka Pascal

ForPascal Interpreter języka Pascal Akademia Podlaska w Siedlcach Wydział Nauk Ścisłych Instytut Informatyki ForPascal Interpreter języka Pascal Przedmiot: Sieci i Systemy Wirtualne Informatyka IV Prowadzący: dr Krzysztof Trojanowski Grupa:

Bardziej szczegółowo

Wstęp do Programowania Lista 1

Wstęp do Programowania Lista 1 Wstęp do Programowania Lista 1 1 Wprowadzenie do środowiska MATLAB Zad. 1 Zapoznaj się z podstawowymi oknami dostępnymi w środowisku MATLAB: Command Window, Current Folder, Workspace i Command History.

Bardziej szczegółowo

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu

Bardziej szczegółowo

Definicje. Algorytm to:

Definicje. Algorytm to: Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi

Bardziej szczegółowo

Krótki kurs JavaScript

Krótki kurs JavaScript Krótki kurs JavaScript Java Script jest językiem wbudowanym w przeglądarkę. Gdy ma się podstawy nabyte w innych językach programowania jest dość łatwy do opanowania. JavaScript jest stosowany do powiększania

Bardziej szczegółowo

Przykład 1 -->s="hello World!" s = Hello World! -->disp(s) Hello World!

Przykład 1 -->s=hello World! s = Hello World! -->disp(s) Hello World! Scilab jest środowiskiem programistycznym i numerycznym dostępnym za darmo z INRIA (Institut Nationale de Recherche en Informatique et Automatique). Jest programem podobnym do MATLABa oraz jego darmowego

Bardziej szczegółowo

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Modelowanie rynków finansowych z wykorzystaniem pakietu R Modelowanie rynków finansowych z wykorzystaniem pakietu R Wprowadzenie do pakietu R Mateusz Topolewski woland@mat.umk.pl Wydział Matematyki i Informatyki UMK Plan działania 1 Co i dlaczego...? 2 Przechowywanie

Bardziej szczegółowo

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady Pętle i tablice. Spotkanie 3 Dr inż. Dariusz JĘDRZEJCZYK Pętle: for, while, do while Tablice Przykłady 11/26/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Pętla w największym uproszczeniu służy

Bardziej szczegółowo

while(wyrażenie) instrukcja

while(wyrażenie) instrukcja emat zajęć: Operatory i instrukcje w języku C - 2 Autor: mgr inż. Sławomir Samolej Zagadnienie 1. (instrukcja cyklu: while) Do wykonywania cyklicznych obliczeń w języku C stosuje się instrukcje cyklu (pętli).

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć

Bardziej szczegółowo

Wykład 8: klasy cz. 4

Wykład 8: klasy cz. 4 Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD

Bardziej szczegółowo

Scenariusz zajęć. Moduł VI. Projekt Gra logiczna zgadywanie liczby

Scenariusz zajęć. Moduł VI. Projekt Gra logiczna zgadywanie liczby Scenariusz zajęć Moduł VI Projekt Gra logiczna zgadywanie liczby Moduł VI Projekt Gra logiczna zgadywanie liczby Cele ogólne: przypomnienie i utrwalenie poznanych wcześniej poleceń i konstrukcji języka

Bardziej szczegółowo

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. 1. Instrukcję case t of... w przedstawionym fragmencie programu moŝna zastąpić: var t : integer; write( Podaj

Bardziej szczegółowo

Warunki logiczne instrukcja if

Warunki logiczne instrukcja if Warunki logiczne instrukcja if Prowadzący: Łukasz Dunaj, strona kółka: atinea.pl/kolko 1. Wejdź na stronę kółka, uruchom edytor i wpisz: use console; def test::main() { var y; y = 1; while (y

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Język programowania Ruby Marcin Młotkowski 12 kwietnia 2018 Plan wykładu 1 Wstęp 2 Typy numeryczne Łańcuchy znaków (klasa String) Przedziały Tablice i tablice asocjacyjne Nazwy

Bardziej szczegółowo

Visual Basic for Applications. Wstęp

Visual Basic for Applications. Wstęp Visual Basic for Applications Materiały źródłowe: http://www.vbamania.estrefa.pl 2008-01-14 Wstęp Visual Basic for Applications to język programowania, dołączony do wielu aplikacji. Wspierają go między

Bardziej szczegółowo

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Turbo Pascal jest językiem wysokiego poziomu, czyli nie jest rozumiany bezpośrednio dla komputera, ale jednocześnie jest wygodny dla programisty,

Bardziej szczegółowo

Paradygmaty programowania

Paradygmaty programowania Paradygmaty programowania Jacek Michałowski, Piotr Latanowicz 15 kwietnia 2014 Jacek Michałowski, Piotr Latanowicz () Paradygmaty programowania 15 kwietnia 2014 1 / 12 Zadanie 1 Zadanie 1 Rachunek predykatów

Bardziej szczegółowo

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r. M. Trzebiński C++ 1/14 Podstawy języka C++ Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IVedycja,2016r. IFJ PAN Przygotowanie środowiska pracy Niniejsza

Bardziej szczegółowo

PHP 5 język obiektowy

PHP 5 język obiektowy PHP 5 język obiektowy Wprowadzenie Klasa w PHP jest traktowana jak zbiór, rodzaj różnych typów danych. Stanowi przepis jak stworzyć konkretne obiekty (instancje klasy), jest definicją obiektów. Klasa reprezentuje

Bardziej szczegółowo

JAVAScript w dokumentach HTML - przypomnienie

JAVAScript w dokumentach HTML - przypomnienie Programowanie obiektowe ćw.1 JAVAScript w dokumentach HTML - przypomnienie JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT PRACY DYPLOMOWEJ REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany

Bardziej szczegółowo

Przetwarzanie sygnałów

Przetwarzanie sygnałów Spis treści Przetwarzanie sygnałów Ćwiczenie 1 Wprowadzenie do programu Octave 1 Operatory 1 1.1 Operatory arytmetyczne...................... 1 1.2 Operatory relacji.......................... 1 1.3 Operatory

Bardziej szczegółowo

lekcja 8a Gry komputerowe MasterMind

lekcja 8a Gry komputerowe MasterMind lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych

Bardziej szczegółowo

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Język PHP Język interpretowalny, a nie kompilowany Powstał w celu programowania

Bardziej szczegółowo

Programowanie obiektowe - zadania

Programowanie obiektowe - zadania Programowanie obiektowe - zadania Elementy języka Java Zad.1. Napisz program, który sprawdza, czy dana liczba całkowita jest parzysta. Zad.2. Napisz program, który sumuje dane dwie liczby tylko w przypadku,

Bardziej szczegółowo