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

Podobne dokumenty
Wykład VI PASCAL procedury i funkcje przekazywanie parametrów,

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

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem.

Podstawy programowania. Wykład: 7. Funkcje Przekazywanie argumentów do funkcji. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład V PASCAL - operacje na znakach i łańcuchach; - dźwięk,

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, - liczby losowe

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

Wykład PASCAL - Pliki tekstowe

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

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

Podstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład 5: Klasy cz. 3

Wykład 2 Składnia języka C# (cz. 1)

Wykład II Tablice (wstęp) Przykłady algorytmów Wstęp do języka C/C++

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

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Podstawy programowania. Wykład: 8. Wskaźniki. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład 8: klasy cz. 4

Zmienne, stałe i operatory

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Podstawy programowania. Wykład PASCAL. Wstęp do programowania obiektowego. dr Artur Bartoszewski - Podstawy programowania, sem.

DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0

Języki programowania C i C++ Wykład: Typy zmiennych c.d. Operatory Funkcje. dr Artur Bartoszewski - Języki C i C++, sem.

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

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

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

Języki programowania obiektowego Nieobiektowe elementy języka C++

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

Podstawy programowania w języku C++

2 Przygotował: mgr inż. Maciej Lasota

Języki programowania. Przetwarzanie tablic znaków. Część druga. Autorzy Tomasz Xięski Roman Simiński

Podstawy programowania

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

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

ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje

Język programowania PASCAL

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

Elementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors.

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Wykład 9: Polimorfizm i klasy wirtualne

2. Łańcuchy tekstowe w PHP

Tablice deklaracja, reprezentacja wewnętrzna

Podstawy Programowania

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

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

Pascal - wprowadzenie

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

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

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

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

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};

Wykład I: Kodowanie liczb w systemach binarnych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

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

#7 P r o g r a m... Rys Struktura zmiennej typu string

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Definicje. Algorytm to:

Narzędzia informatyczne w językoznawstwie

Tablice, funkcje - wprowadzenie

Informatyka I. Wykład 4. Tablice. Dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

ZASADY PROGRAMOWANIA KOMPUTERÓW

Języki i metodyka programowania. Wprowadzenie do języka C

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

Zasady Programowania Strukturalnego

lekcja 8a Gry komputerowe MasterMind

SUM Edukacja Techniczno Informatyczna Języki i Systemy Programowania. Wykład 3. dr Artur Bartoszewski - WYKŁAD: Języki i Systemy Programowania,

Podstawy programowania w języku C++

Wykład 1: Wskaźniki i zmienne dynamiczne

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

ZMIENNE. Podstawy PHP

Wykład 3 Składnia języka C# (cz. 2)

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Instrukcje podsumowanie. Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne:

Proste typy zmiennych języka C++ *) Zapis 3.4 e-38 jest równoważny zapisowi 3,

Lekcja 6: Pascal. Procedura i funkcja

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

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.

int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania

iii. b. Deklaracja zmiennej znakowej poprzez podanie znaku

Elementy języków programowania

Wstęp do programowania

Ćwiczenie nr 6. Poprawne deklaracje takich zmiennych tekstowych mogą wyglądać tak:

Informatyka 1. Przetwarzanie tekstów

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

ŁAŃCUCHY W JĘZYKU C/C++

DANE TEKSTOWE W JĘZYKU C/C++ - TABLICE ZNAKOWE

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

Algorytmy i struktury danych. wykład 1

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Podstawy programowania C. dr. Krystyna Łapin

Podstawy Programowania

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27

Wskaźniki w C. Anna Gogolińska

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

Rok akademicki: 2013/2014 Kod: JFT s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Transkrypt:

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 porządkowy całkowity logiczny prosty rzeczywisty znakowy typ łańcuchowy tablicowy złożony rekordowy plikowy 3

I. Łańcuchy Deklaracja łańcuchów Przykładowa deklaracja zmiennej łańcuchowej ma postać: var Napis : string; Stałe łańcuchowe zapisuje się w postaci ciągów znaków ujętych w apostrofy (podobnie jak stałe znakowe): const STALY_NAPIS = 'Turbo Pascal' 4

I. Łańcuchy Długość łańcucha Aby "skrócić" łańcuch (dana typu string zajmuje zawsze 256 bajtów, niezależnie od rzeczywistej długości tekstu), można wykorzystać deklarację Var nazwa_zmiennej : string[długość]; Możliwość ta jest szczególnie cenna, jeśli w programie wykorzystujesz np. tablicę łańcuchów: Zerowy element łańcucha przechowuje jego aktualną długość (tzw. długość dynamiczną); będąc typu znakowego może on przyjmować wartości od 0 do 255. Stąd właśnie wynika ograniczenie długości łańcucha do 255 znaków. Length(s) - zwraca bieżącą długość łańcucha s; 5

