Wprowadzenie Tablica jednowymiarowa Tablice wielowymiarowe Algorytmy Rekordy Pliki Zadania Bibliografia

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

Download "Wprowadzenie Tablica jednowymiarowa Tablice wielowymiarowe Algorytmy Rekordy Pliki Zadania Bibliografia"

Transkrypt

1 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 dydaktycznego uczelni oraz zwiększenie liczby absolwentów kierunków o kluczowym znaczeniu dla gospodarki opartej na wiedzy. Poddziałanie Wzmocnienie potencjału dydaktycznego uczelni. Umowa: uda-pokl /08-00 Materiały dydaktyczne Programowanie w języku wysokiego poziomu na przykładzie języka Pascal - część 2 (Moduł nr 12) zrealizowane do Zadania 9 Autorzy: mgr inż. Arkadiusz Chrobot, mgr inż. Karol Wieczorek, mgr inż. Robert Tomaszewski

2 Programowanie w języku wysokiego poziomu na przykładzie języka Pascal - część 3 Tablice, rekordy i pliki Arkadiusz Chrobot Robert Tomaszewski Karol Wieczorek Katedra Informatyki, Politechnika Świętokrzyska w Kielcach

3 Spis treści 1 Wprowadzenie 2 Tablica jednowymiarowa 3 Tablice wielowymiarowe 4 Algorytmy 5 Rekordy Budowa Użycie typu rekordowego Przykład 6 Pliki Wprowadzenie Definiowanie plików Operacje na plikach Przykłady 7 Zadania 8 Bibliografia

4 Wprowadzenie Tablice i rekordy są strukturami danych, co oznacza, że zmienna typu tablicowego lub rekordowego może przechowywać jednocześnie kilka wartości. W przypadku tablic wszystkie te wartości są tego samego typu. Rekordy mogą przechowywać kilka wartości o różnych typach.

5 Tablica jednowymiarowa Najprostszym przykładem tablicy (i prawdopodobnie najczęściej stosowanym) jest tablica jednowymiarowa. Zanim dowiemy się w jaki sposób definiować takie tablice w języku Pascal przyjrzymy się jej budowie. Poniższy rysunek obrazuje strukturę tablicy jednowymiarowej Tablica podzielona jest na elementy. Każdy z elementów przechowuje pojedynczą wartość. Wszystkie wartości zgromadzone w elementach tablicy mają ten sam typ. Mogą to być dowolne wartości mieszczące się w typie elementu. Każdy element ma również swój indeks (na rysunku u góry elementu), który jednoznacznie określa jego położenie względem początku tablicy (jest jego unikatowym identyfikatorem). [1, 2]

6 Typ tablicowy W języku Pascal istnieje kilka sposobów na zdefiniowanie zmiennej tablicowej (tablicy). Wygodnie jest najpierw zdefiniować w sekcji type program lub podprogramu odpowiedni typ tablicowy. Schemat definicji typu tablicowego nazwa typu = array [przedział indeksów] of typ elementu; Typ elementu może być dowolny predefiniowanym typem języka Pascal lub typem zdefiniowanym przez programistę. Przedział indeksów jest definiowany za pomocą nazwanego lub anonimowego typu okrojonego. [1, 2]

7 Typ tablicowy - przykłady Przykłady typów tablicowych type p r z e d z i a l = ; T t a b l i c a = array [ p r z e d z i a l ] of byte ; T t a b l i c a 2 = array [ ] of r e a l ; W przykładzie zdefiniowano dwa typu tablicowe o nazwach Ttablica i Ttablica2. W pierwszym typie do określenia zakresu indeksów użyto zdefiniowanego wcześniej typu okrojonego o nazwie przedzial. Wszystkie typy okrojone budowane są na bazie typów porządkowych. Pierwsza wartość w definicji typu okrojonego musi być mniejsza lub równa wartości drugiej. W typie Tablica2 zakres indeksów został określony za pomocą anonimowego typu okrojonego, umieszczonego bezpośrednio w definicji typu tablicowego w nawiasach kwadratowych. [1, 2]

8 Zmienne tablicowe Zmienne tablicowe, nazywane w skrócie tablicami, deklarowane są w sekcji var programu lub podprogramu, tak jak zmienne innych typów. Możemy też zadeklarować zmienną tablicową używając anonimowego typu tablicowego. Przykłady zmiennych tablicowych var t a b l i c a : T t a b l i c a 1 ; t a b l i c a 2 : array [ ] of word ; Zmienna o nazwie tablica została zadeklarowana przy użyciu zdefiniowanego we wcześniejszym przykładzie typu o nazwie Ttablica1, a zmienna o nazwie tablica2 przy użyciu typu anonimowego. Zalecanym sposobem jest korzystanie z typów nazwanych przy deklarowaniu tablic. [1, 2]

9 Odwołanie do elementów tablicy Wartość pojedynczego elementu tablicy można uzyskać umieszczając indeks tego elementu w nawiasach kwadratowych, za nazwą tablicy. Przykładowo, jeśli chcemy wypisać na ekran wartość elementu tablicy o indeksie równym pięć, to napiszemy w programie następujący wiersz kodu: writeln(tab[5]);. Należy pamiętać o tym, że wartość indeksu musi być prawidłowa, tj. element tablicy o takim indeksie musi istnieć!. Aby sprawnie odwoływać się do większej liczby elementów możemy użyć pętli. Na przykład, jeśli chcemy wypisać na ekran elementy tablicy o indeksach od 2 do 5 możemy napisać następujący fragment kodu: Indeksowanie elementów tablicy for i := 2 to 5 do write(tab[i]); Zakładamy, że zmienna i ma odpowiedni typ porządkowy, w którym mieszczą się wartości 2, 3, 4 i 5 (np.: byte). [1, 2]

10 Odwołanie do elementów tablicy Jeśli wystąpi konieczność odwołania do wszystkich elementów tablicy, to można użyć funkcji low i high do wyznaczenia indeksu odpowiednio pierwszego i ostatniego elementu tej tablicy. Indeksowanie wszystkich elementów tablicy for i := low(tab) to high(tab) do write(tab[i]);

11 Przekazywanie przez parametry do podprogramów Jeśli zdefiniowaliśmy wcześniej typ tablicowy w sekcji type, to możemy użyć go do zadeklarowania formalnego parametru tablicowego w nagłówku procedury lub funkcji: Przekazywanie przez parametry procedure dane(t:tablica); Można również w nagłówkach podprogramów deklarować otwarte parametry tablicowe. Otwarty parametr tablicowy procedure dane(t:array of byte); Za pomocą takich parametrów można przekazywać dowolne tablice, których typ elementów jest zgodny z typem elementów w otwartym parametrze tablicowym.

