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

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

Procedury i funkcje - powtórzenie i uzupełnienia. Przykład funkcji potęgowanie przy wykładniku naturalnym

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 III PASCAL - iteracja cz, 2, - liczby losowe, - tablice

Język programowania PASCAL

DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0

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

Programowanie w Turbo Pascal

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

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

Podstawy Programowania C++

INSTRUKCJE PĘTLI, INSTRUKCJA WYBORU. Instrukcja pętli For to do

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

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

Przykład programu Rozwiązanie równania postaci:

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

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

Procedury i funkcje. Przykład programu z procedurą. Definicja. Cechy procedury

KURS PASCAL A. 1.Wprowadzenie

INSTRUKCJA ITERACYJNA REPEAT. repeat Instrukcja_1; Instrukcja_2; {... } Instrukcja_N; until wyr ; INSTRUKCJA ITERACYJNA WHILE

Zasady Programowania Strukturalnego

Wprowadzenie komentarzy do programu

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

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

Podstawy programowania

3. Podstawowe funkcje mamematyczne. ZAPOZNAĆ SIĘ!!!

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Podstawy programowania

Informatyka 1. Przetwarzanie tekstów

Zakres wykładu INFORMATYKA. dr inż. Michał Łanczont Wydział Elektrotechniki i Informatyki p. E419 tel

Informatyka 1. Dokumentacja programu, moduły programowe, typy tablicowe

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

20. Pascal i łączenie podprogramów Pascala z programem napisanym w C

Podstawy programowania

Wrocław, dn. 19 kwietnia 2006 roku. Anna Kaleta Piotr Chojnacki IV rok, informatyka chemiczna Liceum Ogólnokształcące nr 10 we Wrocławiu

tablica: dane_liczbowe

Lekcja 6: Pascal. Procedura i funkcja

Jerzy Nawrocki, Wprowadzenie do informatyki

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

Programowanie. Wprowadzanie danych i wyprowadzanie wyników. Klasa 2 Lekcja 24 WEJŚCIE/WYJŚCIE

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

WIADOMOŚCI WSTĘPNE WPROWADZENIE DO JĘZYKA TURBO PASCAL. Klawisze skrótów. {to jest właśnie komentarz, moŝna tu umieścić dowolny opis}

Jerzy Nawrocki, Wprowadzenie do informatyki

Algorytmy i struktury danych

Informatyka 1. Procedury i funkcje, struktura programu w Pascalu

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

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

Podstawy programowania

OPERACJE NA PLIKACH. Podstawowe pojęcia:

Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel

Podstawy programowania

Pascal - wprowadzenie

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

Wstęp do programowania

APROKSYMACJA. Rys. 1. Funkcja aproksymująca zbiór punktów pomiarowych (1) (2) (3) (4) (5) (6) (7) ... Zmienna y

Język C, tablice i funkcje (laboratorium, EE1-DI)

Opis problemu i przedstawienie sposobu jego rozwiązania w postaci graficznej. Gimnazjum nr 3 im. Jana Pawła II w Hrubieszowie 1

Tablice. TYPE identyfikator tablicy = ARRAY [Indeksl,..., Indeksn] OF Typ; Dany identyfikator_ tablicy można wykorzystać w deklaracji VAR:

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

1 Wprowadzenie. program t e s t 3 ; begin. Polecenie program. Różnice między poleceniami write i writeln. writeln ( Witaj, a ) ; end.

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

TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ;

Podstawy programowania

Prognozowanie rozgrywki grą planszową

Algorytmy i struktury danych. wykład 1

Matematyka dyskretna - wykład - część Podstawowe algorytmy kombinatoryczne

1. Język Pascal Program

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

Spis treści. I. Pascal

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

Podprogramy. Procedury

PASCAL Kompendium. Środowisko TURBO PASCAL Skróty klawiaturowe. Edycja kodu Pomoc spis treści. Skopiowanie zaznaczonego bloku do schowka

Wstęp do programowania

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

TEMAT: Podejmowanie decyzji w programie instrukcja warunkowa (IF).

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

Elementy Pascala Konstrukcja programu w Pascalu Typy danych

