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

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

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

Programowanie w Turbo Pascal

Lekcja 6: Pascal. Procedura i funkcja

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

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

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

Język programowania PASCAL

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

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

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

Przykładowerozwiązania.

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

WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński

Podprogramy. Procedury

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

Algorytmy i struktury danych

KURS PASCAL A. 1.Wprowadzenie

Podstawy programowania

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

Języki programowania zasady ich tworzenia

Informatyka 1. Procedury i funkcje, struktura programu w Pascalu

INFORMATYKA. Studia Niestacjonarne Elektrotechnika Wydział Elektrotechniki i Informatyki. dr inż. Michał Łanczont

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

Zasady Programowania Strukturalnego

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

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

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

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

Prognozowanie rozgrywki grą planszową

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

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

Języki i metody programowania

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

Wstęp do programowania

Pliki. Operacje na plikach w Pascalu

Pascal - wprowadzenie

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Procedury i funkcje. Programowanie komputerowe

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

Podstawy programowania

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

Podstawy Programowania semestr drugi. Wykład czternasty

Instrukcje pętli przykłady. Odgadywanie hasła. 1) Program pyta o hasło i podaje adres, gdy hasło poprawne lub komunikat o błędnym haśle.

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

Programowanie - wykład 4

Wprowadzenie komentarzy do programu

DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

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

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

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Wprowadzenie do programowania w języku C

Programowanie w języku Python. Grażyna Koba

Wyszukiwanie największej spośród czterech liczb. Przykładowe rozwiązanie

FUNKCJA REKURENCYJNA. function s(n:integer):integer; begin if (n>1) then s:=n*s(n-1); else s:=1; end;

Konstrukcja alternatywy

Pascal_cwiczenia_do_ksiazki_helionu_32_6 wykonał Tomasz Roszczyk

Zespół Szkół nr 9 Im. Romualda Traugutta Ul. Jedności Koszalin

Praca z programem ALGO

Podstawy programowania

Instrukcja standardowa Writeln

Ilość cyfr liczby naturalnej

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

Metody numeryczne Laboratorium 2

Ćwiczenie nr 3. Temat: Definicje i wykorzystanie funkcji, parametry funkcji

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Podstawy programowania 2. Temat: Funkcje i procedury rekurencyjne. Przygotował: mgr inż. Tomasz Michno

Delphi Laboratorium 3

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

Wstęp do Informatyki

main( ) main( void ) main( int argc, char argv[ ] ) int MAX ( int liczba_1, liczba_2, liczba_3 ) źle!

Język PL/SQL Procedury i funkcje składowane

Procedury i funkcje składowane

Podstawy Programowania

Struktura i podstawowe instrukcje programu. Środowisko tworzenia programów. 1. Tworzenie i kompilacja z wiersza poleceń. 1. Przykładowy program.

DECLARE VARIABLE zmienna1 typ danych; BEGIN

Wstęp do programowania

Przykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok;

P R OGRA M OW A N I E KOMPUTERÓW Ćwiczenia laboratoryjne

Jerzy Nawrocki, Wprowadzenie do informatyki

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja

WHILE (wyrażenie) instrukcja;

PODSTAWY PROGRAMOWANIA

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

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

Instrukcje iteracyjne (pętle)

Część I teoretyczna (pisemna; test) Wybrane zagadnienia z programowania strukturalnego i obiektowego

Podstawy Programowania C++

Algorytmy i język C++

Wykład IV Algorytmy metody prezentacji i zapisu Rzut oka na język PASCAL

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Funkcja (podprogram) void

Programowanie komputerowe. Zajęcia 1

Znajdowanie największego i najmniejszego elementu w zbiorze n liczb całkowitych

Wykład 8. Rekurencja. Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. L. Peter Deutsch

Jerzy Nawrocki, Wprowadzenie do informatyki

do MATLABa programowanie WYKŁAD Piotr Ciskowski

Transkrypt:

