Podstawy programowania komputerów

Slides:



Advertisements
Podobne prezentacje
Katarzyna Szafrańska kl. II ti
Advertisements

Język C/C++ Funkcje.
Rekurencja 1 Podprogram lub strukturę danych nazywamy rekurencyjną, (recursive subprogram, recursive data structure) jeżeli częściowo składa się z samej.
Wprowadzenie do C++ Zajęcia 2.
Języki programowania C++
PROGRAMOWANIE STRUKTURALNE
PROGRAMOWANIE STRUKTURALNE
ALGORYTM Co to jest algorytm?
Turbo pascal – instrukcje warunkowe, iteracyjne,…
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 1: Wprowadzenie do programowania.
P O D S T A W Y P R O G R A M O W A N I A
Programowanie imperatywne i język C Copyright, 2004 © Jerzy R. Nawrocki Wprowadzenie.
Programowanie imperatywne i język C
Programowanie imperatywne i język C Copyright, 2004 © Jerzy R. Nawrocki Wprowadzenie.
Kurs Pascala – spis treści
Wykład 2 struktura programu elementy języka typy zmienne
Wstęp do programowania obiektowego
Java – programowanie obiektowe
Wstęp do interpretacji algorytmów
Dr Anna Kwiatkowska Instytut Informatyki
Wprowadzenie do programowania w języku Turbo Pascal
Algorytmy Marek Pudełko
Schemat Hornera Mgr inż. Michał Szucki.
ALGORYTMY.
Programowanie w języku Fortran 95
Podstawy programowania
Podstawy programowania II Wykład 2: Biblioteka stdio.h Zachodniopomorska Szkoła Biznesu.
Podstawy programowania
Programowanie strukturalne i obiektowe
Pliki tekstowe. Operacje na plikach. mgr inż. Agata Pacek.
Funkcje w Pascalu Przypomnienie wiadomości o procedurach Prowadzący: Anna Kaleta Piotr Chojnacki.
Algorytmy z przykładami w Turbo Pascal 7.0
Podstawy programowania. Język C i C++– podstawy Temat: 1
Instrukcje sterujące część 2
Struktura programu w Turbo Pascalu.
© A. Jędryczkowski – 2006 r. © A. Jędryczkowski – 2006 r.
Pliki tekstowe – A. Jędryczkowski © 2007 Turbo Pascal umożliwia wykorzystanie w programach plików tekstowych. Pliki takie zawierają informację niezakodowaną
Programowanie w Logo Projekt Edukacyjny.
Warsztaty programowania w języku Python
Programowanie obiektowe – zastosowanie języka Java SE
Maszyna wirtualna ang. virtual machine, VM.
Algorytmy.
POŚREDNIK Jak reprezentowana jest informacja w komputerze? liczby – komputer został wymyślony jako zaawansowane urządzenie służące do wykonywania.
Elżbieta Fiedziukiewicz
Podstawy informatyki 2013/2014
Projektowanie stron WWW
Podstawy języka Instrukcje - wprowadzenie
Podstawy programowania
ZAPIS BLOKOWY ALGORYTMÓW
Algorytmika.
C++.
Programowanie strukturalne i obiektowe C++
Wstęp do Podstawy Programowania
Wprowadzenie do programowania w Pascalu mgr inż. Agata Pacek.
Podstawy programowania
Podsumowanie wiedzy MPDI2 sem.3 INFORMATYKA. tworzenie nowego pliku i katalogu, nawigacja po katalogach, listowanie zawartości katalogu, zmiana nazw,
Wstęp do interpretacji algorytmów
Pętle – instrukcje powtórzeń
Instrukcje warunkowe w php. Pętla FOR Czasem zachodzi potrzeba wykonania jakiejś czynności określoną ilość razy. Z pomocą przychodzi jedna z najczęściej.
Dokumentacja programu komputerowego i etapy tworzenia programów.
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.
Wstęp do programowania Wykład 2 Dane, instrukcje, program.
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
Algorytmy, sposoby ich zapisu.1 Algorytm to uporządkowany opis postępowania przy rozwiązywaniu problemu z uwzględnieniem opisu danych oraz opisu kolejnych.
Programowanie strukturalne i obiektowe Klasa I. Podstawowe pojęcia dotyczące programowania 1. Problem 2. Algorytm 3. Komputer 4. Program komputerowy 5.
Programowanie obiektowe – zastosowanie języka Java SE
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

