Zbiory i rekordy mgr inż. Agata Pacek. Deklaracja typu zbiorowego (określa ilość elementów w zbiorze) type biegi=set of 0..6; Definiowanie zmiennej typu.

Slides:



Advertisements
Podobne prezentacje
Tablice 1. Deklaracja tablicy
Advertisements

Katarzyna Szafrańska kl. II ti
STRUKTURY DANYCH.
Sortowanie przez scalanie
typy całkowite (całkowitoliczbowe)
PROGRAMOWANIE STRUKTURALNE
PROGRAMOWANIE STRUKTURALNE
OBJECT PASCAL Marzena Szałas.
Współprogramy III Ten wykład ma na celu pokazanie kolejnej ciekawej możliwości, którą oferują współprogramy. Wspólprogramy reprezentujące wyrażenia regularne.
ZŁOŻONOŚĆ OBLICZENIOWA
Turbo pascal – instrukcje warunkowe, iteracyjne,…
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 6: Tablice, rekordy, zbiory.
Rekurencja Copyright, 2000 © Jerzy R. Nawrocki Wprowadzenie do informatyki Wykład.
Imperatywne modele obliczeń Copyright, 2001 © Jerzy R. Nawrocki Wprowadzenie do.
Rekurencja Copyright, 2001 © Jerzy R. Nawrocki Wprowadzenie do informatyki Wykład.
Imperatywne modele obliczeń Copyright, 2003 © Jerzy R. Nawrocki Teoretyczne podstawy.
Programowanie imperatywne i granice obliczalności Copyright, 2004 © Jerzy R. Nawrocki
Rekursja Copyright, 2004 © Jerzy R. Nawrocki Teoretyczne podstawy informatyki.
Kurs Pascala – spis treści
WYZWALACZE (TRIGGERY) Wyzwalacz jest specjalnym rodzajem procedury składowanej, która może być wykonana w odpowiedzi na jedną z trzech sytuacji: UPDATE.
Ogólne jednostki programowe 1
Dynamiczne struktury danych 1
Tablice jednowymiarowe 1
Wykład 2 struktura programu elementy języka typy zmienne
Wprowadzenie do programowania w języku Turbo Pascal
Pliki. Pliki Pliki jako pamięć nieulotna Pliki jako pamięć nieulotna Nazwy, atrybuty i prawa dostępu Nazwy, atrybuty i prawa dostępu atrybuty atrybuty.
Typy wyrażenia, schematy blokowe, writeln, readln, if, pętle
Typy wskaźnikowe, dynamiczne struktury danych
Podprogramy.
Typy złożone, case, stałe. Typ zbiorowy type typ_zb = set of typ_podstawowy; Typem podstawowym może być tylko typ porządkowy. Typem podstawowym może być
PROGRAMOWANIE STRUKTURALNE
PROGRAMOWANIE STRUKTURALNE WYKŁAD 2
Schemat Hornera Mgr inż. Michał Szucki.
Podstawy programowania
AWK Zastosowania Informatyki Wykład 1 Copyright, 2003 © Adam Czajka.
Język PASCAL – podstawy Turbo Pascal: procedury, funkcje
Programowanie strukturalne i obiektowe
Pliki tekstowe. Operacje na plikach. mgr inż. Agata Pacek.
Andrzej Jędryczkowski Nie da się napisać większego programu bez podziału go na części zwane podprogramami. Podprogram to wyróżniona część programu.
Algorytmy z przykładami w Turbo Pascal 7.0
© A. Jędryczkowski – 2006 r. © A. Jędryczkowski – 2006 r.
Podstawy informatyki Struktury, operatory, wyjątki
Wyrażenia w Turbo Pascalu.
Procedury i funkcje.
Definicja pliku tekstowego Operacje wykonywane na plikach tekstowych
Podstawy programowania
Pliki Pojęcie i rodzaje plików Definicja typu plikowego Operacje wykonywane na plikach elementowych.
Pliki tekstowe – A. Jędryczkowski © 2007 Turbo Pascal umożliwia wykorzystanie w programach plików tekstowych. Pliki takie zawierają informację niezakodowaną
1 Wykład 8 Podprogramy. 2 Pojęcie i istota stosowania dzielenie programu na części (logicznie spójne) - nazwane - niezależne od pozostałych części - z.
Programowanie strukturalne i obiektowe
Programowanie strukturalne i obiektowe
Tablice. Tablica struktura danych, służy do przechowywania danych tego samego typu, zapisana w pamięci w sposób ciągły. Deklaracja tablicy PascalC++,
Turbo Pascal umożliwia wykorzystanie w programach zbiorów teoriomnogościowych, których elementy muszą należeć do pewnego określonego typu. Typ zbiorowy.
Informatyka MPZI Wykład 4 Podprogramy Pliki Typ zbiorowy Rekurencja.
Visual Basic for Applications Poziom podstawowy Zajęcia 2
Wykład 10 typ zbiorowy rekurencja.
Ogólna struktura programu w TP
Informatyka 2 MPDI Wykład 9 Delphi tablice, rekordy.
Algorytmika Iteracje autor: Tadeusz Lachawiec.
Informatyka MPDI2 Wykład 10 DELPHI cd. - zmienne tablicowe,
Podstawowe struktury danych. Typy danych.
Programowanie imperatywne i język C Copyright, 2007 © Jerzy R. Nawrocki Wstęp do.
Podsumowanie wiedzy MPDI2 sem.3 INFORMATYKA. tworzenie nowego pliku i katalogu, nawigacja po katalogach, listowanie zawartości katalogu, zmiana nazw,
P ASCAL Definicje, deklaracje, podstawowe instrukcje 1.
Wykład 1 Informatyka II MPZI2 sem.letni. Tablice Tablice deklarujemy array [ lista typów indeksów ] of typ bazowy (składowych) np. var t1,t2:array [1..5,
Czym jest PHP? ● Językiem programowania przeznaczonym do tworzenia i generowania dynamicznych stron WWW. Działa po stronie serwera: Klient Żądanie strony.
Dane, zmienne, instrukcje
Zapis prezentacji:

Zbiory i rekordy mgr inż. Agata Pacek

Deklaracja typu zbiorowego (określa ilość elementów w zbiorze) type biegi=set of 0..6; Definiowanie zmiennej typu zbiorowego biegi biegi_motocykla:biegi; Przypisanie wartości dla zmiennej biegi_motocykla biegi_motocykla:=[1,2,3,4,5,6,0]

program motor; type biegi = set of 0..6; var biegi_motocykla :biegi; zmienna :integer; begin writeln('Podaj jaki bieg motocykla chcesz wlaczyc (0-6)'); readln(zmienna); biegi_motocykla:= [1,2,3,4,5,6,0]; if zmienna in biegi_motocykla then writeln('Podany bieg nalezy do zbioru') else writeln('Zbior dostepnych biegow nie zawiera podanego przez ciebie'); readln; end.

Używając zbiorów, nie odwołujemy się do konkretnego elementu zbioru, tak jak w przypadku tablicy. Pracując ze zbiorem, możemy jedynie przy użyciu operatora IN sprawdzić, czy dany element należy do zbioru. Podczas definiowania zbioru ważne jest, aby jego elementy były jednego typu, który jest nazwany typem bazowym.

program zbiory; var cyferki :set of BYTE; x :byte; begin writeln('Podaj cyferke'); readln(x); cyferki:=[1..10]; if x in cyferki then writeln('podales cyfre ze zbioru 1..10') else writeln('podales, ktorej nie ma w zbiorze 1..10'); readln; end.

Na zbiorach można wykonywać następujące działania: Łączenie(suma) Różnica Część wspólna(iloczyn)

Dodawanie zbiorów program zbiory; var litery1 :set of char; litery2 :set of char; wynik1 :set of char; begin litery1:=['a'..c']; litery2:=[A',B',D']; wynik1:=litery1+litery2; if D' in wynik1 then writeln('dodawanie sie udalo'); readln; end.

Napisz program obliczający część wspólną dwóch zbiorów Literki1:=[a..d]; Literki2:=[a,b,c]; Jeśli w zbiorze wynik powinny się znajdować litery a,b,c. Sprawdź, czy zbiór wynik zawiera d. Dla zbiorów literki1 i literki2 oblicz różnicę. Zbiór wynik powinien zawierać tylko d. Sprawdź, czy wynik zawiera a i d.

Rekordy służą do przechowywania danych różnych typów. Deklaracja rekordów Identyfikator_rekordu=rekord pole:typ ………… end;

Program motorki Do garażu wprowadzamy trzy motory (tablica trzy elementowa garaz, każdy element jest rekordem typu motocykl) Do każdego motoru przypisujemy markę, symbol, prędkość maksymalną program motorki; type motocykl = record marka :string[10]; symbol :string[10]; predkoscmax :integer; end; var garaz :array[1..3] of motocykl; a :integer;

begin writeln('Wprowadz trzy motocykle do garazu '); for a:=1 to 3 do begin writeln('Marka motocykla nr: ',a,' to: '); readln(garaz[a].marka); writeln('Symbol motocykla nr: ',a,' to: '); readln(garaz[a].symbol); writeln('Najszybciej jechales motocyklem nr: ',a,'[km/h] ? '); readln(garaz[a].predkoscmax); end;

writeln('Wyswietle co jest w garazu wcisnij ENTER'); readln; for a:=1 to 3 do begin writeln('motorek nr: ',a); writeln(garaz[a].marka); writeln(garaz[a].symbol); writeln(garaz[a].predkoscmax); end; writeln('KONIEC wcisnij ENTER'); readln; end.

Podczas pracy z rekordami przydatna jest instrukcja with, która działa we fragmencie programu ograniczonym słowami begin i end. W jego ramach możemy odwoływać się do pól rekordu bez podawania przedrostków, czyli zamiast konstukcji readln(garaz[a].marka); używamy readln(marka);

writeln('Wprowadz trzy motocykle do garazu '); for a:=1 to 3 do with garaz[a] do begin writeln('Marka motocykla nr: ',a,' to: '); readln(marka); writeln('Symbol motocykla nr: ',a,' to: '); readln(symbol); writeln('Najszybciej jechales motocyklem nr: ',a,'[km/h] ? '); readln(predkoscmax); end; writeln('Wyswietle co jest w garazu wcisnij ENTER');