Definicja Procedury i funkcje Procedura to wydzielony fragment programu, który służy do wykonywania pewnych zbiorów instrukcji stanowiących zwartą całość. Procedurę nazywamy czasem podprogramem. 1 2 Przykład programu z procedurą program funkcja; var liczba:byte; procedure wykonaj; liczba:=10; writeln(liczba); Cechy procedury Wydzielony fragment programu. Stosowana do zmniejszenia ilości linijek kodu programu. Zwiększa czytelność programu. writeln ('Zaraz napisze liczbe 10 ); wykonaj; 3 4

Składnia procedur procedure nazwa_procedury (parametry_procedury); deklaracja_stałych; deklaracja_typów; deklaracja_zmiennych; deklaracja_procedur_lub_funkcji; Nagłówek procedury Przykład programu ciąg_instrukcji; Treść (ciało) procedury 5 6 Procedura może objąć każdy fragment programu program wzory2; procedure wczytaj; procedure dodaj; procedure wypisz; wczytaj; dodaj; wypisz; 7 Podział procedur pod względem ich wywoływania 1. Procedury wywoływane bez parametrów Deklaracja procedury Procedure wczytaj; Wywołanie procedury wczytaj; 2. Procedury wywoływane z parametrami Deklaracja procedury Procedure wczytaj(x,y:integer); Wywołanie procedury Wczytaj(a,b); 3. Procedury zwracające parametry Deklaracja procedury Procedure wczytaj(x,y:integer; var z:real); Wywołanie procedury Wczytaj(a,b,c); 8

Procedura wywołana bez parametrów Procedura wywołana z parametrami program wzory3; program wzory4; procedure dodaj; dodaj; procedure dodaj(a,b:real); z:=a+b; dodaj(x,y); 9 10 Procedura zwracająca parametry program wzory5; procedure dodaj(a,b:real;var c:real); c:=a+b; dodaj(x,y,z); 11 Dany jest program Ćwiczenie 1 program kolo1; var r,pole,obwod:real; write ('Podaj promien kola: '); readln(r); pole:=pi*sqr(r); obwod:=2*pi*r; writeln ('Pole kola wynosi ',pole:10:4); writeln ('Obwod kola wynosi ',obwod:10:4); Utwórz w programie dwie procedury: Jedna liczy obwód koła Druga liczy pole koła Utwórz wywołanie procedury : bezparametrow e 12 z parametrem

Dany jest program program suma_n_liczb; var i,n:integer; suma,x:real; Ćwiczenie 2 suma:=0; writeln ('Ile liczb mam zsumowac?'); readln(n); for i:=1 to n do writeln ('Podaj liczbe nr ',i); suma:=suma+x; writeln('suma wynosi ',suma:0:4); Utwórz procedurę wczytaj, która: Jest wywoływana w pętli FOR Ma za zadanie wczytać dane z klawiatury (poleceniem readln) Ma zwracać parametr x liczbę wczytaną 13 Podział procedur pod względem korzystania ze zmiennych 1. Globalnych (dostępnych w całym programie) 2. Lokalnych (dostępnych tylko w danej procedurze) 14 Przykład Program bez procedur program wyswietlenie_napisu; var z:char; x,y:integer; writeln ('Podaj znak'); writeln ('W ilu wierszach go wyswietlic?'); writeln ('W ilu kolumnach go wyswietlic?'); readln (y); 15 for i:=1 to x do for j:=1 to y do write(z); writeln; 16

Procedura wywoływana bez parametrów program wyswietlenie_napisu; var z:char; x,y:integer; procedure wyswietlenie1; var i,j:integer; for i:=1 to x do for j:=1 to y do write(z); writeln; writeln ('Podaj znak'); writeln ('W ilu wierszach go wyswietlic?'); writeln ('W ilu kolumnach go wyswietlic?'); readln (y); wyswietlenie1; 17 Procedura wywoływana z parametrami program wyswietlenie_napisu; var z:char; x,y:integer; procedure wyswietlenie1(z1:char; x1, y1:integer); var i,j:integer; for i:=1 to x1 do for j:=1 to y1 do write(z1); writeln; writeln ('Podaj znak'); readln (z); writeln ('W ilu wierszach go wyswietlic?'); writeln ('W ilu kolumnach go wyswietlic?'); readln (y); wyswietlenie1(z,x,y); 18 Funkcja Definicja Funkcja to wydzielony fragment programu, który służy do wykonywania pewnych zbiorów instrukcji stanowiących zwartą całość. Funkcja zawsze zwraca wartość, będącą wynikiem jej działania. 19 20

Przykład programu z funkcją program funkcja; var liczba:byte; function wykonaj:integer; wykonaj:=10; writeln ('Zaraz napisze liczbe 10, wykonaj); Składnia funkcji function nazwa_procedury (parametry_funkcji):wynik_funkcji; deklaracja_stałych; deklaracja_typów; deklaracja_zmiennych; deklaracja_procedur_lub_funkcji; ciąg_instrukcji; Treść (ciało) funkcji Nagłówek funkcji 21 22 Podział procedur pod względem ich wywoływania 1. Funkcje wywoływane bez parametrów Deklaracja funkcji function wczytaj:integer; Wywołanie funkcji wczytaj; 2. Funkcje wywoływane z parametrami Deklaracja funkcji function wczytaj(x,y:integer):real; Wywołanie funkcji Wczytaj(a,b); program mnozenie1; Var z:longint; procedure Pomnoz(a,b:integer; var c:longint); c:=a*b; program mnozenie2; function Pomnoz(a,b:integer):longint; Pomnoz := a*b; Pomnoz(2,5,z); Writeln('wynik 2*5 to ',z); 23 Writeln('wynik 2*5 to ', Pomnoz(2,5)); 24

Funkcje iteracyjne i rekursywne Iteracyjna funkcja FUNCTION silnia (n : integer) : longint; Var i : integer; wynik: longint; Begin wynik:=1; for i:=1 To n do wynik:= wynik*i; silnia:= wynik; End; 25 26 Rekursywna funkcja FUNCTION silnia (n : integer) : longint; if n=1 then silnia:=1 else silnia:=n*silnia(n-1); PROGRAM Silnie; USES Crt; VAR n : Integer; Przykładowy program FUNCTION Silnia1 (n : Integer) : longint; Var i : Integer;Wynik : longint; Begin Wynik:=1; For i:=1 To n Do Wynik:=Wynik*i; Silnia1:=Wynik; End; FUNCTION Silnia2 (n : Integer) : longint; Begin If n=1 Then Silnia2:=1 Else Silnia2:=n*Silnia2(n-1); End; 27 BEGIN END. ClrScr; Write('Podaj liczbe dla ktorej obliczyc silnie : '); ReadLn(n); WriteLn('Silnia obliczona iteracyjnie = ', Silnia1(n):3:0); WriteLn('Silnia obliczona rekurencyjnie = ', Silnia2(n):3:0); Rradln; 28