Podstawy programowania komputerów Przy opracowywaniu wykładu wykorzystano m.in.: Wojciech Sobieski - strona informacyjna (http://moskit.uwm.edu.pl/~wojsob/) http://www.algorytm.org/index.php?option=com_frontpage&Itemid=1 Wstęp do informatyki (materiały Wyższej Szkoły Informatyki) J. Sikorski

Przypomnienie Przepis Składniki Czynności

Przypomnienie Pojęcie zmiennej Zmienna jest symbolem, oznaczającym określoną strukturę danych. W szczególności może to być np. liczba np. X := 100; X := X + 2; Średnikiem oznaczamy tzw. instrukcję, czyli koniec pojedynczej operacji. Znak := w algorytmice oznacza operacje przypisania i nie należy go mylić z matematycznym znakiem = (równość)

Sposoby reprezentacji danych Przypomnienie Sposoby reprezentacji danych Dane numeryczne: całkowite, „rzeczywiste” posiadają określony zakres i dokładność Tablice Listy Stosy Kolejki Drzewa Grafy

Sposoby reprezentacji danych Trzeba pamiętać, że o ile zasady dotyczące zmiennych i struktur danych są zawsze aktualne, to ich organizacja i sposób zapisu różni się w poszczególnych językach.

Od algorytmu do programu Być może kiedyś wszystkie problemy zostaną rozwiązane w postaci odpowiednich programów. Wtedy programowanie nie będzie już nikomu potrzebne. Na razie programiści wciąż mają sporo pracy a programowanie jest Ważnym elementem informatyki.

Intencje a Interpretacje Często pojawia się w komediach motyw, że ktoś spełnia w magiczny sposób życzenia bohatera. Dlaczego są to na najczęściej komedie? Życzenia są interpretowane niezgodnie z intencjami. I to jest bardzo śmieszne:) Komputery nie potrafią jednak interpretować naszych życzeń.

Pseudokod do zapisu algorytmów Alternatywą dla blokowego zapisu algorytmów jest tzw. pseudokod. Algorytm w pseudokodzie składa się z uporządkowanych instrukcji. FOR X = 1 to 10 FOR Y = 1 to 10 IF gameBoard[X][Y] = 0 Do nothing ELSE CALL figureFound(X, Y) increment counter END IF END FOR Uporządkowana składnia, choć w zależności od zastosowania (księgowe, matematyczne i inne) zapis może się znacznie różnić. Mimo pewnych ustalonych norm reguły zapisu pozostają dość dowolne i zbliżone są do konwencji opisowej. Zrozumienie pseudokodu jest dość łatwe, jednak przydaje się doświadczenia z języków programowania. Składnia jest podobna do tej stosowanej w języku PASCAL. Wspólnym elementem pozostają STRUKTURY STERUJĄCE Odgrywają one również ważną rolę we wszystkich językach programowania. CASE Title OF Mr : Print "Mister" Mrs : Print "Missus" Miss : Print "Miss" Ms : Print "Mizz" Dr : Print "Doctor" ENDCASEv IF HoursWorked > NormalMax THEN Display overtime message ELSE Display regular time message ENDIF

Pseudokod - struktury sterujące Związane są z warunkowym wykonywaniem określonych instrukcji w algorytmie. Wśród instrukcji sterujących można wymienić: Instrukcję warunkową „jeżeli” if Instrukcję wyboru case; Instrukcje pętli: Pętla for; Pętla while; Pętla do…while; (lub także repeat…until) W naszych zapisach będziemy stosowali konwencję zbliżoną do języka PASCAL.

Pseudokod - struktury sterujące Instrukcja if…else odpowiada schematowi: if (warunek) then instrukcja1; else instrukcja2; warunek TAK NIE Instrukcja1 Instrukcja2

Pseudokod - struktury sterujące Druga możliwość, gdy pomija się instrukcję przy niespełnionym warunku Instrukcja if: if (warunek) then instrukcja; warunek TAK NIE instrukcja