Kurs Pascala LO Biecz 2010/2011. Kurs Pascala oparty na zadaniach i problemach z lekcji Informatyki.

Programowanie w języku Pascal

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

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

Informatyka 1. Wyrażenia i instrukcje, złożoność obliczeniowa

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

Język C, tablice i funkcje (laboratorium)

Proste programy w C++ zadania

Informatyka 1. Wyrażenia i instrukcje cd., ręczna symulacja, operacje wejścia/wyjścia

P R OGRA M OW A N I E KOMPUTERÓW Ćwiczenia laboratoryjne. TEMAT 8: Moduły standardowe

Wymiar musi być wyrażeniem stałym typu całkowitego, tzn. takim, które może obliczyć kompilator. Przykłady:

Algorytmy i struktury danych

PODSTAWY PROGRAMOWANIA

Warsztaty dla nauczycieli

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

Zapis programu z wykorzystaniem modułu (Podstawy Delphi 2.1, 2.2, 2.3 str11 )

Pascal_cwiczenia_do_ksiazki_helionu_32_6 wykonał Tomasz Roszczyk

Przykładowerozwiązania.

ZASADY PROGRAMOWANIA KOMPUTERÓW

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

Wprowadzenie Tablica jednowymiarowa Tablice wielowymiarowe Algorytmy Rekordy Pliki Zadania Bibliografia

Programowanie modułowe

1 Wskaźniki i listy jednokierunkowe

Transkrypt:

Instrukcje podsumowanie Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne: - grupująca <zestaw instrukcji> end - warunkowa if <wyrażenie> then <instrukcja1>; lub if <wyrażenie> then <instrukcja1> else <instrukcja2>; - pętli repeat <instrukcje> until <warunek_końca>; while <warunek kontynuacji> do <instrukcja>; suma := 0; writeln('liczby zakończ 0'); readln(a) while a <> 0 do suma := suma + a; writeln('suma=', suma:8:2); suma := 0; writeln('liczby zakończ 0'); repeat suma := suma + a; until a = 0; writeln('suma=', suma:8:2);

for <zmienna> := <wyr_pocz> to <wyr_kon> do <instrukcja>; for <zmienna> := <wyr_pocz> downto <wyr_kon> do <instrukcja>; Przykłady writeln('i=', i, ' i*i=', i*i); Ile dodatnich z 2, 3, 4 liczb readln(a, b); ile := 0; if a > 0 then ile := ile+1; if b > 0 then ile := ile+1; writeln('ilosc liczb dodatnich: ', ile); Ile dodatnich z N liczb: ile := 0; if a > 0 then ile := ile+1; writeln('ilosc liczb dodatnich: ', ile);

Klasyfikacja typów danych w języku Pascal: TYPY Wskaźnikowy Proste Strukturalne Obiektowy Rzeczywiste Porządkowe Całkowite Logiczny Znakowy Wyliczeniowe Tablicowy Rekordowy Zbiorowy Plikowy Okrojone Definiowane typy proste w pascalu. Typ okrojony: [ <wartosc_dolna>.. <wartosc_gorna> ] Typ taki obejmuje wartości określone zakresem. Oba ograniczenia muszą być jednakowego typu prostego nie rzeczywistego. Typ wyliczeniowy ( <stała1>, <stała2>,... ) Stałe muszą być identyfikatorami. Typ zawiera tyle wartości ile jest wymienione w deklaracji. Deklaracja ta służy jednocześnie do zdefiniowania stałych.

Problem: Dane jest N liczb. Obliczyć ile z nich jest większe od średniej wszystkich liczb. suma := 0; suma := suma+a; srednia:=suma/n; ile := 0; if a > srednia then ile := ile+1; writeln('ilosc liczb wiekszych od sredniej: ', ile); Zamieszczony wyżej przykład wymaga dwukrotnego podawania liczb przez użytkownika co jest niedopuszczalne. Komputer powinien raz wczytać liczby, zapamiętać je, by następnie można było wielokrotnie z nich korzystać. Tablice Tablica to pojemnik na ciąg wartości (liczb). Pojemnik ma jedną nazwę, a składa się z wielu jednakowych komórek Każda komórka przeznaczona jest do przechowywania jednego elementu tablicy. Komórki są ponumerowane (indeksowane). Indeksami komórek są zwykle kolejne liczby całkowite. A 1 3 2-4.5 3 12... N -2 Element tablicy identyfikujemy podając jej nazwę i indeks elementu. Obowiązuje składnia: <nazwa tablicy> [ <indeks elementu> ]