I. Łańcuchy Odwołanie do poszczególnych elementów łańcucha Dowolny łańcuch (string) przechowywany jest w programie w postaci ciągu znaków, który może być interpretowany jako specyficzna tablica: array[1..255] of char Odwołania do poszczególnych znaków łańcucha realizuje się w sposób analogiczny jak dla tablicy. s[5] := 'x - wstawi znak x na piątą pozycję w łańcuchu s 6

I. Łańcuchy Operacje na łańcuchach Operacje na łańcuchach w zasadzie nie różnią się zapisem od operacji na zmiennych typu prostego. Do wprowadzania, wyprowadzania i przypisywania łańcuchów wykorzystuje się - podobnie jak dla zmiennych typów prostych - procedury Read/ReaLn, Write/WriteLn oraz operator przypisania. Również porównanie dwóch łańcuchów zapisywane jest identycznie, przy czym "wewnętrznie" odbywa się ono przez porównanie kodów odpowiadających sobie znaków. Tak więc: 'C' < 'Pascal' (kod ASCII znaku 'C' jest mniejszy od kodu 'P') 'c' > 'Pascal' (kod ASCII znaku 'c' jest większy od kodu 'P') 'C' > '' (dowolny łańcuch jest większy od łańcucha pustego) 7

I. Łańcuchy Operacje na łańcuchach Bardziej wymyślne operacje na łańcuchach wymagają użycia specjalnie do tego celu przeznaczonych funkcji: Length(s) - zwraca bieżącą długość łańcucha s; Concat(s1, s2) - skleja łańcuchy s1 i s2 (podobnie, jak operator +) Copy(s, m, n) - zwraca podłańcuch o długości m znaków wycięty z łańcucha s poczynając od pozycji n; Pos(ch, s) - zwraca numer pozycji, na której w łańcuchu s znajduje się znak ch; Delete(s, m, n) - usuwa n znaków z łańcucha s poczynając od pozycji m. 8

I. Łańcuchy Operacje na łańcuchach 9

I. Łańcuchy Operacje na łańcuchach 10

Podstawy programowania Część II - Procedury i funkcje Parametry formalne i aktualne Przesłanianie zmiennych Przekazywanie parametrów przez wartość i przez zmienną 11

II. Procedury i funkcje Procedury bez parametrów Tablica zadeklarowana globalnie widoczna dla programu głównego i wszystkich procedur Zmienna zadeklarowana lokalnie tworzona jest w momencie wywołania procedury i znika gdy procedura kończy pracę 12

II. Procedury i funkcje Zakres widoczności zmiennych i tab_los i, suma 13

II. Procedury i funkcje Procedury z parametrami Parametry formalne i aktualne 1. Parametry formalne a) deklarowane są w nagłówku funkcji (procedury) b) są to identyfikatory (nazwy) symbolizujące dane przekazywane do funkcji; 2. Parametry aktualne a) rzeczywiste wartości zmiennych, stałych i wyrażeń podstawiane podczas wywołania w miejsce parametrów formalnych Parametry formalne opisują jedynie postać informacji przekazywanej do funkcji (procedury); Rzeczywistą informację niosą ze sobą dopiero parametry aktualne. 14

II. Procedury i funkcje Procedury z parametrami Przysłanianie zmiennych jest to zadeklarowanie parametru o nazwie takiej samej, jak zmienna globalna (w ogólności - zmienna zadeklarowana w bloku nadrzędnym) wystąpi wówczas efekt przysłaniania, tj. wszelkie odwołania wewnątrz funkcji korzystającej z parametru będą odnosiły się do niego, a nie do przysłoniętej zmiennej globalnej 100 100 15

Literatura: W prezentacji wykorzystano przykłady i fragmenty: Piotr Fulmański, Ścibór Sobieski, Wstęp do informatyki, Podręcznik, Wydawnictwo Uniwersytetu Łódzkiego, 2005. http://www.inf.sgsp.edu.pl/ http://deuter.am.put.poznan.pl/zwm/ R. Jarża, Turbo Pascal. Szkoła programowania, Wydawnictwo Robomatic 2000. (dostępne w bibliotece uczelni) J. Bishop, Turbo Pascal, Wydawnictwo RM, Warszawa 1999. T. M. Sadowski, Turbo Pascal. Programowanie, Helion 1996. 16 dr Artur Bartoszewski - Nowoczesne technologie informatyczne - WYKŁAD