Pseudokod - struktury sterujące Przykłady z instrukcjami if: Wcięcie pod instrukcją sterującą oznacza, że instrukcje te są instrukcjami „wewnętrznymi”. Poprawia to czytelność programów. if (brak płynu do mycia) then idź do sklepu; else umyj kolejne naczynie;

Pseudokod - struktury sterujące Przykłady z instrukcjami if: if (a różne od 0) then wynik := wynik / a; else komunikat:„błąd – dzielenie przez zero”;

Pseudokod - struktury sterujące Przykłady z instrukcjami if: //wartość bezwzględna z (b) if (b < 0) then b := b * (-1);

Pętle – pętla for Pętla for wykonuje działania dla wskazanego zakresu specjalnej zmiennej sterującej. i:=start; for i:=start to stop do instrukcja; lub for i:=start downto stop do gdy start > stop i>stop TAK NIE i:=i+1; instrukcja

Pseudokod - struktury sterujące Przykłady z pętlą for: //pętla realizuje operacje c=a*b //dla a i b całkowitych for i:=1 to b do c := c + a;

Pseudokod - struktury sterujące Przykłady z pętlą for: //pętla realizuje operacje wynik = n! //dla n całkowitego, n>0 wynik := 1; for i:=2 to n do wynik := wynik * i;

Pseudokod - struktury sterujące Przykłady z pętlą for (tzw. pętla zagnieżdżona): //jedna pętla „w drugiej” zapisuje tabliczkę mnożenia //do 10 w tablicy dwuwymiarowej tab[1..10][1..10] Wyzeruj wszystkie pola tablicy tab; for i:=1 to 10 do for j:=1 to 10 do tab[i][j]:=i*j;

Pętle – pętla while Pętla while (dopóki) wykonuje działania tak długo, jak warunek jest spełniony. while warunek do instrukcja; Warunek jest sprawdzany na końcu instrukcja TAK warunek NIE

Pseudokod - struktury sterujące Przykłady z pętlą while: while (naczynia w zlewie) do umyj naczynie;

Pseudokod - struktury sterujące Przykłady z pętlą while: while n>0 do begin bit := n mod 2; wypisz kolejny bit; n := n div 2; end;

Programowanie komputerów czyli jeszcze bardziej formalnie…

Języki programowania wymyślono po to, by można było dzięki nim tworzyć różnorodne programy komputerowe. Oczekuje się również, że tworzone aplikacje będą wykonywać swoje zadania w sposób jednoznaczny i zgodny z określoną na etapie projektowania specyfikacją wymagań – języki programowania muszą się więc opierać na ogólnie obowiązujących zasadach logiki i arytmetyki.

Problem Komputer Algorytm Język programowania Program Rozwiązanie

Komputer zbudowany jest w oparciu o obwody cyfrowe (binarne) i reaguje bezpośrednio na sygnały pochodzące z tych obwodów. Ręczne manipulowanie obwodami jest trudne, choć w początkowym okresie rozwoju komputerów tak właśnie wyglądało programowanie

Sekwencje sygnałów opracowane zostały w postaci rozkazów zrozumiałych dla procesora, tworząc tzw. KOD MASZYNOWY Jest on obecnie wykorzystywany przez programistów raczej wyłącznie do zadań, w których szczególnie ważna jest szybkość działania programu. Nazywany jest językiem niskiego poziomu. Program tworzony jest w specjalnym języku zwanym ASEMBLEREM i bezpośrednio tłumaczony na kod maszynowy.

Pisanie programów w kodzie maszynowym było trudne. Wymyślono więc SYMBOLICZNE JĘZYKI PROGRAMOWANIA, które zamieniają zrozumiałe dla ludzi „napisy” na kod zrozumiały dla komputera.

Język Język - jest to ogólna nazwa zdefiniowanego zbioru znaków i symboli oraz reguł określających sposoby i kolejność ich użycia. Język, który jest stosowany do przetwarzania algorytmów nosi nazwę języka algorytmicznego, a przy zastosowaniu go do celów programowania określony jest jako język programowania. Ponieważ komputer posługuje się językiem binarnym, tzn. rozróżnia stany 0,1, program w języku programowania należy przetworzyć tak, aby był zrozumiały dla maszyny – zadaniem tym zajmują się translatory.