Na przykład A[1] A[2] A[i+1] element 1-szy element 2-gi element i+1 szy Deklaracja tablic Obowiązująca składnia opisu typu tablicowego: array [ <typ_porządkowy>,... ] of <typ_elementu>; Tablica może mieć wiele wymiarów. Deklaracja tablicy jednowymiarowej: array [ <typ porządkowy> ] of <typ elementu> <typ porządkowy> określa zakres indeksów tablicy (a więc także liczbę elementów tablicy) <typ porządkowy to najczęściej okrojenie. Przykłady deklaracji tablic: Type Var Tab1 = array [1.. 10] of char; Tab2 = array[ 1.. 10, 1..10 ] of integer; Nap: array [ 1..20 ] of Tab1; X, Y : array [ 1.. 10 ] of real; Y1, Y2 : Tab2; Można deklarować tablice o bardzo złożonej strukturze. Najczęściej używane są jednowymiarowe o indeksach wyrażanych liczbami całkowitymi od 1. W obsłudze tablic przydatna jest instrukcja for. Rozwiązanie problemu (liczba większych od średniej) z wykorzystaniem tablic: var i, n, ile: integer; suma, srednia: real; a: array [1..100] of real; writeln('podaj liczbe elementow'); writeln('podaj elementy'); { wczytywanie tablicy } readln(a[i]);

suma := 0; { sumowanie elementow tablicy } suma := suma+a[i]; srednia:=suma/n; ile := 0; { zliczanie liczby el. > sredniej } if a[i] > srednia then ile := ile+1; writeln('ilosc liczb wiekszych od sredniej: ', ile); Przykład wyznaczenie maksimum z użyciem tablic: var i, n, imax: integer; max: real; a: array [1..100] of real; writeln('podaj liczbe elementow'); writeln('podaj elementy'); readln(a[i]); max := a[1]; imax:=1; if a[i] > max then max := a[i]; imax := 1; writeln('najwiekszy element na pozycji: ', imax, ' ma wartosc = ', max:8:2); Procedury i funkcje Przykład pole trójkąta na podstawie 3 boków wykorzystaniem funkcji var a, b, c, p: real; function pole (a, b, c: real) : real; var p: real; p:=(a + b +c)/2; pole:=sqrt((p-a)*(p-b)*(p-c)*p); writeln('podaj boki'); readln(a, b, c); p:=pole(a, b, c); writeln('pole = ', p:8:2); readln;

Składnia funkcji function <nazwa>(<lista_parametrów>) : <typ_wyniku>; <deklaracje_lokalne> <instrukcje> <nazwa> := <wyrażenie>; { lub return <wyrażenie>; } Przykład rysowanie gwiazdek var k: integer; procedure gwiazdki (n: integer); var i: integer; write('*'); writeln; writeln('podaj liczbe'); readln(k); gwiazdki(k); readln; var i, n: integer; a: array [1..100] of integer; procedure gwiazdki (n: integer); var i: integer; write('*'); writeln; writeln('podaj liczbe paskow'); writeln('podaj ilosci gwiazdek'); readln(a[i]); gwiazdki(a[i]); readln; Składnia procedury procedure <nazwa>(<lista parametrów>); <deklaracje_lokalne> <instrukcje>

Przykład wyznaczenie maksimum z użyciem procedur: type t1=array [1..100] of real; var i, n: integer; max: real; a: t1; procedure emax(n: integer; x: t1; var max: real); var i: integer; max := a[1]; if a[i] > max then max := a[i]; write('podaj liczbe elementow: '); writeln('podaj elementy'); readln(a[i]); writeln('poczatek obliczen'); Emax(n, a, max); writeln('najwiekszy element =', max:8:2); readln;