Załącznik nr 5 - Wzór harmonogramu płatności – załącznik do umowy

Transkrypt

Załącznik nr 5 - Wzór harmonogramu płatności – załącznik do umowy
Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego
Barbara Łukawska, Adam Krechowicz, Tomasz Michno
Ćwiczenie nr 10: Funkcje i procedury (podprogramy)
Deklaracja w języku Pascal:
procedure nazwa [(parametry formalne)];
function nazwa[(parametry formalne)]:wartość zwracana;
Wywołanie:
nazwa[(parametry aktualne)]
Zmienne lokalne i globalne:
Zmienna globalna – deklarowana w programie głównym, zerowana, dostępna w całym
programie:
program t1;
var a:integer;
{zmienna globalna}
procedure wczytaj;
begin
writeln('Podaj a'); readln(a); writeln('Podałeś:', a)
end;
begin
wczytaj;
a:=a+2;
end.
Zmienna lokalna – deklarowana w programie głównym, NIE zerowana, NIE dostępna w całym
programie (dostępna wyłącznie w podprogramie, w którym została zadeklarowana):
program t2;
procedure wczytaj;
var a:integer;
{zmienna lokalna}
begin
writeln('Podaj a'); readln(a); writeln('Podałeś:', a)
end;
begin
wczytaj;
a:=a+2;
end.
Projekt ,,Absolwent Politechniki Świętokrzyskiej – inżynier na miarę potrzeb współczesnej gospodarki’’
Program Operacyjny Kapitał Ludzki Priorytet IV Działanie 4.1, Poddziałanie 4.1.2
umowa UDA – POKL.04.01.02-00-213/12-00
Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego
Parametry formalne i aktualne, przekazywanie parametrów:
Parametr przekazany przez zmienną (Z VAR) – przekazanie do podprogramu oryginału,
zmiany widoczne na zewnątrz podprogramu:
program t3;
var a, b, c:integer;
procedure wczytaj(var l:integer);
{parametr formalny}
{przez zmienną}
begin
writeln('Podaj l'); readln(l); writeln('Podałeś:', l)
end;
begin
wczytaj(a); wczytaj(b); wczytaj(c); {parametr aktualny}
writeln (a); {wczytana wartość}
end.
ALE:
Parametr przekazany przez wartość (BEZ VAR) – przekazanie do podprogramu kopii, zmiany
NIE widoczne na zewnątrz podprogramu:
program t4;
var a, b, c:integer;
procedure wczytaj(l:integer);
{parametr formalny}
{przez wartość}
begin
writeln('Podaj l'); readln(l); writeln('Podałeś:', l)
end;
begin
wczytaj(a); wczytaj(b); wczytaj(c); {parametr aktualny}
writeln (a); {0}
end.
Procedury i funkcje:
Procedura - NIE zwraca wartości
program t5;
var a, b, c:integer;
procedure suma(x, y : integer; var z : integer);
begin
z:=x+y;
end;
begin
a:=2;
b:=3;
c:=4;
suma(a, b, c);
writeln(c);
suma(b, c, a);
writeln(a);
suma(a, c, b);
writeln(b);
end.
Projekt ,,Absolwent Politechniki Świętokrzyskiej – inżynier na miarę potrzeb współczesnej gospodarki’’
Program Operacyjny Kapitał Ludzki Priorytet IV Działanie 4.1, Poddziałanie 4.1.2
umowa UDA – POKL.04.01.02-00-213/12-00
Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego
Funkcja - zwraca wartości
program t6;
var a, b, c:integer;
function suma(x, y:integer):integer;
begin
suma:=x+y;
end;
begin
a:=2;
b:=3;
c:=suma(a, b);
writeln(c);{5}
readln;
end.
Zadania:
1. Napisz program zamieniający ułamek zwykły na dziesiętny. Użyj oddzielnych
podprogramów do:
 wczytania danych
 obliczeń
 wyświetlenia wyniku
Do obliczeń użyj:
 procedury
 funkcji.
2. Napisz program (z podziałem na podprogramy), który wyznacza minimum tablicy,
średnią elementów tablicy, ilość elementów nieparzystych tablicy.
Do obliczeń użyj:
 procedury
 funkcji.
3. Zmodyfikuj program z zadania 2 tak, aby działał na wybranym (podanym jako
parametr) wierszu macierzy.
4. Użytkownik wprowadza z klawiatury znaki (małe litery) do momentu wprowadzenia
znaku 0(zero). Stwórz histogram wystąpień poszczególnych znaków.
Projekt ,,Absolwent Politechniki Świętokrzyskiej – inżynier na miarę potrzeb współczesnej gospodarki’’
Program Operacyjny Kapitał Ludzki Priorytet IV Działanie 4.1, Poddziałanie 4.1.2
umowa UDA – POKL.04.01.02-00-213/12-00