Język Język programowania - zbiór zasad składni, instrukcji, dzięki którym powstaje kod źródłowy programu. Programista używa języka zrozumiałego dla człowieka, który następnie jest kompilowany bądź interpretowany do postaci maszynowej (translacja). Istnieje wiele rodzajów języków programowania. Można je podzielić według wielu kryteriów.

Podstawowe pojęcia Kod źródłowy – jest to program komputerowy w postaci tekstu zawierającego instrukcje języka programowania. Kod źródłowy jest jedynym formatem programu czytelnym dla człowieka. Kod maszynowy – jest to przetłumaczona na język niskiego poziomu (asembler) wersja kodu źródłowego; translacja

Podstawowe pojęcia Kod pośredni – kod, który do uruchomienia wymaga interpretera lub maszyny wirtualnej – takie pliki mogą być zwykle uruchamiane na różnych systemach (Java, języki .NET).

Podstawowe pojęcia Kompilator – jest to program jednorazowo tłumaczący cały kod źródłowy na język maszynowy i zapisujący go do pliku wynikowego. Kolejne uruchomienia programu (pliku wynikowego) nie wymagają powtórzenia etapu kompilacji – oznacza to, że kompilator nie jest potrzebny do uruchamiania programu. Typowymi przykładami języków kompilowanych są: C, C++, Pascal; Interpreter – jest to program tłumaczący i wykonujący kod źródłowy linia po linii. W tym przypadku nie ma pliku wynikowego, a każde uruchomienie wymaga ponownego przeprowadzenia etapu interpretacji – interpreter jest więc niezbędny do uruchomienia i wykonania programu. Typowymi przykładami języków interpretowanych są: Python, MatLab, GNU Plot, HTML, BPL;

Podstawowe pojęcia

Środowisko programistyczne Translator – służy do wykonania kompilacji lub interpretacji kodu źródłowego. Standardowym katalogiem, w których umieszcza się pliki translatora jest katalog BIN w głównym katalogu aplikacji. Biblioteki i dodatkowe pliki wsadowe – służą do rozszerzania możliwości języka, szczególnie w zakresie pewnych zastosowań (np. obliczeń matematycznych, numerycznych, obróbki grafiki). Edytor kodu – służący do pisania tekstu kodu źródłowego. Debugger - analizator kodu, służy do analizy poprawności tworzonego kodu źródłowego i stanowi zazwyczaj integralną część translatora. Podczas analizy kodu źródłowego generowane są informacje o błędach.

Środowisko programistyczne Edytor „formularzy” - służy do budowy okien widzianych przez użytkownika po uruchomieniu programu (formularzy). Element ten występuje jedynie w językach „wizualnych”. System pomocy – służy do uzyskiwania informacji o środowisku programistycznym, zasadach jego użytkowania, elementach języka (wraz z przykładami), rodzaju licencji, autorach i kontaktach. Zależnie od implementacji języka oraz jego rodzaju pomoc może być mniej lub bardziej rozwinięta. Narzędzia dodatkowe – służą do tworzenia systemu pomocy, ikon i kursorów, programów instalacyjnych. Ilość narzędzi i poziom ich zaawansowania zależy od implementacji języka.