12 Przekazywanie przez parametry do podprogramów Uwaga 1 Jeśli przekazujemy tablicę do podprogramu przez parametr otwarty, to jej indeksy ulegją przeskalowaniu! Indeks pierwszego elementu wynosi zawsze 0, natomiast indeks ostatniego możemy wyznaczyć na podstawie jej rozmiaru i rozmiaru jej pojedynczego elementu, posługując się wyrażeniem: sizeof(tab)/sizeof(tab[0]) - 1 Uwaga 2 Korzystając z kompilatora Turbo Pascal należy pamiętać, że nie pozwala on przekazać za pomocą parametru o nazwanym typie tablicowym zmiennej o anonimowym typie tablicowym, nawet jeśli liczba elementów i ich typ w obu typach tablicowych się zgadzają. Inne kompilatory mogą nie posiadać takiego ograniczenia.

13 Przekazywanie przez parametry do podprogramów Uwaga 3 Jeśli używamy kompilatora Turbo Pascal, to nie powinniśmy tworzyć dużych tablic jako zmiennych lokalnych, a do procedur lub funkcji przekazywać tablice tylko przez stałą i zmienną (używać słów kluczowych const i var z parametrami tablicowymi). W przypadku innych kompilatorów nie musi to być prawdą. Uwaga 4 Tablice nie mogą być wartościami zwracanymi przez funkcje, jako wynik ich działania. Można obejść to ograniczenie przekazując tablie przez zmienną.

14 Tablice wielowymiarowe Aby uzyskać wartość elementu w tablicy jednowymiarowej musimy podać jedną współrzędną - jego indeks. W przypadku tablic wielowymiarowych każdy element ma wiele indeksów (współrzędnych), które należy określić, aby uzyskać wartość elementu. Najczęściej używa się tablic o niewielkiej liczbie wymiarów. Zwykle są to tablice dwuwymiarowe, które wykorzystuje się do reprezentowania macierzy.

15 Tablice dwuwymiarowe Typ tablicy dwuwymiarowej można zdefiniować na wiele sposobów. Definicje typów tablic dwuwymiarowych type m acierz1 = array [ ] of array [ ] of word ; m acierz2 = array [ 0.. 3, ] of word ; w i e r s z = array [ ] of word ; m acierz3 = array [ ] of w i e r s z ; Można również deklarować zmienne o anonimowych typach tablic dwuwymiarowych, ale w przypadku niektórych kompilatorów, takich jak Turbo Pascal, występują problemy, kiedy próbujemy je przekazać przez parametry do podprogramów.

16 Odwołanie do elementu tablicy dwuwymiarowej Aby odwołać się do tablicy dwuwymiarowej należy podać dwie współrzędne (indeksy) elementu. Można to zrobić na dwa sposoby: tab[3,5]; lub tab[3][5];. Ten drugi sposób jest obowiązuje również w wielu innych językach programowania (np. C,C++,Java). Jeśli odwołujemy się do większej liczby elementów w tablicy dwuwymiarowej to możemy użyć pętli. Tablica dwuwymiarowa i pętle for i := 0 to 3 do for j := 0 to 3 do wirte(tab[i,j]); Jeśli tablica dwuwymiarowa przedstawia macierz, to pierwsza współrzędna jest indeksem wiersza, a druga indeksem kolumny. [1, 2]

17 Sortowanie tablic Jedną z najczęściej wykonywanych czynności na wartościach zgromadzonych w tablicy jednowymiarowej jest ich porządkowanie, które nazywa się w informatyce sortowaniem. Istnieje wiele algorytmów sortowania, które różnią się efektywnością. Jednym z najprostszych jest algorytm sortowania przez wybór (ang. selection sort). Jego działanie można opisać następująco: 1 Znajdź najmniejszą wartość w tablicy i zapisz ją w jej pierwszym elemencie. 2 Znajdź ponownie wartość najmniejszą w tablicy, ale tym razem z poszukiwań wyłącz pierwszy element. Znalezioną wartość zapisz w drugim elemencie tablicy. 3 Podobnie postępuj z pozostałymi elementami, aż napotkasz na ostatni element tablicy. Następny slajd zawiera procedurę, która realizuje opisany algorytm.

18 Sortowanie tablic Sortwanie przez wybór p r o cedure s e l e c t i o n s o r t ( v a r t : t a b l i c a ) ; v a r i, j, k, tmp : byte ; b e gin f o r i := low ( t ) to h i g h ( t ) 1 do b e gin k:= i ; f o r j := i +1 to h i g h ( t ) do i f t [ k ] > t [ j ] then k:= j ; i f i <>k then b e gin tmp:= t [ k ] ; t [ k ]:= t [ i ] ; t [ i ]:= tmp ; end ; end ; end ;

19 Wyszukiwanie liniowe Inną czynnością równie często wykonywaną na tablicach jednowymiarowych jest znajdywanie sprawdzanie, czy określona wartość się w nich znajduje. Również w tym przypadku istnieje wiele algorytmów, według których może ona zostać wykonana. Jednym z najprostszych jest algorytm wyszukiwania liniowego. Polega on na sprawdzeniu wszystkich elementów tablicy. Jeśli podczas tego przeglądania zostanie znaleziony element zawierający daną wartość, to jest zwracany jego indeks. Jeśli zostaną odwiedzone wszystkie elementy w tablicy, ale żaden z nich nie będzie zawierał szukanej wartości, to algorytm zasygnalizuje jej brak w tablicy, np. poprzez zwrócenie nieistniejącego indeksu tablicy.

20 Wyszukiwanie liniowe Wyszukiwanie liniowe f u n c t i o n w y s z u k i w a n i e l i n i o w e ( v a r t : t a b l i c a ; c o n s t v a l u e : byte ) : byte ; { I n d e k s 0 n i e i s t n i e j e w t a b l i c y. } v a r i : byte ; b e gin w y s z u k i w a n i e l i n i o w e :=0; i := low ( t ) ; w h i l e i <=h i g h ( t ) do b e gin i f t [ i ]= v a l u e then b e gin w y s z u k i w a n i e l i n i o w e := i ; b r e a k ; end ; i n c ( i ) ; end ; end ;

21 Budowa Definicja typu rekordowego Definicja Rekordy są strukturami danych, które mogą służyć do przechowywania wartości różnych typów. [1, 2] Typ rekordowy definiuje się w sekcji type programu lub podprogramu według następującego wzorca: Budowa rekordu nazwa typu rekordowego = record nazwa pola 1: typ pola 1; nazwa pola 2: typ pola 2;. nazwa pola n: typ pola n; end;

