PODSTAWY PROGRAMOWANIA
|
|
- Justyna Dobrowolska
- 6 lat temu
- Przeglądów:
Transkrypt
1 PODSTAWY PROGRAMOWANIA Andrzej Marciniak Prezentacja multimedialna przygotowana za pomocą systemu Corel Presentations X3 Copyright by Andrzej Marciniak PP-4(1 z 88)
2 Na poprzednim wykładzie... przegląd konstrukcji języka Delphi Pascal (program, moduł, biblioteka, funkcje i procedury, klasy i obiekty, typy danych, zmienne, instrukcje) struktura programu i modułu podstawowe elementy języka (symbole podstawowe, słowa kluczowe i dyrektywy języka, identyfikatory, liczby, łańcuchy, literały logiczne, komentarze i separatory) PP-4(2 z 88)
3 Na tym wykładzie... typy danych i ich opis definiowanie typów typy proste (porządkowe, rzeczywiste) typy łańcuchowe typy strukturalne (tablicowe, rekordowe, zbiorowe, plikowe) PP-4(3 z 88)
4 Definiowanie typów Każda zmienna występująca w programie (module, bibliotece łączonej dynamicznie) posiada swoją nazwę (identyfikator) i przyjmuje wartości z określonego zbioru. Zbiór ten nazywa się typem zmiennej. Typ zmiennej może być określony w deklaracji zmiennej (będzie dalej) lub w definicji typu. Jeśli zdefiniowano typ, to w deklaracji zmiennej można do niego odwołać się za pomocą identyfikatora typu. Stosowanie w programie (module, bibliotece łączonej dynamicznie) identyfikatorów typów (zamiast ich opisów) zwiększa czytelność programu oraz ułatwia jego strukturalizację. PP-4(4 z 88)
5 Definiowanie typów W języku Delphi występują dwie kategorie typów: typy podstawowe, typy ogólne. Postacie i zakresy wartości typów podstawowych są niezależne od procesora i systemu operacyjnego, co oznacza, że nie zmieniają się one przy różnych implementacjach języka. Typy ogólne zależą od procesora i systemu operacyjnego. W obecniej wersji języka Delphi występują cztery rodzaje typów predefiniowanych, w których rozróżnia się typy podstawowe i ogólne. Są to niektóre typy całkowite i rzeczywiste oraz typy znakowe i łańcuchowe. PP-4(5 z 88)
6 Definiowanie typów Typy dzielą się na: standardowe, niestandardowe. Typy standardowe są predefiniowane i nie wymagają żadnego opisu. Wszystkie typy wprowadzone przez programistę muszą zostać przez niego opisane. Opis taki może być używany bez uprzedniego nadania temu opisowi nazwy (np. w deklaracjach zmiennych) albo też może być podany w definicji typu. Definicja opisuje typ i jednocześnie przyporządkowuje mu identyfikator. PP-4(6 z 88)
7 Definiowanie typów Składnia definicji typów jest następująca: type sekwencja-definicji-typów przy czym każdy element sekwencji definicji typów ma postać identyfikator-typu = oznaczenie-typu; gdzie oznaczenie typu jest opisem typu lub identyfikatorem typu (identyfikatorem typu w opisie typu może być identyfikator typu standardowego lub typu zdefiniowanego wcześniej). PP-4(7 z 88)
8 Definiowanie typów Wystąpienie konstrukcji postaci type identyfikator-typu-1 = identyfikator-typu-2; powoduje, że typ określony za pomocą pierwszego identyfikatora będzie uważany za identyczny z typem podanym przez drugi identyfikator. Podczas wykonywania programu konsekwencją tego faktu będzie niemożliwość rozróżnienia typów zmiennych zadeklarowanych następująco: var zmienna-1 : identyfikator-typu-1; zmienna-2 : identyfikator-typu-2; PP-4(8 z 88)
9 Definiowanie typów W celu rozróżnienia typów definiowanych przez inne typy, należy posługiwać się konstrukcją type identyfikator-typu-1 = type identyfikator-typu-2; która wymusza na kompilatorze utworzenie nowego, innego logicznie typu o nazwie określonej przez pierwszy identyfikator. Oczywiście zbiory wartości obu typów są takie same, a typ określony drugim identyfikatorem powinien być zdefiniowany wcześniej lub oznaczać identyfikator typu standardowego. PP-4(9 z 88)
10 Definiowanie typów Do każdej definicji typu mogą być dołączone następujące dyrektwy języka (nazywa się je dyrektywami wskazówkowymi): platform - oznacza, że definiowany typ jest specyficzny dla określonego systemu operacyjnego i może nie być implementowany w innych systemach, library - oznacza ograniczenie typu do pewnej biblioteki, deprecated - oznacza, że definiowany typ jest przestarzały lub został zdefiniowany dla zgodności z wcześniejszymi wersjami języka. Dyrektywy te powodują wyłącznie wygenerowanie podczas kompilacji pewnych wskazówek lub ostrzeżeń. Mogą być stosowane także w deklaracjach zmiennych, deklaracjach i definicjach funkcji, procedur i metod, deklaracjach pól w rekordach i klasach oraz w nagłówkach modułów. PP-4(10 z 88)
11 Typy proste Typy proste są podstawowymi typami języka Delphi i za ich pomocą określa się bardziej złożone struktury danych. Typy proste dzielimy na: # typy porządkowe, # typy rzeczywiste. Wszystkie typy proste składają się ze skończonego i uporządkowanego zbioru wartości. Dzięki temu możliwe jest m. in. wykonywanie na wartościach tych typów operacji porównań. PP-4(11 z 88)
12 Typy proste Typy porządkowe Do typów porządkowych zaliczamy typy: wyliczeniowe, całkowite, znakowe, logiczne, okrojone. PP-4(12 z 88)
13 Typy proste Typy porządkowe Dla wartości każdego typu porządkowego są określone wartości poprzednie i następne (z wyjątkiem wartości krańcowych). Z każdą wartością typu porządkowego jest skojarzona liczba porządkowa (wartość całkowita) jednoznacznie określająca jej umiejscowienie wśród wszystkich wartości danego typu. Z wyjątkiem typów całkowitych domyślnie pierwsza wartość w każdym typie porządkowym ma liczbę porządkową 0, następna numer 1 itd. PP-4(13 z 88)
14 Typy proste Typy porządkowe S typy wyliczeniowe Typy wyliczeniowe stosuje się zwykle dla zbiorów o niewielkiej liczbie elementów, na których nie wykonuje się operacji arytmetycznych. Definicja jednego typu wyliczeniowego jest następująca: type identyfikator-typu = (lista-identyfikatorów); W liście identyfikatorów specyfikuje się identyfikatory (nazwy), które tworzą zbiór wartości danego typu wyliczeniowego. Należy przy tym pamiętać, że ten sam identyfikator nie może być użyty do oznaczania wartości w dwu różnych typach wyliczeniowych, których zakresy pokrywają się, oraz że w obrębie danego typu identyfikatory elementów muszą być różne. PP-4(14 z 88)
15 Przykłady Typy proste Typy porządkowe S typy wyliczeniowe type tydzień = (poniedziałek, wtorek, środa, czwartek, piątek, sobota, niedziela); Typ tydzień sklada się z siedmiu elementów o wyspecyfikowanych identyfikatorach. Liczbą porządkową identyfikatora poniedziałek jest 0, a identyfikatora niedziela liczba 6. PP-4(15 z 88)
16 Typy proste Typy porządkowe S typy wyliczeniowe Przykłady Opis typu wyliczeniowego może być podany bezpośrednio w deklaracji zmiennej, na przykład var tydzień_1 : (poniedziałek, wtorek, środa, czwartek, piątek, sobota, niedziela); Jeśli jednak użyto powyższej deklaracji, to w zakresie ważności identyfikatora tydzień_1 nie jest możliwe zadeklarowanie innej zmiennej o takich samych elementach typu wyliczeniowego. W zakresie ważności identyfikatora tydzień_1 ewentualna deklaracja var tydzień_2 : (poniedziałek, wtorek, środa, czwartek, piątek, sobota, niedziela); jest błędna (błąd kompilacji). PP-4(16 z 88)
17 Przykłady Typy proste Typy porządkowe S typy wyliczeniowe W celu poprawnego zadeklarowania zmiennych tydzień_1 i tydzień_2 należy użyć konstrukcji var tydzień_1, tydzień_2 : (poniedziałek, wtorek, środa, czwartek, piątek, sobota, niedziela); PP-4(17 z 88)
18 Typy proste Typy porządkowe S typy wyliczeniowe Domyślnie liczby porządkowe kolejnych elementów w typach porządkowych rozpoczynają się od 0. Można to zmienić dodając po specyfikacji elementu znak równości i odpowiednią wartość. Przyjmuje się przy tym, że element, dla którego nie podano liczby porządkowej ma liczbę porządkową o jeden większą niż element poprzedni. PP-4(18 z 88)
19 Przykład Typy proste Typy porządkowe S typy wyliczeniowe Z następującej definicji: type rozmiar = (mały = 2, średni = 4, duży = mały +średni); wynika, że liczbą porządkową elementu mały jest 2, elementu średni S 4, a elementu duży S 6. Definicja ta mogłaby sugerować, że typ rozmair ma trzy elementy. Elementów jest jednak pięć o liczbach porządkowych 2, 3, 4, 5 i 6, chociaż tylko trzy z nich mają swoje nazwy. Pozostałe dwa elementy (o liczbach porządkowych 3 i 5) mają anonimowe wartości. Wartości te mogą być przypisane zmiennym typu rozmiar. Jeśli taką zmienną jest np. mój_rozmiar, to poprawna będzie instrukcja mój_rozmiar := rozmiar(3); PP-4(19 z 88)
20 Typy proste Typy porządkowe S typy całkowite Typy całkowite są predefiniowane (nie wymagają opisu). Wszystkie typy całkowite są podzbiorami zbioru liczb całkowitych. Liczba porządkowa elementu dowolnego typu całkowitego jest równa wartości tego elementu. Wśród typów całkowitych wyróżniamy typy podstawowe i ogólne. PP-4(20 z 88)
21 Typy proste Typy porządkowe S typy całkowite Do podstawowych typów całkowitych zalicza się: typ ShortInt (Int8), zawierający liczby całkowite z przedziału [ 128, 127], typ SmallInt (Int16) - przedział [ , ], typ LongInt (Int32) - [ , ], typ Int64 - przedział [ 2 63, ], typ Byte (UInt8) - przedział [0, 255], typ Word (UInt16) - przedział [0, ], typ LongWord (UInt32) - przedział [0, ], typ UInt64 - przedział [0, ]. PP-4(21 z 88)
22 Typy proste Typy porządkowe S typy całkowite Ogólnymi typami całkowitymi, a więc typami zależnymi od rodzaju procesora i systemu operacyjnego, są: typ Integer, którego wartościami w 32-bitowej implementacji języka Delphi są liczby całkowite z przedziału od do , typ Cardinal, który przy implementacji 32-bitowej obejmuje liczby całkowite z przedziału od 0 do PP-4(22 z 88)
23 Typy proste Typy porządkowe S typy całkowite Podstawowe typy całkowite (poza typem UInt64) są podzbiorami typu Int64, chociaż wykonywanie operacji arytmetycznych na elementach typów Int64 i UInt64 w połączeniu z elementami innych typów całkowitych może doprowadzić do błędnych wyników. Dla typu LongInt istnieje predefiniowana stała MaxLongint, która określa maksymalną wartość w tym typie, tj. liczbę Dla typu Integer zdefiniowano stałą MaxInt określającą maksymalną wartość w tym typie (w 32-bitowej implementacji języka stała ta jest równa ). PP-4(23 z 88)
24 Typy proste Typy porządkowe S typy znakowe W języku Delphi zdefiniowano dwa podstawowe typy znakowe i jeden ogólny typ znakowy. Każdy z tych typów oznacza się za pomocą predefiniowanego identyfikatora. Podstawowymi typami znakowymi są: AnsiChar, WideChar. PP-4(24 z 88)
25 Typy proste Typy porządkowe S typy znakowe Wartościami typu AnsiChar są znaki zajmujące jeden bajt pamięci, uporządkowane zgodnie z tabelą rozszerzonego zestawu znaków ASCII. Elementy typu WideChar zajmują dwa bajty pamięci (słowo) i są znakami uporządkowanymi zgodnie z zestawem znaków Unicode. Pierwszych 256 znaków z tego zestawu pokrywa się ze znakami ASCII. Ogólny typ znakowy jest oznaczany za pomocą predefiniowanego identyfikatora Char. W obecnej implementacji języka Delphi odpowiada on typowi WideChar. PP-4(25 z 88)
26 Typy proste Typy porządkowe S typy logiczne Standardowymi typami logicznymi są typy: Boolean (elementy zajmują jeden bajt), ByteBool (jeden bajt), WordBool (dwa bajty), LongBool (cztery bajty). Wartości typów logicznych są oznaczane za pomocą dwu predefiniowanych literałów (stałych): False i True, oznaczających odpowiednio wartości logiczne fałsz i prawda, przy czym w sensie uporządkowania stała False poprzedza stałą True. PP-4(26 z 88)
27 Typy proste Typy porządkowe S typy okrojone Typy okrojone służą do ograniczania zakresów wartości dowolnego z dotychczas przedstawionych typów porządkowych. Definicja jednego typu okrojonego ma postać: type identyfikator-typu = stała-1.. stała-2; przy czym obie stałe muszą być tego samego typu porządkowego, zwanego typem bazowym. Pierwsza z nich podaje ograniczenie dolne i nie może być większa od drugiej ograniczenia górnego. PP-4(27 z 88)
28 Przykłady Typy proste Typy porządkowe S typy okrojone type litera = A.. Z ; Typ okrojony litera jest podzbiorem standardowego typu Char (WideChar). PP-4(28 z 88)
29 Przykłady Typy proste Typy porządkowe S typy okrojone type tydzień = (poniedziałek, wtorek, środa, czwartek, piątek, sobota, niedziela); dni_robocze= poniedziałek.. piątek; W definicji tej typ tydzień jest typem wyliczeniowym, a typ dni_robocze typem okrojonym, którego elementami są poniedziałek, wtorek, środa, czwartek i piątek. PP-4(29 z 88)
30 Przykłady Typy proste Typy porządkowe S typy okrojone const a = 10; b = 20; type przedział = 2*(a b).. 2*(a+b); W definicji typu okrojonego przedzial zastosowano wyrażenia stałe. Elementami tego typu są liczby całkowite z przedziału [ 20, 60]. Następująca definicja jest błędna (dlaczego?): type przedział = (a b)*2.. 2*(a+b); PP-4(30 z 88)
31 Typy proste Typy rzeczywiste Wszystkie typy rzeczywiste są predefiniowane. Każdy z dostępnych typów rzeczywistych jest dyskretnym i skończonym podzbiorem zbioru liczb rzeczywistych (w sensie matematycznym). W języku Delphi zdefiniowano sześć podstawowych typów rzeczywistych i jeden ogólny typ rzeczywisty. PP-4(31 z 88)
32 Typami podstawowymi są: Typy proste Typy rzeczywiste Real48, będący typem rzeczywistym, którego elementy zajmują po sześć bajtów pamięci, Single, oznaczający typ rzeczywisty o pojedynczej długości, którego elementy zajmują cztery bajty pamięci każdy, Double, będący typem rzeczywistym o podwójnej długości (każdy element tego typu zajmuje osiem bajtów pamięci), PP-4(32 z 88)
33 Typami podstawowymi są: Typy proste Typy rzeczywiste Extended, oznaczający typ rzeczywisty o rozszerzonej długości, w którym każdy element zajmuje 10 bajtów pamięci, Comp, którego elementy są liczbami całkowitymi z przedziału od 2 63 do , tj. od około 9.2e18 do około 9.2e18, zajmującymi po osiem bajtów pamięci, PP-4(33 z 88)
34 Typami podstawowymi są: Typy proste Typy rzeczywiste Currency, który jest typem danych stałoprzecinkowych przeznaczonych do obliczeń pieniężnych o wartościach od do , zajmujących też po osiem bajtów. PP-4(34 z 88)
35 Typy proste Typy rzeczywiste Mantysa wartości typu Real48 może zawierać do 11 lub 12 cyfr znaczących (w zależności od tego, czy wyspecyfikowano kropkę dziesiętną czy nie). Dla typu Single mantysa może zawierać odpowiednio 7 8 cyfr znaczących, dla typu Double 15 lub 16 cyfr, a dla typu Extended 19 lub 20. Ogólnym typem rzeczywistym jest typ Real, który w 32-bitowej implementacji języka jest równoważny z typem Double. Oznacza to, że w implementacji tej elementy (wartości) ogólnego typu Real zajmują po osiem bajtów pamięci. PP-4(35 z 88)
36 Typy proste Typy rzeczywiste W systemie pomocy środowiska Delphi podano następujące najmniejsze dodatnie i największe wartości elementów podstawowych typów rzeczywistych Real48, Single, Double, Extended i ogólnego typu Real: typ najmniejsza wartość dodatnia największa wartość )))))))))))))))))))))))))))))))))))))))))))) Real48 2.9e e38 Single 1.5e e38 Double 5.0e e308 Extended 3.4e e4932 Real 5.0e e308 PP-4(36 z 88)
37 program FloatArithmetic; {$APPTYPE CONSOLE} {$R *.res} type num = Single; var n : Integer; ex: Extended; x : num; begin x:=1; n:=0; repeat ex:=x; x:=x/2; Inc (n) until x=0; Writeln ( 2^, n+1, =, ex:26); Readln end. Typy proste Typy rzeczywiste Ten program wykazuje, że najmniejszą wartością dodatnią zmiennej typu Single jest , Podobne testy można przeprowadzić dla pozostałych typów rzeczywistych! PP-4(37 z 88)
38 Typy łańcuchowe Łańcuchy służą do reprezentowania ciągu znaków, w tym niewidocznego znaku spacji. W języku Delphi występują następujące rodzaje typów łańcuchowych: łańcuchy krótkie, łańcuchy długie (ANSI), łańcuchy Unicode, łańcuchy zakończone znakiem pustym, łańcuchy zasobowe. PP-4(38 z 88)
39 Typy łańcuchowe Typy łańcuchowe krótkie Elementami typu łańcuchowego krótkiego są łańcuchy, którym pamięć przydziela się statycznie i których długość może zmieniać się dynamicznie od 0 do maksymalnej długości podanej w definicji typu łańcuchowego lub przyjmowanej domyślnie. Przy wyłączonej dyrektywie $H (w stanie {$H }) typ łańcuchowy krótki określa słowo kluczowe string. PP-4(39 z 88)
40 Typy łańcuchowe Typy łańcuchowe krótkie Jeśli po słowie string wyspecyfikowano rozmiar ujęty w nawiasy kwadratowe (string [rozmiar]), gdzie rozmiar oznacza liczbę całkowitą z przedziału od 0 do 255 lub nazwę literału o wartości całkowitej z tego samego przedziału, to bez względu na stan dyrektywy kompilatora $H określenie takie oznacza łańcuch krótki. Brak wyspecyfikowania rozmiaru w stanie {$H } powoduje domyślne przyjęcie długości 255 znaków (dla łańcucha krótkiego). PP-4(40 z 88)
41 Typy łańcuchowe Typy łańcuchowe krótkie Bez względu na stan dyrektywy kompilatora $H typ łańcuchowy krótki można zdefiniować za pomocą predefiniowanego identyfikatora ShortString. Elementami typu ShortString są łańcuchy (krótkie) o maksymalnej długości 255 znaków. Każdy znak łańcucha krótkiego zajmuje jeden bajt pamięci, a cała dana zajmuje liczbę bajtów pamięci wynikającą z liczby znaków i zwiększoną o jeden. W tym dodatkowym bajcie pamięci (o indeksie 0) jest przechowywana informacja o aktualnym rozmiarze łańcucha. PP-4(41 z 88)
42 Przykłady Typy łańcuchowe Typy łańcuchowe krótkie type nazwisko = string [20]; Typ łańcuchowy krótki nazwisko może zawierać dane będące łańcuchami o maksymalnej długości 20 znaków. type napis = ShortString; Bez względu na stan dyrektywy $H definicja ta określa typ łańcuchowy krótki napis, którego elementami mogą być łańcuchy o maksymalnej długości 255 znaków. PP-4(42 z 88)
43 Typy łańcuchowe Typy łańcuchowe długie Typy łańcuchowe długie są oznaczane za pomocą predefiniowanego identyfikatora AnsiString. Dla elementów typów łańcuchowych długich nie jest określona ich maksymalna długość. Pamięć jest im przydzielana dynamicznie, a ich długość jest ograniczona rozmiarem pamięci przeznaczonej dla programu (teoretycznie do 2 GB). PP-4(43 z 88)
44 Typy łańcuchowe Typy łańcuchowe długie Zmienna typu łańcuchowego długiego zajmuje cztery bajty pamięci i zawiera wskaźnik do łańcucha, tj. wskazuje na miejsce w pamięci, w którym znajduje się łańcuch. Łańcuch długi znajdujący się w pamięci jest zakończony znakiem pustym (znakiem ASCII o kodzie 0), który jednak nie jest jego częścią składową (nie zalicza się do łańcucha). Gdy zmienna typu łańcuchowego długiego nie zawiera łańcucha (zawiera łańcuch o długości 0), jej wartością jest adres pusty (nil). PP-4(44 z 88)
45 Typy łańcuchowe Łańcuchy Unicode Do reprezentowania łańcuchów złożonych ze znaków zestawu znaków Unicode służą predefiniowane typy UnicodeString i WideString. W domyślnym stanie dyrektywy kompilatora $H ({$H +}) typ UnicodeString może też być oznaczany za pomocą słowa kluczowego string. Maksymalne długości elementów obu typów łańcuchowych są ograniczone wyłącznie dostępną pamięcią. Zmienne tych typów zajmują jednak tylko cztery bajty pamięci i zawierają wskaźnik do dynamicznie przydzielonego obszaru pamięci. Wartość nil takich zmiennych oznacza, że łańcuch jest pusty. PP-4(45 z 88)
46 Typy łańcuchowe Łańcuchy Unicode Elementami łańcucha typu UnicodeString mogą być znaki jedno- lub wielobajtowe (w 32-bitowej implementacji języka są to znaki dwubajtowe), a typu WideString S znaki dwubajtowe zestawu znaków Unicode. PP-4(46 z 88)
47 Typy łańcuchowe Łańcuchy zakończone znakiem pustym Przez pojęcie łańcucha zakończonego znakiem pustym rozumie się łańcuch podobny do łańcucha długiego i łańcuchów typów UnicodeString i WideString, tyle że opisany za pomocą tablicy znaków (niekoniecznie jednobajtowych) indeksowanej od 0. Przykłady type nazwisko = array [0..15] of Char; nazwa = array [0..92] of WideChar; PP-4(47 z 88)
48 Typy łańcuchowe Łańcuchy zakończone znakiem pustym Podstawowa różnica w stosowaniu zwykłych łańcuchów i łańcuchów zakończonych znakiem pustym polega na wykonywaniu operacji na tych drugich za pomocą wskaźników. Do reprezentacji wskaźników do łańcuchów zakończonych znakiem pustym służy predefiniowany typ PChar. Zmiennej tego typu można przypisać literał zmienny, a każde jej wystąpienie można zastąpić tablicą znaków indeksowaną od 0. PP-4(48 z 88)
49 Przykład Typy łańcuchowe Łańcuchy zakończone znakiem pustym Jeśli zmienną wsk_znak zadeklarujemy następująco: var wsk_znak : PChar; to wykonanie instrukcji przypisania wsk_znak := Delphi XE2 ; spowoduje, że zmienna ta będzie wskazywała na obszar pamięci zawierający podany łańcuch. Ten sam skute da zastosowanie konstrukcji const łańcuch : array [0..10] of Char = Delphi XE2 ; var wsk_znak : PChar;... wsk_znak:=@łańcuch; PP-4(49 z 88)
50 Typy łańcuchowe Łańcuchy zasobowe Łańcuchy zasobowe są to stałe, które są automatycznie zapamiętywane w zasobie i kompilowane do plików.exe,.dll i.dpl. Deklaracja pojedynczego łańcucha zasobowego ma postać: resourcestring identyfikator = wyrażenie-stałe; gdzie wyrażenie stałe oznacza w ogólności wyrażenie typu łańcuchowego, które może być obliczone przez kompilator. W najprostszym przypadku jest to łańcuch. PP-4(50 z 88)
51 Typy łańcuchowe Łańcuchy zasobowe Łańcuchy zasobowe umożliwiają przygotowanie programów okienkowych, w których teksty ukazujące się na ekranie będą wyświetlane w zależności od kraju użytkownika programu. Łańcuchy zasobowe są zapisywane w oddzielnym pliku.drc. Aby utworzyć dla danego programu jeden taki plik, wszystkie łańcuchy zasobowe należy umieścić w jednym module. Zasoby, które są w wyizolowanych plikach.drc mogą być łatwo doprowadzone do odpowiednich wersji językowych za pomocą programu narzędziowego Resource DLL Wizard, uruchamianego poleceniem New Other Delphi Projects Resource DLL Wizard. Dotyczy to także plików.dfm, w których środowisko Delphi automatycznie zapisuje zasoby zawierające menu, okienka dialogowe i mapy bitowe. PP-4(51 z 88)
52 Typy strukturalne Typy te stosuje się do opisu obiektów złożonych. Każdy z typów strukturalnych definiuje się przez podanie typów elementów i metody strukturalizacji, która zarazem określa sposób dostępu do elementów. W ogólności definicja pojedynczego typu strukturalnego ma postać type identyfikator-typu = opis-typu-strukturalnego; PP-4(52 z 88)
53 Typy strukturalne Opis dowolnego typu strukturalnego może zaczynać się od słowa kluczowego packed. Jego użycie jest wskazówką dla kompilatora, aby wybrał reprezentację danej struktury zajmującą możliwie jak najmniej bajtów pamięci. Reprezentację taką nazywamy postacią spakowaną lub upakowaną. Domyślnie kompilator umieszcza w pamięci poszczególne elementy składowe struktur od granicy słowa lub podwójnego słowa, co zapewnia szybszy dostęp do nich. Użycie słowa kluczowego packed powoduje zapamiętywanie elementów struktur w kolejnych bajtach, a tym samym zmniejsza całkowity obszar pamięci zajętej przez strukturę. Programista ma zatem do wyboru optymalizację programu albo ze względu na szybsze jego działanie, albo na mniejszą zajętość pamięci. PP-4(53 z 88)
54 Typy strukturalne Typy tablicowe Tablica reprezentuje indeksowany zbiór elementów tego samego typu. Jeśli w opisie typu tablicowego podaje się liczbę wymiarów i elementów w każdym wymiarze, to tablica ma z góry określony rozmiar. Tablice takie nazywamy tablicami statycznymi. Drugim rodzajem tablic są tablice dynamiczne, dla których w opisie typu tablicowego specyfikuje się wyłącznie typ jej elementów, a pamięć przydziela się w części wykonawczej jednostki programowej (programu, modułu, biblioteki, funkcji lub procedury). PP-4(54 z 88)
55 Typy strukturalne Typy tablicowe S tablice statyczne Tablica statyczna składa się z ustalonej liczby elementów tego samego typu, zwanego typem składowym, który może być zarówno typem prostym lub łańcuchowym, jak i typem strukturalnym. Za pomocą tablic są reprezentowane regularne układy danych, np. wektory i macierze. Dostęp do poszczególnych elementów tablic uzyskuje się za pomocą indeksowania. Indeksem może być dowolne wyrażenie, którego wartość jest zgodna w sensie przypisania (będzie dalej) z typem indeksowym. Dopuszczalny zakres indeksów jest podany w definicji typu tablicowego. PP-4(55 z 88)
56 Typy strukturalne Typy tablicowe S tablice statyczne Definicja pojedynczego typu tablicy statycznej ma postać type identyfikator-typu = array [typy-indeksowe] of typ-składowy; gdzie typy indeksowe są opisami typu porządkowego, przy czym poszczególne opisy oddziela się przecinkami. Typ składowy oznacza dowolny typ. PP-4(56 z 88)
57 Przykłady Typy strukturalne Typy tablicowe S tablice statyczne type wektor = array [0..50] of Integer; Powyższa definicja określa typ wektor jako typ tablicowy, o elementach ogólnego typu całkowitego (Integer), ponumerowanych od 0 do 50. PP-4(57 z 88)
58 Przykłady Typy strukturalne Typy tablicowe S tablice statyczne type macierz = array [1..20] of array [1..30] of Extended; Typem składowym, tj. typem każdego z 20 elementów typu tablicowego macierz, ponumerowanych od 1 do 20, jest 30-elementowa tablica liczb rzeczywistych (Extended) o elementach ponumerowanych od 1 do 30. Elementami typu macierz są więc tablice dwuwymiarowe o 600 elementach typu Extended. PP-4(58 z 88)
59 Przykłady Typy strukturalne Typy tablicowe S tablice statyczne type macierz = array [1..20, 1..30] of Extended; Definicja ta określa taki sam typ tablicowy jak poprzednio. Typ tablicowy macierz został tu wprost zdefiniowany jako zbiór dwuwymiarowych tablic, o zakresie pierwszego indeksu od 1 do 20 (liczby całkowite) i drugiego indeksu od 1 do 30 (także liczby całkowite). Ze względu na nieco krótszy zapis, tego rodzaju definicje zaleca się stosować do opisu typów tablicowych wielowymiarowych. PP-4(59 z 88)
60 Typy strukturalne Typy tablicowe S tablice statyczne Przykłady type tablica = array [Boolean, 1..20, znak] of Char; type tablica = array [Boolean, 1..20] of array [znak] of Char; type tablica = array [Boolean] of array [1..20, znak] of Char; type tablica = array [Boolean] of array [1..20] of array [znak] of Char; Wszystkie powyższe definicje typu tablica określają taki sam typ tablicowy. Zauważmy, że typy indeksów określone są w różny sposób. PP-4(60 z 88)
61 Typy strukturalne Typy tablicowe S tablice dynamiczne Opis typu tablicowego (w definicji typu lub deklaracji zmiennej), który nie zawiera określenia typów indeksowych określa tablicę dynamiczną. Definicja pojedynczego typu tablicy dynamicznej ma postać type identyfikator-typu = array of typ-składowy; gdzie typ składowy oznacza dowolny typ. PP-4(61 z 88)
62 Typy strukturalne Typy tablicowe S tablice dynamiczne W chwili deklaracji zmiennej typu tablicy statycznej następuje przydzielenie jej odpowiedniego obszaru pamięci. Deklaracja zmiennej typu tablicy dynamicznej powoduje przydzielenie jej tylko czterech bajtów pamięci. Bajty te zawierają wskaźnik do miejsca pamięci, począwszy od którego są pamiętane wartości elementów tablicy (w chwili deklaracji zmiennej bajtom tym przypisuje się wartość nil oznaczającą adres pusty). Właściwe przydzielenie pamięci tablicy dynamicznej następuje przez wywołanie procedury standardowej SetLength lub DynArraySetLength, a zwolnienie przez przypisanie danej zmiennej wartości nil lub wywołanie dla niej procedury Finalize (będzie dalej). PP-4(62 z 88)
63 Typy strukturalne Typy rekordowe S rekordy klasyczne Rekordem (klasycznym) nazywa się złożoną strukturę danych, której składowe, zwane polami, mogą mieć różne charakterystyki (należeć do różnych typów). Poszczególne pola mogą być same strukturami złożonymi, przy czym liczba pól rekordu jest ustalona. PP-4(63 z 88)
64 Typy strukturalne Typy rekordowe S rekordy klasyczne Definicja pojedynczego typu rekordowego (klasycznego) jest następująca: type identyfikator-typu = record lista-deklaracji-pól end; (cdn.) PP-4(64 z 88)
65 Typy strukturalne Typy rekordowe S rekordy klasyczne Każda z deklaracji pól ma postać lista-nazw-pól : opis-typu; lub var lista-nazw-pól : opis-typu; Deklaracje pól mogą zawierać dyrektywy wskazówkowe. Ostatnia deklaracja (wariantowa) może mieć postać case deklaracja-pola-wyróżnikowego of wykaz- wariantów; lub case identyfikator-typu-porządkowego of wykaz- wariantów; (cdn.) PP-4(65 z 88)
66 Typy strukturalne Typy rekordowe S rekordy klasyczne Deklaracja pola wyróżnikowego wygląda następująco: identyfikator-pola-wyróżnikowego : identyfikator-typu- porządkowego Każdy element wykazu wariantów ma postać lista-etykiet-wyboru : (lista-deklaracji-pól) PP-4(66 z 88)
67 Typy strukturalne Typy rekordowe S rekordy klasyczne Deklaracja pól ustala listę stałych pól danego typu rekordowego i dla każdego pola określa jego nazwę oraz typ. Deklaracje wariantowe stosuje się co najmniej w dwóch przypadkach. Po pierwsze, gdy chcemy utworzyć jeden typ rekordowy zawierający różne typy danych, ale z góry wiemy, że tylko z jednego rodzaju danych będziemy korzystać dla każdej zmiennej tego typu rekordowego. Po drugie, gdy zamierzamy w różny sposób interpretować dane zapisywane w części wariantowej rekordu. PP-4(67 z 88)
68 Typy strukturalne Typy rekordowe S rekordy klasyczne Liczba bajtów zajętych przez elementy typów rekordowych zależy od użycia lub nie słowa kluczowego packed oraz od stanu dyrektywy przełącznikowej kompilatora $A. Przykłady type data = record rok : SmallInt; miesiac : ; dzien : end; PP-4(68 z 88)
69 Przykłady Typy strukturalne Typy rekordowe S rekordy klasyczne W poniższej definicji typu rekwar występują dwa pola stałe (w tym jedno wyróżnikowe). Pozostałe pola są wariantowe. Informacje zapisane w odpowiednim miejscu pamięci będzie można odczytać albo jako dwie wartości typu Byte, albo jako wartość typu SmallInt. type rekwar = record a : Extended; case b : Boolean of True : (c, d : Byte); False : (e : SmallInt) end; PP-4(69 z 88)
70 Przykłady Typy strukturalne Typy rekordowe S rekordy klasyczne Zastąpienie wiersza case b : Boolean of wierszem case Boolean of a więc zastąpienie deklaracji pola wyróżnikowego identyfikatorem typu porządkowego, spowoduje, że typ rekordowy będzie miał tylko jedno pole stałe i dwa lub jedno pole wariantowe. W przypadku zadeklarowania zmiennej r2 takiego typu, dostęp do jej pól wariantowych będzie możliwy za pomocą odwołań r2.c, r2.d i r2.e. PP-4(70 z 88)
71 Typy strukturalne Typy rekordowe S rekordy klasopodobne Rekordy mogą mieć strukturę bardziej złożoną, która przypomina strukturę klasy (będzie dalej). Oprócz pól elementami rekordów mogą być: - metody (w tym metody klasowe), - konstruktory, - własności (w tym własności klasowe), - pola klasowe, - typy zagnieżdżone. Elementy te zostaną szczegółowo omówione przy okazji opisu typu klasowego. Tutaj ograniczymy się do podania przykładu. PP-4(71 z 88)
72 Typy strukturalne Typy rekordowe S rekordy klasopodobne Przykład type rekord_kl = record type wzrost = Word; pole var wysoki : Word; pole klasowe class var niski : Word; konstruktor constructor Utwórz (wartość : Word); metoda procedure Pokaż; metoda klasowa class procedure Zmień; własność property własność_wysoki : wzrost read wysoki write wysoki; class property własność_niski : wzrost read niski write niski; end; typ zagnieżdżony własność klasowa PP-4(72 z 88)
73 Typy strukturalne Typy rekordowe S rekordy klasopodobne Przykład (cd.) Po definicji tego typu rekordowego powinny wystąpić (w przypadku modułu w jego części implementacyjnej) definicje konstruktora Utwórz, metody Pokaż i metody klasowej Zmień. Różnice pomiędzy rekordami klasopodobnymi i klasami: - rekordy nie mają własności dziedziczenia, - w rekordach można przeciążać operatory, - w rekordach nie można deklarować destruktorów, metod wirtualnych, dynamicznych i metod do obsługi wiadomości. PP-4(73 z 88)
74 Typy strukturalne Typy rekordowe S rekordy pomocnicze Rekordy pomocnicze to rekordy skojarzone z innymi rekordami, które definiują dla nich dodatkowe metody i własności. Rekordy takie są wykorzystywane przy modyfikacji kodu źródłowego, aby nie zmieniać definicji rekordu oryginalnego. Definicja: type id-typu = record helper for id-typu-oryg lista-elem-rekordu-pomoc end; PP-4(74 z 88)
75 Typy strukturalne Typy rekordowe S rekordy pomocnicze Lista elementów rekordu pomocniczego może zawierać takie same elementy, jak w rekordzie klasopodobnym z wyjątkiem deklaracji zwykłych pól. Dla danego typu rekordowego można zdefiniować wiele pomocniczych typów rekordowych, ale będzie zastosowany ten, który znajduje się najbliżej zasięgu oryginalnego typu rekordowego. Jeśli w pomocniczym typie rekordowym zostanie zdefiniowana metoda o takiej samej nazwie, jak w typie oryginalnym, to przesłoni ona metodę zadeklarowaną w typie oryginalnym. PP-4(75 z 88)
76 Typy strukturalne Typy zbiorowe Każdy typ zbiorowy jest zbiorem potęgowym danego typu porządkowego, tzn. jest zbiorem wszystkich podzbiorów tego typu, w tym zbioru pustego. Definicja pojedynczego typu zbiorowego ma postać type identyfikator-typu = set of typ-porządkowy; Liczba elementów typu porządkowego, zwanego typem bazowym, nie może przekraczać 256, przy czym ich liczby porządkowe muszą należeć do przedziału [0, 255]. PP-4(76 z 88)
77 Typy strukturalne Typy zbiorowe Oznacza to, że spośród standardowych typów całkowitych jest dozwolone wyspecyfikowanie tylko typu Byte. Na ogół typ bazowy jest określany jako typ wyliczeniowy lub okrojony. Wartości typu zbiorowego zapisuje się przez podanie w nawiasach listy elementów danego zbioru (poszczególne elementy oddziela się przecinkami), a zapis [ ] oznacza zbiór pusty. Zapis taki nazywamy konstruktorem zbioru. PP-4(77 z 88)
78 Typy strukturalne Typy zbiorowe Przykłady type dni_pracy = set of (poniedziałek, wtorek, środa, czwartek, piątek); Elementami typu dni_pracy może być dowolny podzbiór zbioru podanych nazw dni tygodnia, m. in.: [poniedziałek, czwartek] [ ] [wtorek, środa, piątek], [wtorek, piątek, środa], [środa, wtorek, piątek], [piątek, wtorek, środa] - te same podzbiory PP-4(78 z 88)
79 Przykłady Typy strukturalne Typy zbiorowe type znaki = set of AnsiChar; małe_litery = set of a.. z ; Elementami typu znaki są dowolne podzbiory zbioru znaków ASCII, a elementami typu małe_litery dowolny podzbiór zbioru małych liter alfabetu łacińskiego. PP-4(79 z 88)
80 Typy strukturalne Typy plikowe Plik jest ciągiem elementów tego samego typu, tyle że liczba jego składowych jest zmienna. Jest ona uzależniona od przebiegu wykonywania programu, a w szczególności od skojarzenia pliku z fizycznym zbiorem danych, tj. zbiorem danych rezydującym w pamięci operacyjnej lub wprowadzanym czy wyprowadzanym poprzez urządzenia zewnętrzne (klawiatura, drukarka, napędy dysków). Od tablicy plik różni się też metodą dostępu do poszczególnych elementów. PP-4(80 z 88)
81 Typy strukturalne Typy plikowe Plik jest logicznym modelem fizycznego zbioru danych. Ze względu na rodzaj operacji wykonywanych na plikach można uważać, że plik reprezentuje fizyczny zbiór danych o dostępie sekwencyjnym. Oznacza to, że w dowolnej chwili może być dostępny tylko jeden element pliku, a dostęp do pozostałych elementów jest możliwy dopiero po wykonaniu pewnych operacji na pliku. Za pomocą tego samego pliku można w programie przetwarzać różne fizyczne zbiory danych. PP-4(81 z 88)
82 Typy strukturalne Typy plikowe Pojedynczy typ plikowy definiuje się za pomocą konstrukcji type identyfikator-typu = file of opis-typu-elementów-pliku; Opis typu elementów pliku oznacza w ogólności identyfikator typu prostego, opis typu porządkowego, typ łańcuchowy krótki lub opis typu strukturalnego. PP-4(82 z 88)
83 Typy strukturalne Typy plikowe Opis typu plikowego może składać się z samego słowa kluczowego file. W takim przypadku przyjmuje się, że dany typ plikowy jest niezdefiniowany. Niezdefiniowane pliki są stosowane głównie w celu dostępu do fizycznych zbiorów dyskowych bez względu na ich wewnętrzny format. PP-4(83 z 88)
84 Typy strukturalne Typy plikowe W języku Delphi istnieje też predefiniowany plik tekstowy o nazwie TextFile (synonimem tej nazwy jest Text). Elementami pliku tekstowego są wiersze podzielone na znaki. Każdy wiersz takiego pliku zakończony jest parą znaków sterujących CR/LF (skr. ang. carriage return i line feed). Pliki tekstowe stanowią logiczne modele służące do obsługi zbiorów fizycznych dostępnych głównie za pomocą takich urządzeń, jak: klawiatura, terminale, drukarki i ekran monitora. PP-4(84 z 88)
85 Przykłady Typy strukturalne Typy plikowe type dane = file of LongInt; wyniki = file of Extended; Identyfikatory dane i wyniki zostały tu zdefiniowane jako identyfikatory typów plikowych o elementach odpowiednio LongInt i Extended. PP-4(85 z 88)
86 Przykłady Typy strukturalne Typy plikowe type complex = file of record re, im : Extended end; Typ plikowy complex składa się z elementów będących parami danych typu Extended. PP-4(86 z 88)
87 Typy strukturalne Typy plikowe Przykłady type data = file of record rok : SmallInt; miesiac : ; dzien : end; PP-4(87 z 88)
88 I to by było na tyle ale będzie ciąg dalszy! PP-4(88 z 88)
Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:
Zmienna i typ Pascal typy danych Zmienna to obiekt, który może przybierać różne wartości. Typ zmiennej to zakres wartości, które może przybierać zmienna. Deklarujemy je w nagłówku poprzedzając słowem kluczowym
Bardziej szczegółowoProgramowanie strukturalne. Opis ogólny programu w Turbo Pascalu
Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji
Bardziej szczegółowoJęzyk programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści
Język programowania DELPHI / Andrzej Marciniak. Poznań, 2012 Spis treści Przedmowa 11 Przyjęta notacja 13 Rozdział 1. Wprowadzenie 15 1.1. Ogólne zasady programowania zorientowanego obiektowo 15 1.2. Historia
Bardziej szczegółowoWstęp do programowania. Różne różności
Wstęp do programowania Różne różności Typy danych Typ danych określa dwie rzeczy: Jak wartości danego typu są określane w pamięci Jakie operacje są dozwolone na obiektach danego typu 2 Rodzaje typów Proste
Bardziej szczegółowoPodstawy 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ółowoPodstawy 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ółowoPodstawy programowania
Podstawy programowania Część piąta Proste typy danych w języku Pascal Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Bardziej szczegółowoAlgorytmy i struktury danych. wykład 1
Plan całego wykładu:. Pojęcie algorytmu, projektowanie wstępujące i zstępujące, rekurencja. Klasy algorytmów. Poprawność algorytmu, złożoność obliczeniowa. Wskaźniki, dynamiczne struktury danych: listy,
Bardziej szczegółowoAlgorytmy i struktury danych
Algorytmy i struktury danych Zmienne Proste typy danych Strukturalne typy danych Witold Marańda maranda@dmcs.p.lodz.pl 1 Zmienne Liczby (i struktury danych) występują w algorytmach i programach komputerowych
Bardziej szczegółowoĆwiczenie 2 Wczytywanie i zapisywanie do plików tekstowych
Ćwiczenie 2 Wczytywanie i zapisywanie do plików tekstowych 1. Wczytywanie z plików tekstowych. Wczytywanie z pliku tekstowego wymaga: a) skojarzenia zmiennej plikowej z plikiem procedura assignfile b)
Bardziej szczegółowoWykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe
Podstawy programowania Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe 1 Podstawy programowania Część I Łańcuchy znaków 2 I. Zmienne łańcuchowe Klasyfikacja zmiennych statycznych
Bardziej szczegółowoDIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0
Uwaga: DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0 1. Zostały pominięte diagramy: CYFRA, CYFRA SZESNASTKOWA, ZNAK i LITERA. Nie została uwzględniona możliwość posługiwania się komentarzami. 2. Brakuje
Bardziej szczegółowoJęzyk programowania PASCAL
Język programowania PASCAL (wersja podstawowa - standard) Literatura: dowolny podręcznik do języka PASCAL (na laboratoriach Borland) Iglewski, Madey, Matwin PASCAL STANDARD, PASCAL 360 Marciniak TURBO
Bardziej szczegółowoPODSTAWY PROGRAMOWANIA
PODSTAWY PROGRAMOWANIA Andrzej Marciniak Prezentacja multimedialna przygotowana za pomocą systemu Corel Presentations X3 Copyright 2003-2016 by Andrzej Marciniak PP-5(1 z 93) Na poprzednim wykładzie...
Bardziej szczegółowo1 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ółowoWstęp do programowania
Wstęp do programowania wykład 2 Piotr Cybula Wydział Matematyki i Informatyki UŁ 2012/2013 http://www.math.uni.lodz.pl/~cybula Język programowania Każdy język ma swoją składnię: słowa kluczowe instrukcje
Bardziej szczegółowoProgramowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie
Bardziej szczegółowoNiezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.
Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą
Bardziej szczegółowoWykład PASCAL - Pliki tekstowe
Podstawy programowania Wykład PASCAL - Pliki tekstowe 1 dr Artur Bartoszewski - Podstawy prograowania, sem. 1- WYKŁAD Rodzaje plików Dane przechowywane w pliku mogą mieć reprezentację binarną (taką samą,
Bardziej szczegółowoPascal - wprowadzenie
Pascal - wprowadzenie Ogólne informacje o specyfice języka i budowaniu programów Filip Jarmuszczak kl. III c Historia Pascal dawniej jeden z najpopularniejszych języków programowania, uniwersalny, wysokiego
Bardziej szczegółowoStałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane
Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można
Bardziej szczegółowoOPERACJE NA PLIKACH. Podstawowe pojęcia:
OPERACJE NA PLIKACH Podstawowe pojęcia: plik fizyczny, zbiór informacji w pamięci zewnętrznej wykorzystywany do trwałego przechowywania danych lub jako przedłużenie pamięci operacyjnej w przypadku przetwarzania
Bardziej szczegółowoPodstawy Informatyki. Metalurgia, I rok. Wykład 3 Liczby w komputerze
Podstawy Informatyki Metalurgia, I rok Wykład 3 Liczby w komputerze Jednostki informacji Bit (ang. bit) (Shannon, 1948) Najmniejsza ilość informacji potrzebna do określenia, który z dwóch równie prawdopodobnych
Bardziej szczegółowotyp zakres sposob zapamietania shortint integer bajty (z bitem znaku) longint byte word
Pascal - powtórka Alfabet, Nazwy W odróŝnieniu do C w Pascal nie odróŝnia małych i duŝych liter. Zapisy ALA i ala oznaczają tę samą nazwę. Podobnie np. słowo kluczowe for moŝe być zapisane: FOR. W Pascalu
Bardziej szczegółowoJava Podstawy. Michał Bereta
Prezentacja współfinansowana przez Unię Europejską ze środków Europejskiego Funduszu Społecznego w ramach projektu Wzmocnienie znaczenia Politechniki Krakowskiej w kształceniu przedmiotów ścisłych i propagowaniu
Bardziej szczegółowoTablice (jedno i wielowymiarowe), łańcuchy znaków
Tablice (jedno i wielowymiarowe), łańcuchy znaków wer. 8 z drobnymi modyfikacjami! Wojciech Myszka Katedra Mechaniki i Inżynierii Materiałowej 2017-04-07 09:35:32 +0200 Zmienne Przypomnienie/podsumowanie
Bardziej szczegółowoInformatyka 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ółowoPo 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ółowoWykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe
Wykład 15 Wprowadzenie do języka na bazie a Literatura Podobieństwa i różnice Literatura B.W.Kernighan, D.M.Ritchie Język ANSI Kompilatory Elementarne różnice Turbo Delphi FP Kylix GNU (gcc) GNU ++ (g++)
Bardziej szczegółowoMETODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Bardziej szczegółowoP R OGRA M OW A N I E KOMPUTERÓW Ćwiczenia laboratoryjne
1. Wstęp Turbo Pascal jest jednym z najpopularniejszych języków programowania wyższego poziomu. Program napisany w tym języku jest ciągiem zdań opisującym określony algorytm. Nazywamy go postacią źródłową
Bardziej szczegółowoINSTRUKCJA PUSTA. Nie składa się z żadnych znaków i symboli, niczego nie robi. for i := 1 to 10 do {tu nic nie ma};
INSTRUKCJA PUSTA Nie składa się z żadnych znaków i symboli, niczego nie robi Przykłady: for i := 1 to 10 do {tu nic nie ma}; while a>0 do {tu nic nie ma}; if a = 0 then {tu nic nie ma}; INSTRUKCJA CASE
Bardziej szczegółowoUwagi 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ółowoElementy języków programowania
Elementy języków programowania Olsztyn 2007-2012 Wojciech Sobieski 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
Bardziej szczegółowoInstrukcje podsumowanie. Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne:
Instrukcje podsumowanie Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne: - grupująca end - warunkowa if
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część ósma Tablice znaków i przetwarzanie napisów Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Bardziej szczegółowoProgramowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++
Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu
Bardziej szczegółowo1 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ółowoWstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Komentarze Funkcja printf() Zmienne Łańcuchy
Bardziej szczegółowoWykł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ółowoProgramowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki
Wykład 2 - podstawy języka C++ Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu. Zmienne i ich nazwy, podstawowe typy: całkowite, rzeczywiste, znakowe i napisowe. Instrukcje:
Bardziej szczegółowoWykład 2 Składnia języka C# (cz. 1)
Wizualne systemy programowania Wykład 2 Składnia języka C# (cz. 1) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Budowa projektu 2 Struktura programu
Bardziej szczegółowoPodstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem.
Podstawy programowania Wykład PASCAL Zmienne wskaźnikowe i dynamiczne 1 dr Artur Bartoszewski - Podstawy prograowania, sem. 1- WYKŁAD Rodzaje zmiennych Zmienne dzielą się na statyczne i dynamiczne. Zmienna
Bardziej szczegółowoPODSTAWY PROGRAMOWANIA
PODSTAWY PROGRAMOWANIA Andrzej Marciniak Prezentacja multimedialna przygotowana za pomocą systemu Corel Presentations X3 Copyright 2003-2017 by Andrzej Marciniak PP-8(1 z 78) Na poprzednim wykładzie...
Bardziej szczegółowoJak 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ółowoWskaź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ółowoAutor: dr inż. Katarzyna Rudnik
Bazy danych Wykład 2 MS Access Obiekty programu, Reprezentacja danych w tabeli, Indeksy, Relacje i ich sprzężenia Autor: dr inż. Katarzyna Rudnik Obiekty programu MS ACCESS Obiekty typu Tabela są podstawowe
Bardziej szczegółowo1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.
1. Pierwszy program // mój pierwszy program w C++ #include using namespace std; cout
Bardziej szczegółowoMATERIAŁY DO ZAJĘĆ II
MATERIAŁY DO ZAJĘĆ II Zmienne w C# Spis treści I. Definicja zmiennej II. Hierarchia typów (CTS) III. Typy wbudowane IV. Deklaracja zmiennych V. Literały VI. Pobieranie i wypisywanie wartości zmiennych
Bardziej szczegółowoInstytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska
Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Języki programowania z programowaniem obiektowym Laboratorium
Bardziej szczegółowoTypy danych, zmienne i tablice. Tomasz Borzyszkowski
Typy danych, zmienne i tablice Tomasz Borzyszkowski Silne typy Javy Java jest językiem wyposażonym w silny system typów. Wywodzi się stąd siła i bezpieczeństwo tego języka. Co to znaczy silny system typów?
Bardziej szczegółowoElż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ółowoInformatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Bardziej szczegółowoPodstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
Podstawy programowania Wykład: 12 Struktury, unie, pola bitowe 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Struktury 2 Struktury Struktury to złożone typy danych
Bardziej szczegółowoJeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.
Języki C i C++ to bardzo uniwersalne platformy programistyczne o ogromnych możliwościach. Wykorzystywane są do tworzenia systemów operacyjnych i oprogramowania użytkowego. Dzięki niskiemu poziomowi abstrakcji
Bardziej szczegółowoWprowadzenie Tablica jednowymiarowa Tablice wielowymiarowe Algorytmy Rekordy Pliki Zadania Bibliografia
Program Rozwojowy Potencjału Dydaktycznego Politechniki Świętokrzyskiej w Kielcach: kształcenie na miarę sukcesu. Priorytet IV Szkolnictwo wyższe i nauka. Działanie 4.1 Wzmocnienie i rozwój potencjału
Bardziej szczegółowoPliki. Operacje na plikach w Pascalu
Pliki. Operacje na plikach w Pascalu ścieżka zapisu, pliki elementowe, tekstowe, operacja plikowa, etapy, assign, zmienna plikowa, skojarzenie, tryby otwarcia, reset, rewrite, append, read, write, buforowanie
Bardziej szczegółowoWykład III PASCAL - iteracja cz, 2, - liczby losowe, - tablice
Podstawy programowania Wykład III PASCAL - iteracja cz, 2, - liczby losowe, - tablice 1 Podstawy programowania Iteracja 2 III. Iteracja Iteracja o nieznanej liczbie powtórzeń while warunek do instrukcja_do_wykonania;
Bardziej szczegółowoPODSTAWOWE WIADOMOSCI O JĘZYKU TURBO PASCAL
PODSTAWOWE WIADOMOSCI O JĘZYKU TURBO PASCAL! Podstawowe wiadomości o języku Turbo Pascal " Symbole podstawowe. " Jednostki leksykalne. # Słowa kluczowe # Deklaratory # Identyfikatory # Liczby # Łańcuchy
Bardziej szczegółowoSpis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal
Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO Rozdział 1. Wybór i instalacja kompilatora języka Pascal 1.1. Współczesne wersje kompilatorów Pascala 1.2. Jak zainstalować
Bardziej szczegółowoPARADYGMATY PROGRAMOWANIA Wykład 4
PARADYGMATY PROGRAMOWANIA Wykład 4 Metody wirtualne i polimorfizm Metoda wirualna - metoda używana w identyczny sposób w całej hierarchii klas. Wybór funkcji, którą należy wykonać po wywołaniu metody wirtualnej
Bardziej szczegółowoJęzyki programowania obiektowego Nieobiektowe elementy języka C++
Języki programowania obiektowego Nieobiektowe elementy języka C++ Roman Simiński roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Przetwarzanie tablic znaków Łańcuchy znakowe jako tablice znaków
Bardziej szczegółowoZmienne, stałe i operatory
Zmienne, stałe i operatory Przemysław Gawroński D-10, p. 234 Wykład 2 4 marca 2019 (Wykład 2) Zmienne, stałe i operatory 4 marca 2019 1 / 21 Outline 1 Zmienne 2 Stałe 3 Operatory (Wykład 2) Zmienne, stałe
Bardziej szczegółowoJęzyki i metodyka programowania. Wprowadzenie do języka C
Literatura: Brian W. Kernighan, Dennis M. Ritchie Język Ansi C, Wydawnictwa Naukowo - Techniczne, 2007 http://cm.bell-labs.com/cm/cs/cbook/index.html Scott E. Gimpel, Clovis L. Tondo Język Ansi C. Ćwiczenia
Bardziej szczegółowoWykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe
Podstawy programowania Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe 1 I. Składnia Składnia programu Program nazwa; Uses biblioteki; Var deklaracje zmiennych;
Bardziej szczegółowoProgramowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40
Programowanie w C++ Wykład 5 Katarzyna Grzelak 26 marca 2018 9 kwietnia 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40 Pojęcia z poprzedniego wykładu Podział programu na funkcje podział na niezależne
Bardziej szczegółowoJęzyk ludzki kod maszynowy
Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza
Bardziej szczegółowoOpis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].
ABAP/4 Instrukcja IF Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek]. [ELSEIF warunek. ] [ELSE. ] ENDIF. gdzie: warunek dowolne wyrażenie logiczne o wartości
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowoPodstawy algorytmiki i programowania - wykład 4 C-struktury
1 Podstawy algorytmiki i programowania - wykład 4 C-struktury Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2016/2017 Wykład nr 7 (11.01.2017) Rok akademicki 2016/2017, Wykład
Bardziej szczegółowoWstęp do programowania 2
Wstęp do programowania 2 wykład 1 rekordy z wyróżnikami Agata Półrola Wydział Matematyki UŁ 2005/2006 Egzamin z I roku - problemy Problemy z wczytywaniem danych: skip_line Problemy z obliczeniami: zerowanie
Bardziej szczegółowoDelphi Laboratorium 3
Delphi Laboratorium 3 1. Procedury i funkcje Funkcja jest to wydzielony blok kodu, który wykonuje określoną czynność i zwraca wynik. Procedura jest to wydzielony blok kodu, który wykonuje określoną czynność,
Bardziej szczegółowoTablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011
Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 Załóżmy, że uprawiamy jogging i chcemy monitorować swoje postępy. W tym celu napiszemy program, który zlicza, ile czasu
Bardziej szczegółowoProgramowanie 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ółowoWykład 4. Tablice. Pliki
Informatyka I Wykład 4. Tablice. Pliki Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Tablice Tablica uporządkowany zbiór elementów określonego typu Każdy element tablicy posiada
Bardziej szczegółowoSkrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:
Skrypty powłoki Skrypty są zwykłymi plikami tekstowymi, w których są zapisane polecenia zrozumiałe dla powłoki. Zadaniem powłoki jest przetłumaczenie ich na polecenia systemu. Aby przygotować skrypt, należy:
Bardziej szczegółowo2 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania
Bardziej szczegółowoWykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1
Podstawy programowania Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1 1 I. Składnia Składnia programu Program nazwa; Uses biblioteki; Var deklaracje zmiennych; Begin
Bardziej szczegółowoCzęść 4 życie programu
1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część
Bardziej szczegółowoProgramowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop
Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop. 2010 Spis treści Wstęp 11 Część I PASCAL - wprowadzenie do programowania strukturalnego
Bardziej szczegółowoLaboratorium 03: Podstawowe konstrukcje w języku Java [2h]
1. Typy. Java jest językiem programowania z silnym systemem kontroli typów. To oznacza, że każda zmienna, atrybut czy parametr ma zadeklarowany typ. Kompilator wylicza typy wszystkich wyrażeń w programie
Bardziej szczegółowoProgramowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44
Programowanie w C++ Wykład 2 Katarzyna Grzelak 4 marca 2019 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Na poprzednim wykładzie podstawy C++ Każdy program w C++ musi mieć funkcję o nazwie main Wcięcia
Bardziej szczegółowoLaboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski
Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski 7 kwietnia 2014 1. Wprowadzenie Pierwsza część instrukcji zawiera informacje
Bardziej szczegółowoPracownia Komputerowa wykład IV
Pracownia Komputerowa wykład IV dr Magdalena Posiadała-Zezula http://www.fuw.edu.pl/~mposiada/pk16 1 Reprezentacje liczb i znaków! Liczby:! Reprezentacja naturalna nieujemne liczby całkowite naturalny
Bardziej szczegółowoZasady Programowania Strukturalnego
Zasady Programowania Strukturalnego Rafał Jakubowski Zespół Teoretycznej Biofizyki Molekularnej rjakubowski@fizyka.umk.pl www.fizyka.umk.pl/~rjakubowski Tel: 33 46 Konsultacje w sem. letnim 11/12: środa,
Bardziej szczegółowoJę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ółowoWprowadzenie do języka Java
WSNHiD, Programowanie 2 Lab. 1 [ część 1 ] Wprowadzenie do języka Java Wprowadzenie Język programowania Java jest obiektowym językiem programowania. Powstał w 1995 i od tej pory był intensywnie rozwijany.
Bardziej szczegółowo2. Tablice. Tablice jednowymiarowe - wektory. Algorytmy i Struktury Danych
2. Tablice Tablica to struktura danych przechowująca elementy jednego typu (jednorodna). Dostęp do poszczególnych elementów składowych jest możliwy za pomocą indeksów. Rozróżniamy następujące typy tablic:
Bardziej szczegółowoPodstawy i języki programowania
Podstawy i języki programowania Laboratorium 2 - wprowadzenie do zmiennych mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 23 października 2017 1 / 26 mgr inż. Krzysztof Szwarc Podstawy i
Bardziej szczegółowoInformatyka I. Wykład 4. Tablice. Dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Wykład 4. Tablice. Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Tablice Tablica uporządkowany zbiór elementów określonego typu Każdy element tablicy posiada
Bardziej szczegółowoSwift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.)
Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.) przeznaczony do programowania zarówno pod ios jak i Mac OS X bazuje na logice Objective-C bez kompatybilności
Bardziej szczegółowoPODSTAWY PROGRAMOWANIA
PODSTAWY PROGRAMOWANIA Andrzej Marciniak Prezentacja multimedialna przygotowana za pomocą systemu Corel Presentations X3 Copyright 2003-2016 by Andrzej Marciniak PP-7(1 z 84) Na poprzednim wykładzie...
Bardziej szczegółowoPoniŜ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ółowoWprowadzenie do języka Pascal
Wprowadzenie do języka Pascal zmienne i typy standardowe operatory arytmetyczne, funkcje standardowe odczyt danych i wyświetlanie wyników obsługa wyjątków Techniki programowania I s.2-1 Podstawowe zasady
Bardziej szczegółowoAda 95 #1/5 - typy. Typy skalarne. Hierarchia typów w Adzie. Typ znakowy. Typy dyskretne. Plan wykładu
Plan wykładu Ada 95 #1/5 - typy Wojciech Complak, Instytut Informatyki, Politechnika Poznańska e-mail : Wojciech.Complak@cs.put.poznan.pl www : http://www.cs.put.poznan.pl/wcomplak Hierarchia typów w Adzie
Bardziej szczegółowoMicrosoft IT Academy kurs programowania
Microsoft IT Academy kurs programowania Podstawy języka C# Maciej Hawryluk Język C# Język zarządzany (managed language) Kompilacja do języka pośredniego (Intermediate Language) Kompilacja do kodu maszynowego
Bardziej szczegółowoPodstawy programowania 2. Przygotował: mgr inż. Tomasz Michno
Instrukcja laboratoryjna 2 Podstawy programowania 2 Temat: Zmienne dynamiczne tablica wskaźników i stos dynamiczny Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny 1.1 Tablice wskaźników Tablice
Bardziej szczegółowo