Zintegrowane środowisko programistyczne .NET (c#)

Zintegrowane środowisko programistyczne Delphi

Znów historia… generacje języków programowania Języki programowania można podzielić na pięć wyraźnie różniących się generacji. W miarę jak zmieniał się komputer, wystąpiła konieczność dostarczania użytkownikowi narzędzi programistycznych, które umożliwiłyby mu maksymalne wykorzystanie sprzętu.

Pierwsza generacja Programowanie pierwszych komputerów akceptujących zmianę oprogramowania odbywało się bezpośrednio w kodzie binarnym, który można przedstawić jako ciągi zer i jedynek. Programowanie odbywało się na ogół poprzez fizyczne przełączanie kabli, odpowiadających sygnałom. Przykład: 00101010010110100010101101101011010001011100001000010011 11000010101111101010101000001010100010101000001010010101 00101101101000111011010110100010111000010000100111100001 01011111000010101010000010101000101010000010100010010

Druga generacja Ponieważ operowanie ciągami zerojedynkowymi nie jest wygodne dla programisty, przypisano im łatwiejsze do zrozumienia znaki. Tak narodziły się języki symboliczne, zwane też asemblerami. Stanowią proste tłumaczenie języka maszynowego na symbole i są ściśle związane z danym modelem komputera, to ułatwiają pisanie instrukcji i czynią je bardziej czytelnymi. Przykład: mov dx, offset info mov ah, 9 int 21h mov ah, 0 int 16h

Trzecia generacja Kolejnym krokiem w rozwoju języków programowania było powstanie języków wysokiego poziomu. Symbole asemblera reprezentujące konkretne instrukcje zostały zastąpione zapisem symbolicznym nie związanym z maszyną, bardziej zbliżonym do języka naturalnego. Przykład: for i:=1 to MaxN do begin Vx[i]:=Vx[i]+dx[i]; end;

Czwarta generacja Na czwartą generację języków programowania składa się szereg narzędzi, które umożliwiają budowę prostych aplikacji przez zestawianie „prefabrykowanych” modułów. Obecnie wielu specjalistów uważa, że nie są to języki programowania w ścisłym znaczeniu, gdyż częstokroć stanowią jedynie rozszerzenie języków już istniejących. Niektórzy autorzy proponują stosować nazwę „czwarta generacja” wyłącznie w odniesieniu do programowania obiektowego (OOP). Przykład:

Piąta generacja Nazwę „język piątej generacji” stosuje się czasem w odniesieniu do języków używanych do tworzenia programów wykorzystujących tzw. sztuczną inteligencję (AI).

Podział języków programowania Jest wiele języków programowania Podział języków programowania Jest wiele języków programowania. Zastosowanie konkretnego wynika z osobistych preferencji, ale przede wszystkim ze specyfiki problemu , jaki chcemy rozwiązać.

Podział ze względu na rodzaj translacji: kompilowane, interpretowane.

Podział ze względu na strukturę: języki proceduralne – programista określa JAKIE operacje maja być wykonane i w JAKIEJ KOLEJNOŚCI. języki nie proceduralne – programista opisuje to, CO chce wykazać. Decyzja JAK to wykonać należy do kompilatora.

Podział według modelu programowania: języki strukturalne (Fortran, Pascal, LOGO) języki zorientowane obiektowo OOP (C++, Visual C++, Turbo Pascal, Delphi, Smalltalk, JAVA, J++, C#.

Elementy języków programowania

Ściśle określony zbiór znaków i symboli. Używanie znaków niedozwolonych spowoduje wystąpienie błędów podczas translacji kodu źródłowego. Zakres znaków obejmuje duże i małe litery alfabetu (rozróżniane bądź nie), cyfry oraz znaki specjalne i symbole wieloznakowe. Mimo, że wiele języków programowania posiada podobny zestaw znaków dopuszczalnych, niektóre z nich mogą mieć zupełnie inne znaczenie. Przykładem może być znak “//” - w FORTRANIE służący do łączenia łańcuchów tekstowych, zaś w C do oznaczenia wiersza komentarza.

Słowa kluczowe Słowa kluczowe są to określone zbiory znaków posiadające konkretne znaczenie w języku programowania (najczęściej są to wyrazy z języka angielskiego, np. WRITE, READ, PROGRAM, FOR, DO, PROCEDURE, FUNCTION

Budowa (struktura) programu Kod źródłowy składa się z przynajmniej jednego modułu (programu), który musi mieć ściśle określoną budowę. Program musi posiadać: wyraźnie określony początek i koniec obszary deklaracji obiektów i typów występujących zmiennych obszary zawierające bloki instrukcji, funkcji lub procedur. Budowa kodu źródłowego zależy w decydujący sposób od rodzaju języka i sposobu realizacji drogi punktu sterowania.

Przykład – program w LOGO

Określanie zmiennych i ich typów Zmienne wykorzystane w programie w większości języków programowania muszą zostać zadeklarowane (określona ich nazwa i na ogół typ) Rozróżnia się typ całkowity, rzeczywisty, zespolony, tekstowy, logiczny i inne. Zależnie od języka, poszczególne typy mogą mieć wiele odmian. Oprócz typów prostych, wiele języków umożliwia tworzenie własnych typów lub struktur danych o bardziej złożonej budowie.

Określanie zmiennych i ich typów - przykłady Pascal: var a : integer; begin a := 10; a := a*15; writeln(a); end. Deklaracja zmiennej i typu Inicjalizacja (nadanie wartości)

Określanie zmiennych i ich typów - przykłady C/C++: void main (void) { int a = 10; a = a*15; printf(”%i”, a); } Deklaracja zmiennej i typu oraz inicjalizacja

Określanie zmiennych i ich typów - przykłady LOGO: TO PROGRAM LOCAL ”a MAKE ”a 10 MAKE ”a :a*15 SHOW :a END Deklaracja zmiennej, nie trzeba określać typu Inicjalizacja

Określanie zmiennych i ich typów Podział zmiennych i stałych ze względu na typ: zespolone, rzeczywiste, całkowite, logiczne, walutowe, daty lub czasu, tekstowe. Podział zmiennych i stałych ze względu na sposób deklaracji: deklarowane jawnie, deklarowane niejawnie.

Operatory Wyrażenia realizowane są przy pomocy operatorów (znaków dodawania, odejmowania, mnożenia, dzielenia i potęgowania) oraz funkcji i procedur (wewnętrznych i zewnętrznych). Podczas tworzenia wyrażeń arytmetycznych należy zwrócić uwagę na typ wyniku, szczególnie w przypadku, gdy w wyrażeniu biorą udział zmienne różnych typów. Kolejność wykonywania operacji zależy od priorytetu operatora, wg kolejności: potęgowanie, mnożenie i dzielenie oraz dodawanie i odejmowanie. Kolejność wykonywania działań można ustalać dowolnie stosując nawiasy.

Wyrażenia arytmetyczne Wyrażenia arytmetyczne – służą do obliczania wartości zmiennych liczbowych. W wyrażeniach arytmetycznych mogą wystąpić następujące elementy: stałe arytmetyczne, odwołania do zmiennych, odwołania do elementów tablic, wywołania funkcji wewnętrznych i zewnętrznych.

Służą do wyznaczania wartości logicznej typu PRAWDA lub FAŁSZ. Wyrażenia logiczne Służą do wyznaczania wartości logicznej typu PRAWDA lub FAŁSZ. Elementami wyrażenia logicznego są: stałe i zmienne logiczne, elementy tablic logicznych, wywołania funkcji logicznych, operatory logiczne i operatory relacji. Najczęściej stosowane operatory logiczne i relacji to: negacja, koniunkcja, alternatywa, tożsamość, nie tożsamość. Większość, mniejszość, większość lub równość, mniejszość lub równość, równość, nie-równość

Elementami wyrażeń tekstowych są: Wyrażenia tekstowe Służą do przetwarzania zmiennych tekstowych oraz do zbierania określonych informacji o tekstach (np. określanie długości, położenia określonego znaku w łańcuchu, itp.). Elementami wyrażeń tekstowych są: stałe i zmienne tekstowe, podłańcuchy, wywołania funkcji tekstowych.

Instrukcje Instrukcje są jednym z najbardziej podstawowych elementów języka programowania. Instrukcje czynne: instrukcje przypisania, instrukcje sterujące: skoku, zatrzymania, wstrzymania, końca, powrotu, warunkowa, wyboru, powtórzeń (pętli), wejścia-wyjścia. Instrukcje bierne: Opis struktury programu i specyfikacja formatu danych;

Przykładowe instrukcje LOGO FORWARD a (RT) - ruch żółwia o a kroków do przodu; BACK a (BK) - ruch żółwia o a kroków do tyłu; PENUP (PU) - podnosi „pióro” – żółw nie rysuje; PENDOWN (PD) - opuszcza „pióro” – żółw rysuje podczas ruchów; HIDETURTLE (HT) - chowa żółwia, żółw rysuje, ale pozostaje niewidoczny; SHOWTURTLE (ST) - pokazuje żółwia, żółw jest widoczny przy rysowaniu; HOME - żółw wraca do środka ekranu; PENERASE - zółw kasuje (gumuje) linie; PENPAINT - przywraca „zwykłe” rysowanie po PENERASE;   …

Instrukcja przypisania Pozwala nadawać zmiennym określoną wartość. Instrukcja przypisania ma postać: zmienna := wyrażenie lub zmienna = wyrażenie lub jeszcze inaczej (zależy od konkretnego j.p.) Np. LOGO: MAKE …

IDŹ DO nazwa_miejsca_w_programie Instrukcja skoku Służy do przeniesienia punktu sterowania w inne, wcześniej zdefiniowane, miejsce programu. Instrukcja skoku nie jest zalecana przez teoretyków programowania. Instrukcja skoku ma ogólną postać logiczną: IDŹ DO nazwa_miejsca_w_programie Nie we wszystkich j.p. instrukcja skoku jest dostępna.

Instrukcja skoku Program z instrukcjami skoku staje się trudny do analizy!

Instrukcja zatrzymania Służy do bezwarunkowego zakończenia wykonywanego programu. Instrukcja często spotykana w blokach podejmowania decyzji, uruchamiana gdy nie są spełnione warunki do wykonywania dalszych działań.

Instrukcja powrotu Instrukcja powrotu – służy do wyjścia z podprogramu, procedury i funkcji.

Instrukcja zatrzymania/powrotu – LOGO przykład TO TRI :N REPEAT 3 [FD :N RT 120] END TO HEXAGON :N REPEAT 6 [TRI :N RT 60] TO SPIDERWEB :N IF :N > 100 [STOP] HEXAGON :N SPIDERWEB :N + 10

Służy do podejmowania decyzji w zależności od postawionych warunków: Instrukcja warunkowa Służy do podejmowania decyzji w zależności od postawionych warunków: JEŻELI warunek TO instrukcja lub JEŻELI warunek_1 TO instrukcja_1 W INNYCH PRZYPADKACH instrukcja_2 gdzie warunek jest dowolnym wyrażeniem arytmetycznym, relacją lub wyrażeniem logicznym, a instrukcja dowolnym blokiem poleceń, wykonywanym gdy warunek jest prawdziwy.

Instrukcja warunkowa – LOGO IF :N > 100 [FORWARD 100] - jeśli :N przekracza 100, idź do przodu o 100 kroków; TEST :N > 100 IFTRUE [FORWARD 100] IFFALSE [FORWARD :N] - jeśli :N przekracza 100, idź do przodu o 100 kroków, jeśli jest mniejsze, to idź o :N kroków; IFELSE :N > 100 [FORWARD 100][FORWAD :N]

Instrukcje powtórzeń (pętli) Instrukcje powtórzeń (pętle) – służą do wielokrotnego wykonania tego samego bloku instrukcji. Rozróżnia się dwa podstawowe typy instrukcji powtórzeń: o znanej z góry liczbie powtórzeń. o nieznanej z góry liczbie powtórzeń: z warunkiem “na początku”, z warunkiem “na końcu”.

Instrukcje powtórzeń (pętli) - for

Instrukcje powtórzeń (pętli) - while

Instrukcje powtórzeń (pętli) – LOGO REPEAT 4 [FD 100 RT 90] REPEAT 6 [FD 80 RT 60]

Instrukcje wejścia wyjścia – wymiana danych Potrzeba wymiany danych między różnymi modułami (podprogramami, funkcjami i procedurami). Współpraca z klawiaturą, ekranem, drukarką itp. Programy komputerowe odczytują pewne dane z plików, przekształcają je lub na ich podstawie obliczają nowe dane, a następnie zapisują wyniki do pliku. Język programowania powinien umożliwiać zapis i odczyt, oraz wykonywanie podstawowych działań na plikach

Procedury Procedura – samodzielny fragment programu : zawiera oznaczenie początku i końca, obszar deklaracji typów, bloki instrukcji, itd. Może wymagać zazwyczaj przekazania listy zmiennych o określonych typach. Procedura może być wywoływana w innych fragmentach programu.

Funkcje Funkcja – jest to samodzielny segment programu. Działa podobnie jak procedura, ale w odróżnieniu od procedury, funkcja zwraca jakiś wynik.

Funkcje i procedury – LOGO TO KWADRAT REPEAT 4 [FD 100 RT 90] END TO KWADRAT2 :BOK REPEAT 4 [FD :BOK RT 90]

Komentarze Są to teksty służące do opisu kodu źródłowego. Powinny zawierać logiczny sens zastosowania danej sekwencji instrukcji, o ile nie jest on oczywisty (nadmiar komentarzy może też zmniejszyć przejrzystość samego kodu!). Najczęściej objaśnia się ważniejsze pętle, skoki, sprawdzanie warunków, itp.

Przykłady języków programowania Jest wiele języków programowania. Różnią się głównie zastosowaniem, ale także przyjętą koncepcją programowania, szybkością działania programów itp.

LOGO Język programowania stworzony jako środek do nauczania informatyki i matematyki. Został zaprojektowany na MIT pod koniec lat 60. Używa tzw. "grafiki żółwia" (ang. turtle graphics). Początkowo język Logo służył do sterowania robotem zwanym ze względu na swój wygląd "żółwiem". Robot ten po wpisaniu komendy NAPRZÓD 50 przemieszczał się po podłodze o pięćdziesiąt kroków albo np. obracał się w prawo o kąt prosty po komendzie PRAWO 90. "Żółw" wyposażony był także w specjalne pióro, za pomocą którego mógł znaczyć trasę swojej wędrówki. Istnieją "narodowe" wersje Logo, w których komendy są w różnych językach. Wraz z upływem czasu, gdy powstały graficzne terminale komputerów, żółw Logo przeniósł się z podłogi na ekran monitora. "Żółw ekranowy" jest znacznie tańszy w eksploatacji, szybszy oraz posiada znacznie więcej możliwości. Mimo to, "żółwie podłogowe" są nadal interesujące chociażby ze względu na możliwość pomiaru właściwości otoczenia (np. temperatury, rozmieszczenia przeszkód itp.).

PASCAL Dawniej jeden z najpopularniejszych języków programowania, uniwersalny, wysokiego poziomu, ogólnego zastosowania. Został opracowany przez Niklausa Wirtha w 1970 roku. Nazwa języka pochodzi od nazwiska francuskiego fizyka, matematyka i filozofa Blaise Pascala. Służył celom edukacyjnym do nauki programowania strukturalnego. Obecnie na bazie Pascala powstał język Dephi, popularny w przypadku pisania aplikacji dla Windows.

C/ C++ Poprzednikiem języka C był interpretowany język B, który Ritchie rozwinął w język C. Pierwszy okres rozwoju języka to lata 1969-1973. Uważany za język niskiego poziomu, wykorzystywany głównie do pisania szybkich programów, pracujących „blisko sprzętu”. Na bazie języka C w latach osiemdziesiątych Bjarne Stroustrup stworzył język C++, który wprowadza możliwość programowania obiektowego. Język C++ jest obecnie jednym z najpopularniejszych języków programowania.

JAVA Java to obiektowy język programowania. Java jest językiem tworzenia programów źródłowych kompilowanych do kodu pośredniego, czyli postaci wykonywanej przez maszynę wirtualną. Język cechuje się silnym typowaniem. Jego podstawowe koncepcje zostały przejęte z języka Smalltalk (maszyna wirtualna, odśmiecanie pamięci) oraz z języka C++ (duża część składni i słów kluczowych).

C# .NET Obiektowy język programowania zaprojektowany dla firmy Microsoft. Program napisany w tym języku kompilowany jest do języka pośredniego, wykonywanego w środowisku uruchomieniowym (podobnie jak JAVA). Wykonanie skompilowanego programu przez system operacyjny bez takiego środowiska nie jest możliwe. Ma wiele cech języka C++, jest językiem w pełni obiektowym.

Podsumowanie

Symboliczny język włoskiej mafii Franko sprawia problemy. Wiecie co macie zrobić… Język symboliczny Kod maszynowy

Program Program komputerowy to uporządkowany zbiór instrukcji wykonywanych przez komputer, realizujących określone zadanie (algorytm) wyrażony za pomocą określonego języka programowania.

Język programowania to zbiór abstrakcyjnych definicji i reguł syntaktycznych, które można przełożyć na kod maszynowy. Reguły te opisane są przez gramatykę. Ten przekład może być lepszy lub gorszy. Dlatego programując w danym języku mamy do czynienia z konkretną implementacją języka.