22 Budowa Opis budowy rekordu Poszczególne składowe rekordu nazywamy polami. Typ rekordowy nie może określać zmiennej, której rozmiar jest większy niż 64 KB. Typy pól rekordu mogą być dowolne. Jeśli któreś z pól rekordu jest rekordem, to mówimy, że mamy do czynienia z rekordem zagnieżdżonym. Jednym z najczęstszych przypadków użycia rekordu jest przechowywania informacji o osobie. Typ rekordu, który przechowuje takie informacje może być zdefiniowany następująco [1, 2]: Rekord Osoba type osoba = record imie:string[30]; nazwisko: string[50]; wiek:byte; end;

23 Budowa Rekordy z wariantami Rekordy z wariantami pozwalają na pewne sparametryzowanie tego typu danych. [1, 2] Polem wariantowym zawsze jest ostatnie pole w rekordzie. Oto wzorzec takiego typu rekordowego: Rekord z wariantami nazwa typu rekordowego = record nazwa pola 1: typ pola 1; nazwa pola 2: typ pola 2;. case selektor: typ selektora of wartość selektora 1 : (pole 1: typ pola 1; pole 2: typ pola 2); wartość selektora 2 : (pole 1 : typ pola 1; pole 2 : typ pola 2; pole 3 : typ pola 3); end;

24 Budowa Przykład rekordu z wariantem Załóżmy, że potrzebujemy opisać rekordem dwie postacie z gry komputerowej: maga i wojownika. Będą one miały oczywiście wspólne cechy, jak położenie w przestrzeni i nazwę, ale również będą miały cechy indywidualne, jak miara siły lub mocy magicznej. Moglibyśmy te postacie opisać jednym typem (nie licząc pomocniczego typu wyliczeniowego): Typ rekordu z wariantem type rodzaj = (mag, wojownik); postac = record x,y:real; nazwa:string[40]; case r:rodzaj of wojownik: (sila: byte); mag:(moc magiczna:word); end;

25 Użycie typu rekordowego Deklaracja i użycie zmiennych rekordowych Zmienne typów rekordowych (inaczej zmienne rekordowe lub krótko: rekordy) deklarujemy tak samo, jak zmienne innych zdefiniowanych przez nas typów. Do pola zmiennej rekordowej możemy odwołać się na dwa sposoby: 1 za pomocą operatora kropki: nazwa rekordu.nazwa pola; 2 za pomocą konstrukcji with: with nazwa rekordu do nazwa pola;

26 Przykład Przykład programu Dane osoby Na kilku poniższych slajdach będzie przedstawiony kod źródłowy programu, który umożliwi wypełnienie i wyświetlenie danych z tablicy rekordów przechowujących dane osobowe: Cz.1 - deklaracje typów program t a b l i c a r e k o r d o w ; u s e s c r t ; type osoba = r e c o r d i m i e : s t r i n g ; n a z w i s k o : s t r i n g ; wiek : byte ; end ; t a b l i c a = a r r a y [ ] o f osoba ; v a r tab : t a b l i c a ;

27 Przykład Przykład programu Dane osoby c.d. Cz.2 - procedura do wprowadzania danych p r o cedure w y p e l n i j ( v a r t : t a b l i c a ) ; v a r i : byte ; b e gin f o r i := low ( t ) to h i g h ( t ) do with t [ i ] do b e gin w r i t e ( Podaj i m i e, i, : ) ; r e a d l n ( i m i e ) ; w r i t e ( Podaj n a z w i s k o, i, : ) ; r e a d l n ( n a z w i s k o ) ; w r i t e ( Podaj wiek, i, : ) ; r e a d l n ( wiek ) ; end ; end ;

28 Przykład Przykład programu Dane osoby c.d. Cz.3 - procedura do wypisywania danych i program główny p r o cedure w y p i s z ( c o n s t t : t a b l i c a ) ; v a r i : byte ; b e gin f o r i := low ( t ) to h i g h ( t ) do b e gin w r i t e l n ( I m i e :, t [ i ]. i m i e ) ; w r i t e l n ( Nazwisko :, t [ i ]. n a z w i s k o ) ; w r i t e l n ( Wiek :, t [ i ]. wiek ) ; r e a d l n ; end ; end ; { program glowny } b e gin c l r s c r ; w y p e l n i j ( tab ) ; w y p i s z ( tab ) ; end.

29 Wprowadzenie Jak przechowujemy dane? Jeśli dane, które przetwarza lub produkuje program komputerowy mają być dostępne po zakończeniu jego pracy, to muszą one zostać przechowane w pamięci masowej komputera. Pamięć tego typu jest urządzeniem pozwalającym zachować zapisane w niej informacje w sposób trwały. Takimi urządzeniami są np.: dyski twarde, płyty CD, DVD, Blue-Ray pamięci typu Flash (np.: pen-drive) Każde z tych urządzeń przechowuje dane w inny sposób. Aby ujednolicić sposób korzystania ze zgromadzonych na nich informacji wprowadzono specjalną strukturę danych nazywaną plikiem.

30 Wprowadzenie Rodzaje plików Pliki gwarantują ten sam sposób korzystania z informacji niezależnie od tego, czy znajdują się one na dysku twardym, w pamięci operacyjnej, czy innym nośniku. Język Turbo Pascal pozwala korzystać z trzech rodzajów plików [1, 2]: 1 plików tekstowych, 2 plików binarnych, 3 plików amorficznych (binarnych niezdefiniowanych)

31 Wprowadzenie Elementy plików Pliki, niezależnie do którego rodzaju należą, składają się zawsze z pewnych elementów. W przypadku plików tekstowych tymi elementami są wiersze, czyli ciągi znaków zakończone znakami końca wiersza (w przypadku Turbo Pascala są to znaki #13 #10). Wynika stąd, że wiersze te mogą mieć różny rozmiar. Elementami plików binarnych są wartości określonego przez nas typu. Mogą to być wartości typu byte, integer, real, a nawet typu rekordowego. W plikach amorficznych wartości,które są przechowywane nie mają określonego typu. Cały plik jest podzielony na porcje o ustalonej wielkości, zwane blokami. Dla wszystkich typów plików możemy stosować dostęp sekwencyjny, tzn. taki, w którym aby przeczytać lub zapisać element znajdujący się w dowolnym miejscu pliku musimy przeczytać wszystkie elementy znajdujące się przed nim. W przypadku plików binarnych możemy mieć również swobodny dostęp.

32 Definiowanie plików Definicja plików w Pascalu W Turbo Pascalu jedynym typem plików, który powinniśmy zdefiniować jest typ pliku binarnego zdefiniowanego. Określamy go w sekcji type programu lub podprogramu według wzorca: Tworzenie typu plikowego nazwa typu pliku = file of nazwa typu elementu pliku; Przykładowo, plik binarny, którego elementy byłyby typu integer miałby następujący typ: Typ pliku binarnego integer type plik = file of integer; Pliki amorficzne, jak również tekstowe mają już zdefiniowane typy, które są częścią języka i nie musimy im nadawać nowej nazwy. Typem pliku amorficznego jest po prostu file, a tekstowego jest text.

33 Operacje na plikach Schemat korzystania z pliku Zanim będziemy mogli zapisać lub odczytać informacje z pliku musimy wykonać dodatkowe czynności. Oto one: 1 skojarzenie zmiennej z plikiem, 2 otwarcie pliku, 3 przetwarzanie informacji zawartych w pliku, 4 zamknięcie pliku. Należy zaznaczyć, że przy wykonywaniu każdej z tych operacji mogą pojawić się wyjątki, które należy obsłużyć. Powyższe operacje są realizowane za pomocą różnych funkcji i procedur. Zostaną one opisane na kolejnych slajdach.

34 Operacje na plikach Opis procedur i funkcji operujących na plikach Procedury do otwierania i zamykania plików assign - działa w ten sam sposób dla wszystkich typów plików. Wiąże ona zmienną plikową z nazwą pliku. Pierwszym parametrem jej wywołania jest nazwa zmiennej plikowej, a drugim ciąg znaków będący nazwą pliku. close - Operacja zamykania pliku (dla wszystkich rodzajów) rewrite - dla plików tekstowych procedura ta tworzy nowy plik, który można wyłącznie zapisywać. Przy plikach binarnych, również tworzony jest nowy plik, ale można zarówno odczytywać, jak i zapisywać dane. reset - dla plików tekstowych procedura ta otwiera już istniejący plik w trybie tylko do odczytu. Przy pracy z plikami binarnymi, procedura otwiera istniejący plik z prawami do odczytu i zapisu. Przy próbie otwarcia pliku, który nie istnieje, zostanie zgłoszony wyjątek. append - tryb występujący tylko w plikach tekstowych. Służy do otwarcia istniejącego pliku do dopisania treści do już istniejącej.

35 Operacje na plikach Opis procedur i funkcji operujących na plikach c.d. Procedury do odczytu i zapisu read/readln - jako pierwszy parametr wywołania podajemy nazwę zmiennej plikowej, a następnie zmienną do której będą wczytane informacje z pliku. Różnica między readln i read polega na tym, że pierwsza odczytuje cały wiersz znaków, zakończony znakami końca wiersza, natomiast druga czyta tyle informacji, ile wynika z liczby i typu zmiennych do których one będą zapisywane. W przypadku plików binarnych odczyt możliwy jest wyłącznie za pomocą procedury read. write/writeln - procedury służą do zapisywania danych do pliku, jeśli jako pierwszy parametr podamy zmienną plikową. Sposób działania jest analogiczny do procedur służących do odczytu. readblock/writeblock - procedury służące do odczytu/zapisu danych z/do plików amorficznych. Podajemy jej 3 parametry. Pierwsze dwa są analogiczne do procedur write/read. Trzeci parametr to liczba typu word określająca liczbę bloków do odczytu/zapisu.

36 Operacje na plikach Pozostałe procedury i funkcje operujące na plikach Procedury do odczytu i zapisu eof - zwraca wartość true, jeśli został osiągnięty koniec pliku. Działa dla wszystkich typów plików. seekeof - działa podobnie, ale tylko dla plików tekstowych i ignoruje znaki białe eoln - działa jedynie dla plików tekstowych i zwraca true, jeśli został osiągnięty koniec wiersza seekeoln - działa podobnie, ale ignoruje znaki spacji i tabulacji, jest przeznaczona wyłącznie dla plików tekstowych filesize - zwraca liczbę elementów pliku binarnego lub liczbę bloków pliku amorficznego filepos - działa dla plików binarnych i amorficznych, zwraca wartość typu longint, która oznacza pozycję wskaźnika pliku seek - ustawia pozycję wskaźnika pliku. Pierwszym argumentem jej wywołania jest nazwa zmiennej plikowej, drugim wartość nowej pozycji wskaźnika pliku, wartość ta jest typu longint, procedura ta jest przeznaczona dla plików binarnych i amorficznych truncat - ucina plik począwszy od bieżącej pozycji wskaźnika pliku, działa dla plików binarnych i amorficznych

37 Przykłady Przykład 1 pliki tekstowe Cz.1 program p l i k i t e k s t o w e ; u s e s c r t ; v a r T : t e x t ; p r o cedure z a p i s z ( v a r F : t e x t ) ; { Z a p i s u j e do p l i k u t e k s t o w e g o w i e r s z pobrany od u z y t k o w n i k a. } v a r a : s t r i n g [ 8 0 ] ; i : byte ; b e gin r e w r i t e ( F ) ; r e a d l n ( a ) ; w r i t e l n (F, a ) ; end ; c l o s e ( f ) ; end ;

38 Przykłady Przykład 1 pliki tekstowe c.d. Cz.2 p r o cedure o d c z y t a j ( v a r F : t e x t ) ; { O d c z y t u j e z p l i k u t e k s t o w e g o w i e r s z. } v a r a : s t r i n g [ 8 0 ] ; b e gin r e s e t ( F ) ; r e p e a t r e a d l n ( f, a ) ; w r i t e l n ( a ) ; u n t i l e o f ( f ) ; c l o s e ( f ) ; end ; b e gin { Program glowny } c l r s c r ; a s s i g n (T, dane. t x t ) ; z a p i s z (T ) ; c l r s c r ; o d c z y t a j (T ) ; r e a d l n ; end.

39 Przykłady Przykład 1 pliki tekstowe Opis Zmienna plikowa, typu text jest kojarzona z plikiem o nazwie dane.txt w bloku głównym programu. Plik ten tworzony jest w procedurze zapisz, w wyniku wywołania procedury rewrite. W tej też procedurze do pliku zapisywany jest wiersz zawierających ciągi znaków podane przez użytkownika (o wielkości maksymalnie 80 znaków). Procedura odczyt odczytuje dane z tego samego pliku. Odczytanie i wyświetlenie na ekran odbywa się wewnątrz pętli repeat. W obydwu procedurach ostatnią wykonywaną instrukcją jest zamknięcie pliku.

40 Przykłady Przykład 2 pliki binarne Cz.1 program p l i k b i n a r n y ; u s e s c r t ; type r e c = r e c o r d x, y : i n t e g e r ; end ; p l r e c = f i l e o f r e c ; v a r p l i k : p l r e c ;

41 Przykłady Przykład 2 pliki binarne c.d. Cz.2 p r o cedure z a p i s z ( v a r f : p l r e c ) ; v a r r : r e c ; i : byte ; b e gin r e w r i t e ( f ) ; f o r i :=1 to 5 do b e gin with r do b e gin w r i t e l n ( Podaj x ) ; r e a d l n ( x ) ; w r i t e l n ( Podaj y ) ; r e a d l n ( y ) ; end ; w r i t e ( f, r ) ; end ; c l o s e ( f ) ; end ;

42 Przykłady Przykład 2 pliki binarne c.d. Cz.3 p r o cedure w y p i s z ( v a r f : p l r e c ) ; v a r r : r e c ; b e gin r e s e t ( f ) ; w h i l e not e o f ( f ) do b e gin read ( f, r ) ; w r i t e ( r. x, ) ; w r i t e l n ( r. y ) ; end ; c l o s e ( f ) ; end ; b e gin a s s i g n ( p l i k, dane. dat ) ; z a p i s z ( p l i k ) ; c l r s c r ; w y p i s z ( p l i k ) ; end.

43 Przykłady Przykład 2 pliki binarne Opis Powyższy program przetwarza informacje zawarte w pliku binarnym zdefiniowanym, którego elementami są rekordy. Taki rodzaj pliku nazywa się krótko plikiem rekordowym. Każdy rekord zawiera dwa pola x i y, które przechowują liczby całkowite. Zadaniem programu jest utworzenie pliku o nazwie dane.dat, zapisanie do niego pięciu rekordów zawierających dane pobrane od użytkownika, zamknięcie go, następnie ponowne otwarcie i wypisanie zawartości wszystkich rekordów z pliku na ekran.

44 Zadania Zadanie 1 Napisz podprogram odwracający porządek elementów w tablicy i wyświetlający tablicę przed i po operacji odwracania. Przed wywołaniem podprogramu użytkownik określa, ile elementów wprowadzi do tablicy. Zwróć uwagę, że odwrócenie porządku elementów to nie to samo co wyświetlenie tablicy od końca! Przykład wydruku z programu: Tablica WEJŚCIOWA: Tablica WYJŚCIOWA: Wykonaj powyższe zadanie z wykorzystaniem tablicy znaków (zmienna typu String[n]). Pamiętaj, że pod indeksem 0 kryje się informacja o rozmiarze łańcucha a nie żaden ze znaków!

45 Zadania Zadanie 2 Napisz podprogram, który przyjmuje jako parametr tablicę elementów typu String, gdzie pojedynczy element tablicy (pojedyncza zmienna typu String) przechowuje jeden wyraz. Procedura/funkcja przepisuje do drugiej, nowej tablicy tylko wyrazy będące palindromami (mają oś symetrii, np. kajak, anna, abcba, itp.).

46 Zadania Zadanie 3 W tablicy elementów typu String w pojedynczym elemencie (pojedyncza zmienna typu String) przechowywane jest imię i wiek rozdzielone dowolną liczbą spacji. Napisz podprogram, który podaną jako parametr, wyżej wymienioną tablicę przepisuje do tablicy rekordów w ten sposób, że imię trafia do pola imie (typu String), zaś wiek do pola wiek (typu Byte).

47 Zadania Zadanie 4 Napisz program, który zapisuje informacje o osobach do pliku rekordowego (imię, nazwisko, wiek - ilość rekordów podaje użytkownik). Następnie program dla co drugiej osoby (pierwszej, trzeciej, piątej, itp.) sprawdza pole wiek i jeżeli jest mniejsze od 10 to zwiększa jego wartość o 5 uaktualniając plik. Program musi wyświetlić poprawioną bazę osób (imię, nazwisko, wiek, płeć). Wskazówka: pamiętaj, że każda operacja odczytu/zapisu z/do pliku przesuwa wskaźnik położenia w pliku - w tym zadaniu przydatna okaże się procedura Seek do cofania wskaźnika położenia po odczycie/zapisie.

48 Zadania Zadanie 4 W pliku tekstowym we.txt zapisane są linie składające się z poprawnie zapisanych liczb całkowitych (typu Word) oraz mieszaniny liter i cyfr. Napisz program, który do pliku wy.txt zapisze tylko cyfry (jeśli w danej linii nie ma żadnej poprawnie zapisanej cyfry to nic nie przepisujemy, pomijamy taką linię). Przykład: a3sfs 5dfg f Wskazówki: do przetwarzania kolejnych elementów w linii tekstu przydatne będą funkcje/procedury Pos, Copy i Delete. Sprawdzenia, czy dany łańcuch znaków (String) jest liczbą można dokonać procedurą Val.

49 Bibliografia Andrzej Marciniak. Borland Pascal 7.0. Wydawnictwo Nakom, Poznań, Keith Weiskamp. Borland Pascal 7.0. WNT, Warszawa, 1996.

50 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 dydaktycznego uczelni oraz zwiększenie liczby absolwentów kierunków o kluczowym znaczeniu dla gospodarki opartej na wiedzy. Poddziałanie Wzmocnienie potencjału dydaktycznego uczelni. Umowa: uda-pokl /08-00 Materiały dydaktyczne Programowanie w języku wysokiego poziomu na przykładzie języka Pascal - część 2 (Moduł nr 12) zrealizowane do Zadania 9 Autorzy: mgr inż. Arkadiusz Chrobot, mgr inż. Karol Wieczorek, mgr inż. Robert Tomaszewski

Pliki. Operacje na plikach w Pascalu

Pliki. 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ółowo

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:

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ółowo

OPERACJE NA PLIKACH. Podstawowe pojęcia:

OPERACJE 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ółowo

Podstawy Programowania C++

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

Bardziej szczegółowo

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Wykład: 9 Łańcuchy znaków 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Rodzaje plików Dane przechowywane w pliku mogą mieć reprezentację binarną (taką samą, jak

Bardziej szczegółowo

Wykład PASCAL - Pliki tekstowe

Wykł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ółowo

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Niezwykł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ółowo

PLIKI. Składnia deklaracji zmiennej plikowej: file of <typ>

PLIKI. Składnia deklaracji zmiennej plikowej: file of <typ> PLIKI Plik jest struktura składającą się z elementów tego samego typu. Liczba elementów składowych pliku jest zmienna. Nie ma zadanych ograniczeń na liczbę elementów pliku, poza rozmiarami pamięci masowych

Bardziej szczegółowo

Język programowania PASCAL

Ję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ółowo

Wykład 4. Tablice. Pliki

Wykł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ółowo

PLIKI TEKSTOWE F C E 30 0D 0A 42 6F 72 6C 61 6E 64 1A T U R B O _ P A S C A L _ 7. 0

PLIKI TEKSTOWE F C E 30 0D 0A 42 6F 72 6C 61 6E 64 1A T U R B O _ P A S C A L _ 7. 0 PLIKI TEKSTOWE plik_liczb : file of integer; plik_znakow : file of char; plik_linii : text; deklaracja zmiennej plikowej Przykład sekwencji bajtów: 54 55 52 42 4F 20 50 41 53 43 41 4C 20 37 2E 30 0D 0A

Bardziej szczegółowo

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Programowanie 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ółowo

Pliki. Informacje ogólne. Obsługa plików w języku C

Pliki. Informacje ogólne. Obsługa plików w języku C Pliki Informacje ogólne Plik jest pewnym zbiorem danych, zapisanym w systemie plików na nośniku danych (np. dysku twardym, pendrive, płycie DVD itp.). Może posiadać określone atrybuty, a odwołanie do niego

Bardziej szczegółowo

Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe

Wykł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ółowo

Wszystkie zmienne typu plikowego, z wyjątkiem Output i Input muszą być zadeklarowane w sekcji deklaracji programu, który z nich korzysta.

Wszystkie zmienne typu plikowego, z wyjątkiem Output i Input muszą być zadeklarowane w sekcji deklaracji programu, który z nich korzysta. Programowanie strukturalne - pliki 1 LEKCJA 29. TYPY STRUKTURALNE - PLIKI Wprowadzenie Zmienne proste, tablice i rekordy są wykorzystywane w programie do przechowywania danych podczas wykonywania programu;

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup Baltie 3 Podręcznik do nauki programowania dla klas I III gimnazjum Tadeusz Sołtys, Bohumír Soukup Czytanie klawisza lub przycisku myszy Czytaj klawisz lub przycisk myszy - czekaj na naciśnięcie Polecenie

Bardziej szczegółowo

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

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

Bardziej szczegółowo

INSTRUKCJA 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. 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ółowo

DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0

DIAGRAMY 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ółowo

Programowanie w języku Python. Grażyna Koba

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

Bardziej szczegółowo

Wstęp do programowania. Różne różności

Wstę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ółowo

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku System plików 1. Pojęcie pliku 2. Typy i struktury plików 3. etody dostępu do plików 4. Katalogi 5. Budowa systemu plików Pojęcie pliku (ang( ang. file)! Plik jest abstrakcyjnym obrazem informacji gromadzonej

Bardziej szczegółowo

Programowanie w językach wysokiego poziomu

Programowanie w językach wysokiego poziomu Programowanie w językach wysokiego poziomu zajęcia nr 2 Elektronika i Telekomunikacja, semestr III rok akademicki 2014/2015 Plan dzisiejszych zajęć Pliki tekstowe 1. Operacje na plikach - wprowadzenie

Bardziej szczegółowo

*W uproszczeniu: jest dziewięciu sędziów przyznających po dwie noty: za wartość techniczną i artystyczną (skala od 0.0 do 6.0)

*W uproszczeniu: jest dziewięciu sędziów przyznających po dwie noty: za wartość techniczną i artystyczną (skala od 0.0 do 6.0) Tablice Mamy napisać program obliczający średnią ocenę w łyżwiarstwie figurowym W uproszczeniu: jest dziewięciu sędziów przyznających po dwie noty: za wartość techniczną i artystyczną (skala od 0.0 do

Bardziej szczegółowo

Pascal - wprowadzenie

Pascal - 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ółowo

Tablice. Jones Stygar na tropie zmiennych

Tablice. Jones Stygar na tropie zmiennych Tablice Jones Stygar na tropie zmiennych Czym jest tablica? Obecnie praktycznie wszystkie języki programowania obsługują tablice. W matematyce odpowiednikiem tablicy jednowymiarowej jest ciąg (lub wektor),

Bardziej szczegółowo

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Tablice 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ółowo

Wykład III PASCAL - iteracja cz, 2, - liczby losowe, - tablice

Wykł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ółowo

1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja. 2. Schemat blokowy przedstawia algorytm obliczania

1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja. 2. Schemat blokowy przedstawia algorytm obliczania 1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja nie ma parametru i zwraca wartość na zewnątrz. nie ma parametru i nie zwraca wartości na zewnątrz. ma parametr o nazwie void i zwraca

Bardziej szczegółowo

Wykład 8: klasy cz. 4

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

Bardziej szczegółowo

Algorytmy i struktury danych

Algorytmy 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

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4 Dr inż. Dariusz JĘDRZEJCZYK Wskaźniki Dynamiczna alokacja pamięci Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Wskaźnik to

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

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

Bardziej szczegółowo

Pliki. Ze względu na typ zawartych w nich danych rozróżnia się trzy podstawowe rodzaje plików:

Pliki. Ze względu na typ zawartych w nich danych rozróżnia się trzy podstawowe rodzaje plików: Pliki Dotychczas operowaliśmy danymi, które zapamiętywane były w pamięci operacyjnej komputera (RAM). Program Turbo Pascal umożliwia zapisywanie i odczyt danych, co zapewnia możliwość wielokrotnego ich

Bardziej szczegółowo

Podstawy programowania 2. Przygotował: mgr inż. Tomasz Michno

Podstawy 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

Deklaracja struktury w C++

Deklaracja struktury w C++ Struktury to złożone typy danych pozwalające przechowywać różne informacje. Za pomocą struktur możliwe jest grupowanie wielu zmiennych o różnych typach w jeden obiekt. Strukturę można nazywać obiektem

Bardziej szczegółowo

Laboratorium 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 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ółowo

INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki

INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki INFORMATYKA Z MERMIDONEM Programowanie Moduł 5 / Notatki Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego. Realizator projektu: Opracowano w ramach projektu

Bardziej szczegółowo

Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD programowania Wykład: 6 Tablice statyczne 1 dr Artur Bartoszewski - programowania, sem 1 - WYKŁAD programowania Tablice 2 Tablice Klasyfikacja zmiennych statycznych prosty porządkowy rzeczywisty całkowity

Bardziej szczegółowo

Ćwiczenie 4. Obsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1.

Ćwiczenie 4. Obsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1. Laboratorium Podstaw Informatyki Strona 1 Laboratorium Podstaw Informatyki Kierunek Elektrotechnika Ćwiczenie 4 Obsługa plików Kraków 2010 Laboratorium Podstaw Informatyki Strona 2 Obsługa plików Zanim

Bardziej szczegółowo

Programowanie 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 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ółowo

Wstęp do programowania 2

Wstę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ółowo

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1

Wykł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ółowo

ZASADY PROGRAMOWANIA KOMPUTERÓW

ZASADY PROGRAMOWANIA KOMPUTERÓW POLITECHNIKA WARSZAWSKA Instytut Automatyki i i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW Język Język programowania: C/C++ Środowisko programistyczne: C++Builder 6 Wykład 9.. Wskaźniki i i zmienne dynamiczne.

Bardziej szczegółowo

Programowanie 3 - Funkcje, pliki i klasy

Programowanie 3 - Funkcje, pliki i klasy Instytut Informatyki Uniwersytetu Śląskiego Laborki funkcja; parametry funkcji; typ zwracany; typ void; funkcje bez parametrów; napis.length() - jako przykład funkcji. Zadania funkcja dodająca dwie liczby;

Bardziej szczegółowo

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe

Wykł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ółowo

Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;

Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost; Klasy w C++ są bardzo ważnym narzędziem w rękach programisty. Klasy są fundamentem programowania obiektowego. Z pomocą klas będziesz mógł tworzyć lepszy kod, a co najważniejsze będzie on bardzo dobrze

Bardziej szczegółowo

Pascal. 1. Pliki tekstowe. Przykład 1.1. Zapis do pliku tekstowego

Pascal. 1. Pliki tekstowe. Przykład 1.1. Zapis do pliku tekstowego Pascal 1. Pliki tekstowe Przykład 1.1. Zapis do pliku tekstowego {deklaracja zmiennej tekstowej 'plik'} plik: text; {skojarzenie zmiennej plikowej 'plik' z plikiem na dysku (podajemy lokalizacje)} {tworzenie

Bardziej szczegółowo

Programowanie 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 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ółowo

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p. Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Wskaźnik do pliku Dostęp do pliku: zapis, odczyt,

Bardziej szczegółowo

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny Klasa 2 INFORMATYKA dla szkół ponadgimnazjalnych zakres rozszerzony Założone osiągnięcia ucznia wymagania edukacyjne na poszczególne oceny Algorytmy 2 3 4 5 6 Wie, co to jest algorytm. Wymienia przykłady

Bardziej szczegółowo

Podstawy 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. 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ółowo

Ćwiczenie: JavaScript Cookies (3x45 minut)

Ćwiczenie: JavaScript Cookies (3x45 minut) Ćwiczenie: JavaScript Cookies (3x45 minut) Cookies niewielkie porcje danych tekstowych, które mogą być przesyłane między serwerem a przeglądarką. Przeglądarka przechowuje te dane przez określony czas.

Bardziej szczegółowo

Podstawy 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. 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ółowo

Instrukcje 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: Instrukcje podsumowanie Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne: - grupująca end - warunkowa if

Bardziej szczegółowo

Zasady programowania Dokumentacja

Zasady programowania Dokumentacja Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy 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ółowo

Podstawy algorytmiki i programowania - wykład 4 C-struktury

Podstawy 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ółowo

Typy wyliczeniowe Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki

Typy wyliczeniowe Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki Typy wyliczeniowe Konwersje napis liczba Struktury, unie Scanf / printf Wskaźniki Typy wyliczeniowe Służą do łatwiejszej kontroli nad stałymi Ustawianie parametrów o ściśle określonym zbiorze wartości

Bardziej szczegółowo

Obsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1. Kraków 2013

Obsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1. Kraków 2013 Laboratorium Podstaw Informatyki Strona 1 Laboratorium Podstaw Informatyki Kierunek Elektrotechnika Obsługa plików Kraków 2013 Laboratorium Podstaw Informatyki Strona 2 Obsługa plików Zanim będziemy mogli

Bardziej szczegółowo

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119 Tablice Tablica to struktura danych, która może przechowywać wiele wartości tego samego typu. Na przykład tablica może zawierać: 10 wartości typu int opisujących liczbę studentów przyjętych na kierunek

Bardziej szczegółowo

wykład Organizacja plików Opracował: dr inż. Janusz DUDCZYK

wykład Organizacja plików Opracował: dr inż. Janusz DUDCZYK wykład Organizacja plików Opracował: dr inż. Janusz DUDCZYK 1 2 3 Pamięć zewnętrzna Pamięć zewnętrzna organizacja plikowa. Pamięć operacyjna organizacja blokowa. 4 Bufory bazy danych. STRUKTURA PROSTA

Bardziej szczegółowo

Lab 9 Podstawy Programowania

Lab 9 Podstawy Programowania Lab 9 Podstawy Programowania (Kaja.Gutowska@cs.put.poznan.pl) Wszystkie kody/fragmenty kodów dostępne w osobnym pliku.txt. Materiały pomocnicze: Wskaźnik to specjalny rodzaj zmiennej, w której zapisany

Bardziej szczegółowo

Podstawy programowania 2. Temat: Wprowadzenie do wskaźników. Przygotował: mgr inż. Tomasz Michno

Podstawy programowania 2. Temat: Wprowadzenie do wskaźników. Przygotował: mgr inż. Tomasz Michno Instrukcja laboratoryjna 1 Podstawy programowania 2 Temat: Wprowadzenie do wskaźników Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny Rysunek przedstawia najważniejszą różnicę pomiędzy zmiennymi,

Bardziej szczegółowo

2. Tablice. Tablice jednowymiarowe - wektory. Algorytmy i Struktury Danych

2. 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ółowo

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

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

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Analiza leksykalna 1. Języki formalne i automaty. Dr inż. Janusz Majewski Katedra Informatyki

Analiza leksykalna 1. Języki formalne i automaty. Dr inż. Janusz Majewski Katedra Informatyki Analiza leksykalna 1 Języki formalne i automaty Dr inż. Janusz Majewski Katedra Informatyki Zadanie analizy leksykalnej Kod źródłowy (ciąg znaków) Analizator leksykalny SKANER Ciąg symboli leksykalnych

Bardziej szczegółowo

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Tablice (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ółowo

Ćwiczenie 2 Wczytywanie i zapisywanie do plików tekstowych

Ć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ółowo

Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki

Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki Konwersje napis liczba Struktury, unie Scanf / printf Wskaźniki Konwersje liczba napis Ćwiczenia 1. Napisz aplikację, która na wejściu dostaje napis postaci W Roku Pańskim 1345, władca Henryk 12,

Bardziej szczegółowo

4. Pliki Informacje ogólne o dostępie do plików w PHP Sprawdzanie istnienia pliku file_exists()

4. Pliki Informacje ogólne o dostępie do plików w PHP Sprawdzanie istnienia pliku file_exists() 4. Pliki 4.1. Informacje ogólne o dostępie do plików w PHP Jak praktycznie każdy język programowania, PHP zapewnia dostęp do systemu plików znajdujących się na komputerze, na którym uruchamiany jest skrypt,

Bardziej szczegółowo

2017/2018 WGGiOS AGH. LibreOffice Base

2017/2018 WGGiOS AGH. LibreOffice Base 1. Baza danych LibreOffice Base Jest to zbiór danych zapisanych zgodnie z określonymi regułami. W węższym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyjętymi dla danego programu komputerowego,

Bardziej szczegółowo

Języki programowania zasady ich tworzenia

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

Bardziej szczegółowo

2.Sprawdzanie czy podana liczba naturalna jest pierwsza Liczba pierwsza to liczba podzielna tylko przez 1 i przez siebie.

2.Sprawdzanie czy podana liczba naturalna jest pierwsza Liczba pierwsza to liczba podzielna tylko przez 1 i przez siebie. CZEŚĆ A. Przykłady, cd. 1.Obliczanie wartości pierwiastka kwadratowego - algorytm Newtona-Raphsona http://pl.wikipedia.org/wiki/metoda_newtona (pierwszy przykład na stronach Wiki) Dane: Liczba a (a>0)

Bardziej szczegółowo

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

METODY 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ółowo

Analiza leksykalna 1. Teoria kompilacji. Dr inż. Janusz Majewski Katedra Informatyki

Analiza leksykalna 1. Teoria kompilacji. Dr inż. Janusz Majewski Katedra Informatyki Analiza leksykalna 1 Teoria kompilacji Dr inż. Janusz Majewski Katedra Informatyki Zadanie analizy leksykalnej Kod źródłowy (ciąg znaków) Analizator leksykalny SKANER Ciąg symboli leksykalnych (tokenów)

Bardziej szczegółowo

Elektrotechnika I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) Niestacjonarne (stacjonarne / niestacjonarne)

Elektrotechnika I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) Niestacjonarne (stacjonarne / niestacjonarne) Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Informatyka 2 Nazwa modułu w języku angielskim Computer science 2 Obowiązuje

Bardziej szczegółowo

Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u

Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u będziemy używać w taki sam sposób, jak wbudowanych funkcji

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1

Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1 Tablice i struktury czyli złożone typy danych. Programowanie Proceduralne 1 Tablica przechowuje elementy tego samego typu struktura jednorodna, homogeniczna Elementy identyfikowane liczbami (indeksem).

Bardziej szczegółowo

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści

Ję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ółowo

Wykład 5: Klasy cz. 3

Wykład 5: Klasy cz. 3 Programowanie obiektowe Wykład 5: cz. 3 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD - podstawy Konstruktor i destruktor (część I) 2 Konstruktor i destruktor KONSTRUKTOR Dla przykładu

Bardziej szczegółowo

Oracle PL/SQL. Paweł Rajba.

Oracle PL/SQL. Paweł Rajba. Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 2 Kusory Wprowadzenie Kursory użytkownika Kursory domyślne Zmienne kursora Wyrażenia kursora - 2 - Wprowadzenie Co to jest kursor?

Bardziej szczegółowo

Podstawy Programowania 2

Podstawy Programowania 2 Podstawy Programowania 2 Laboratorium 7 Instrukcja 6 Object Pascal Opracował: mgr inż. Leszek Ciopiński Wstęp: Programowanie obiektowe a programowanie strukturalne. W programowaniu strukturalnym, któremu

Bardziej szczegółowo

Algorytmy i struktury danych. wykład 1

Algorytmy 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ółowo

1 Podstawy c++ w pigułce.

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

Bardziej szczegółowo

Zapis algorytmów: schematy blokowe i pseudokod 1

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

Bardziej szczegółowo

Podstawowe wiadomości o systemach plików.

Podstawowe wiadomości o systemach plików. Podstawowe wiadomości o systemach plików. Komputery mogą przechowywać informacje w kilku różnych postaciach fizycznych na różnych nośnikach i urządzeniach np. w postaci zapisów na dysku twardym, płytce

Bardziej szczegółowo

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami 1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami Celem tych zajęć jest zrozumienie i oswojenie z technikami programowania przy pomocy wskaźników w języku C++. Proszę przeczytać rozdział 8.

Bardziej szczegółowo

typ zakres sposob zapamietania shortint integer bajty (z bitem znaku) longint byte word

typ 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ółowo

Wstęp do programowania. Wykład 1

Wstęp do programowania. Wykład 1 Wstęp do programowania Wykład 1 1 / 49 Literatura Larry Ullman, Andreas Signer. Programowanie w języku C++. Walter Savitch, Kenrick Mock. Absolute C++. Jerzy Grębosz. Symfonia C++. Standard. Stephen Prata.

Bardziej szczegółowo

Pliki. Informacje ogólne. Obsługa plików w języku C

Pliki. Informacje ogólne. Obsługa plików w języku C Pliki Informacje ogólne Plik jest pewnym zbiorem danych, zapisanym w systemie plików na nośniku danych. Może posiadać określone atrybuty, a odwołanie do niego odbywa się poprzez nazwę. Każdy plik ma skończoną

Bardziej szczegółowo

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

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

Bardziej szczegółowo

EGZAMIN MATURALNY Z INFORMATYKI

EGZAMIN MATURALNY Z INFORMATYKI Miejsce na naklejkę z kodem szkoły dysleksja EGZAMIN MATURALNY Z INFORMATYKI MIN-R2A1P-062 POZIOM ROZSZERZONY Czas pracy 150 minut Instrukcja dla zdającego 1. Sprawdź, czy arkusz egzaminacyjny zawiera

Bardziej szczegółowo

Informatyka 1. Przetwarzanie tekstów

Informatyka 1. Przetwarzanie tekstów Informatyka 1 Wykład IX Przetwarzanie tekstów Robert Muszyński ZPCiR ICT PWr Zagadnienia: reprezentacja napisów znakowych, zmienne napisowe w Sun Pascalu, zgodność typów, operowanie na napisach: testowanie

Bardziej szczegółowo

Materiał Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Wskaźniki Tablice dynamiczne Referencje Funkcje

Materiał Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Wskaźniki Tablice dynamiczne Referencje Funkcje Podstawy informatyki Informatyka stosowana - studia niestacjonarne - Zajęcia nr 4 Grzegorz Smyk Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza im. Stanisława Staszica w

Bardziej szczegółowo

Argumenty wywołania programu, operacje na plikach

Argumenty wywołania programu, operacje na plikach Temat zajęć: Argumenty wywołania programu, operacje na plikach Autor: mgr inż. Sławomir Samolej Zagadnienie 1. (Zmienne statyczne) W języku C można decydować o sposobie przechowywania zmiennych. Decydują

Bardziej szczegółowo