<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Katharsis&#039;s devblog</title>
	<atom:link href="http://www.tynecki.pl/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.tynecki.pl</link>
	<description>Think for yourself</description>
	<lastBuildDate>Tue, 16 Feb 2010 10:38:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Facta, non verba!</title>
		<link>http://www.tynecki.pl/?p=788</link>
		<comments>http://www.tynecki.pl/?p=788#comments</comments>
		<pubDate>Tue, 16 Feb 2010 01:08:24 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[PPCG]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=788</guid>
		<description><![CDATA[Filozoficzny bit.
Ktoś kiedyś powiedział, że &#8220;życie jest sztuką priorytetów&#8221;. Kierując się tą myślą zauważyłem, że hierarchia ważności, to nic innego jak struktura o cechach obiektywnego doboru tego, na czym nam najbardziej zależy. Wdrażając taką postawę można wyraźniej zarysować kontury przyszłości, nadając kierunek i sens temu co robimy oraz skuteczniej realizować wytyczone zadania.
Zastosowałem tą metodę półtora [...]]]></description>
			<content:encoded><![CDATA[<h4 style="text-align: justify;"><span style="color: #000000;">Filozoficzny bit.</span></h4>
<p style="text-align: justify;">Ktoś kiedyś powiedział, że &#8220;życie jest sztuką priorytetów&#8221;. Kierując się tą myślą zauważyłem, że hierarchia ważności, to nic innego jak struktura o cechach obiektywnego doboru tego, na czym nam najbardziej zależy. Wdrażając taką postawę można wyraźniej zarysować kontury przyszłości, nadając kierunek i sens temu co robimy oraz skuteczniej realizować wytyczone zadania.</p>
<p style="text-align: justify;">Zastosowałem tą metodę półtora roku temu, decydując się na &#8220;pełnoetatowy&#8221; rozwój projektu <a href="http://www.python.org.pl/" onclick="pageTracker._trackPageview('/outgoing/www.python.org.pl/?referer=');">PPCG</a>. Dzięki polityce małych kroczków i pracy zespołowej zrealizowaliśmy większość wspólnie ustalonych celów. Efekt był na tyle zadowalający, że pojawiły się kolejne pomysły i propozycje związane z naszą dotychczasową działalnością. Niestety, ostatnio życie zaczęło narzucać zupełnie inny bieg zdarzeń &#8211; odbiegający od &#8220;Wielkiego Planu&#8221; &#8211; coraz częściej skupiając moją uwagę i czas na innych zadaniach. Powrócił drażliwy dla mnie temat studiów, który okazał się &#8220;złem ostatecznym&#8221;, na szczęście tylko w teorii. W praktyce bowiem, przy odpowiednim nakładzie pracy przekonałem się, iż  studia mogą dać wiele satysfakcji i nieocenionej wiedzy. Zaangażowałem się do tego stopnia, że moja obecność przy projekcie PPCG spadła ze sporadycznej do równej zeru. W efekcie większość zaplanowanych, tegorocznych zadań nie miała okazji ujrzeć światła dziennego, a społeczność zaczęła wątpić w ich realizację. Niewątpliwie jest to moja wina i zamierzam to naprawić.</p>
<p><span id="more-788"></span></p>
<h4 style="text-align: justify;"><span style="color: #000000;"><br />Właściwa technika jest kluczem do sukcesu.</span></h4>
<p style="text-align: justify;">W związku z decyzją zacząłem zastanawiać się, czy jestem w stanie pogodzić ze sobą dwa równie istotne priorytety. Ważnym jest wypracowanie kompromisu między owocnym rozwojem projektu oraz pomyślnym postępem spraw na uczelni. Zacząłem od dogłębnej analizy źródła wcześniejszych problemów z zaangażowaniem mojej osoby w progres dotyczący PPCG. Niewłaściwa umiejętność gospodarowania czasem i częsta utrata motywacji to kwestie personalne, które wziąłem na warsztat. Projekt również wymaga przeprowadzenia &#8220;dogłębnej restrukturyzacji&#8221;. Przede wszystkim usprawnić należy sprawy związane z administracją projektu, przydzielić nowe zadania dla sprecyzowanego i oficjalnie działającego zespołu oraz wyselekcjonować i udostępnić materiały dydaktyczne. W tym wszystkim uwzględniony zostanie głos społeczności, dlatego też zależy mi na uzyskaniu jej zaangażowania i pełnego zaufania. Jak tego dokonać?</p>
<h4 style="text-align: justify;"><span style="color: #000000;"><br />Faza pierwsza &#8211; punkt zaczepienia.</span></h4>
<p style="text-align: justify;">Projekt PPCG obchodził niedawno swoje trzecie urodziny, osiągając pewną dojrzałość. W związku z czym, nadszedł czas podsumowań w postaci raportu, który posłuży mi do skutecznej analizy naszej działalności. W ten sposób zdecydowanie prościej jest ustalić braki związane z funkcjonowaniem projektu, w tym osiągnięcia, porażki oraz skutki jakie ze sobą niosą. W raporcie znajdą się wnioski ze statystyk Google Analytics, <a href="http://www.python.org.pl/irc.html" onclick="pageTracker._trackPageview('/outgoing/www.python.org.pl/irc.html?referer=');">IRC&#8217;a</a> i <a href="http://forum.python.org.pl/" onclick="pageTracker._trackPageview('/outgoing/forum.python.org.pl/?referer=');">forum</a>, które posłużą do precyzyjnego określenia zapotrzebowania społeczności i kierunku, w którym to wszystko zmierza. Warto będzie zamieścić w nim bazę kontaktów wszystkich osób, firm i instytucji związanych z PPCG, włącznie z programem partnerskim/sponsorskim obejmującym daną współpracę. Z góry zapewniam, iż ze względu na troskę o dane personalne osób w to zaangażowanych, raport zostanie udostępniony do wglądu jedynie dla wybranej grupy figurantów.</p>
<h4 style="text-align: justify;"><span style="color: #000000;"><br />Faza druga &#8211; team play.</span></h4>
<p style="text-align: justify;">To ludzie budują społeczność, stając się jej najważniejszym organem. Dlatego też, na podstawie planowanego bilansu, rozpocznę od przywrócenia kontaktów z dotychczasowymi współtwórcami PPCG. Podejmę próbę utworzenia i przygotowania kompletnego zespołu, działającego w ściśle zorganizowanej strukturze i o bardziej formalnym charakterze. Wspólnymi siłami ustalimy szczegółowy harmonogram działań wraz z strategią wykonania poszczególnych zadań. Z pewnością dołożę wszelkich starań do nawiązania bliższej współpracy z <a href="http://www.python.org/psf/" onclick="pageTracker._trackPageview('/outgoing/www.python.org/psf/?referer=');">Python Software Foundation</a>, której to owocem, miejmy nadzieje, będzie zmiana domeny projektu czy innych prywatnych zasobów, z których aktualnie korzystamy. Bardzo zależy mi na sukcesywnym przebiegu całej akcji, dlatego też z pewnością wykorzystam wszystkie dostępne środki, by przekonać Community do dalszego rozwoju projektu PPCG.</p>
<h4 style="text-align: justify;"><span style="color: #000000;"><br />&#8230; a na zakończenie.</span></h4>
<p style="text-align: justify;">Zyskać utracone zaufanie nie jest łatwo. Mam wielką nadzieję, że w najbliższym czasie, przy odpowiedniej dawce inicjatywy i pracowitości, uda mi się zrealizować wytyczone cele. Wydaje się, że w ciągu tych kilku miesięcy nieobecności i stagnacji, udało mi się dojrzeć do przeprowadzenia kilku mini-rewolucji dotyczących oblicza polskiej społeczności <a href="http://python.org/" onclick="pageTracker._trackPageview('/outgoing/python.org/?referer=');">Python&#8217;a</a>. Nadszedł najwyższy czas na zmiany!</p>
<p style="text-align: justify;">Informacji o postępie prac oczekujcie na <a href="http://www.tynecki.pl/">moim blogu</a> i oficjalnej stronie <a href="http://www.python.org.pl/" onclick="pageTracker._trackPageview('/outgoing/www.python.org.pl/?referer=');">PPCG</a>.</p>
<p style="text-align: justify;">Trzymajcie kciuki i niech Moc będzie z Wami!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=788</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Laborki z Pascala &#8211; Lista 8 i 9</title>
		<link>http://www.tynecki.pl/?p=755</link>
		<comments>http://www.tynecki.pl/?p=755#comments</comments>
		<pubDate>Mon, 11 Jan 2010 21:13:53 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[Free Pascal]]></category>
		<category><![CDATA[UwB]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=755</guid>
		<description><![CDATA[Do Waszej dyspozycji udostępniam dziś dwie ostatnie, najbardziej pracochłonne listy: 8 i 9. Zadania poświęcone są przede wszystkim tematyce zmiennych rekordów i plikom, będących przykładem zmiennych złożonych.
Laboratorium 8
Zadanie 1
Przeanalizowałem :).

Zadanie 2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
PROGRAM lista8_zad2&#40;INPUT, OUTPUT&#41;;
&#160;
USES
	CRT;
&#160;
TYPE
	ZBIOR_PKT = ARRAY OF RECORD
					a, b : INTEGER;
				END;
&#160;
VAR
	punkt : ZBIOR_PKT;
	x, y, ilosc, X1, Y1, X2, Y2 : INTEGER;
	wynik, max : REAL;
&#160;
BEGIN
	CLRSCR;
&#160;
	WRITE&#40;'Podaj ilość punktów: [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Do Waszej dyspozycji udostępniam dziś dwie ostatnie, najbardziej pracochłonne listy: 8 i 9. Zadania poświęcone są przede wszystkim tematyce <a href="http://www.freepascal.org/docs-html/ref/refsu15.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu15.html?referer=');">zmiennych rekordów</a> i <a href="http://www.freepascal.org/docs-html/ref/refsu17.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu17.html?referer=');">plikom</a>, będących przykładem zmiennych złożonych.</p>
<h4 style="text-align: justify;"><span style="color: #000000;">Laboratorium 8</span></h4>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 1</span></p>
<p>Przeanalizowałem :).</p>
<p><span id="more-755"></span></p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista8_zad2<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	ZBIOR_PKT <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">RECORD</span>
					a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	punkt <span style="color: #339933;">:</span> ZBIOR_PKT;
	x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> ilosc<span style="color: #339933;">,</span> X1<span style="color: #339933;">,</span> Y1<span style="color: #339933;">,</span> X2<span style="color: #339933;">,</span> Y2 <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	wynik<span style="color: #339933;">,</span> max <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj ilość punktów: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>ilosc<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	SETLENGTH<span style="color: #009900;">&#40;</span>punkt<span style="color: #339933;">,</span> ilosc<span style="color: #009900;">&#41;</span>;
&nbsp;
	max <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			WITH punkt<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj współrzędne punktu '</span><span style="color: #339933;">,</span> x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">': '</span><span style="color: #009900;">&#41;</span>;
					<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
				<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
					<span style="color: #000000; font-weight: bold;">BEGIN</span>
						WITH punkt<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">DO</span>
							<span style="color: #000000; font-weight: bold;">BEGIN</span>
								wynik <span style="color: #339933;">:=</span> <span style="color: #000066;">SQRT</span><span style="color: #009900;">&#40;</span>SQR<span style="color: #009900;">&#40;</span>punkt<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">a</span> <span style="color: #339933;">-</span> a<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> SQR<span style="color: #009900;">&#40;</span>punkt<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">b</span> <span style="color: #339933;">-</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
								<span style="color: #000000; font-weight: bold;">IF</span> wynik &gt; max <span style="color: #000000; font-weight: bold;">THEN</span>
									<span style="color: #000000; font-weight: bold;">BEGIN</span>
										max <span style="color: #339933;">:=</span> wynik;
										X1 <span style="color: #339933;">:=</span> punkt<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">a</span>;
										Y1 <span style="color: #339933;">:=</span> punkt<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">b</span>;
										X2 <span style="color: #339933;">:=</span> a;
										Y2 <span style="color: #339933;">:=</span> b;
									<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
								<span style="color: #000000; font-weight: bold;">ELSE</span>
									CONTINUE;
							<span style="color: #000000; font-weight: bold;">END</span>;
					<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Punkty: ('</span><span style="color: #339933;">,</span> X1<span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> Y1<span style="color: #339933;">,</span> <span style="color: #ff0000;">') i ('</span><span style="color: #339933;">,</span> X2<span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> Y2<span style="color: #339933;">,</span> <span style="color: #ff0000;">'), Odległość: '</span><span style="color: #339933;">,</span> max<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Zgodnie z treścią zadania, współrzędne podanych punktów dodaję do tablicy rekordów. Następnie wyliczam odległości pomiędzy wszystkimi punktami z wzoru na <a href="http://pl.wikipedia.org/wiki/Odleg%C5%82o%C5%9B%C4%87" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Odleg_C5_82o_C5_9B_C4_87?referer=');">odległość euklidesową</a> i wyznaczam maksymalną wartość, która jest rozwiązaniem problemu.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 3</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista8_zad3<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	rok<span style="color: #339933;">,</span> miesiac<span style="color: #339933;">,</span> dzien <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> UstalDzien<span style="color: #009900;">&#40;</span>rok<span style="color: #339933;">,</span> miesiac<span style="color: #339933;">,</span> dzien <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			M<span style="color: #339933;">,</span> C<span style="color: #339933;">,</span> D<span style="color: #339933;">,</span> N <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">CONST</span>
			dni <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span><span style="color: #009900;">&#91;</span>0..6<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">STRING</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Niedziela'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'Poniedziałek'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'Wtorek'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'Środa'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'Czwartek'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'Piątek'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'Sobota'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			M <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>miesiac <span style="color: #339933;">+</span> <span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">12</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> M &gt; <span style="color: #cc66cc;">10</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				rok <span style="color: #339933;">:=</span> rok <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			C <span style="color: #339933;">:=</span> rok <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">100</span>;
			D <span style="color: #339933;">:=</span> rok <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">100</span>;
			N <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">13</span> <span style="color: #339933;">*</span> M<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> D <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span>D <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span>C <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span> <span style="color: #339933;">*</span> C<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> dzien<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">7</span>;
&nbsp;
			UstalDzien<span style="color: #339933;">:=</span> dni<span style="color: #009900;">&#91;</span>N<span style="color: #009900;">&#93;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj datę (YYYY MM DD): '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>rok<span style="color: #339933;">,</span> miesiac<span style="color: #339933;">,</span> dzien<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Jest to: '</span><span style="color: #339933;">,</span> UstalDzien<span style="color: #009900;">&#40;</span>rok<span style="color: #339933;">,</span> miesiac<span style="color: #339933;">,</span> dzien<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Sposobów na określenie dnia tygodnia na podstawie podanej daty jest kilka. Do tego zadania wykorzystałem jeden z nich, czyli <a href="http://pl.wikipedia.org/wiki/Wieczny_kalendarz" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Wieczny_kalendarz?referer=');">wieczny kalendarz</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista8_zad4<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	DATA <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">RECORD</span>
				dzien<span style="color: #339933;">,</span> miesiac<span style="color: #339933;">,</span> rok <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
			<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	UCZEN <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span><span style="color: #009900;">&#91;</span>1..5<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">RECORD</span>
				imie<span style="color: #339933;">,</span> nazwisko <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
				dataur <span style="color: #339933;">:</span> DATA;
			<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	info <span style="color: #339933;">:</span> UCZEN;
	wybor <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> UzupelnijBaze;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">5</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					WITH info<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> dataur <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000066;">WRITELN</span>;
&nbsp;
							<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Uzupełnij formularz - Osoba nr'</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">':'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
							<span style="color: #000066;">WRITELN</span>;
&nbsp;
							<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Imię: '</span><span style="color: #009900;">&#41;</span>;
							<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>imie<span style="color: #009900;">&#41;</span>;
&nbsp;
							<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Nazwisko: '</span><span style="color: #009900;">&#41;</span>;
							<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>nazwisko<span style="color: #009900;">&#41;</span>;
&nbsp;
							<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Dzień urodzin: '</span><span style="color: #009900;">&#41;</span>;
							<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>dzien<span style="color: #009900;">&#41;</span>;
&nbsp;
							<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Miesiąc urodzin: '</span><span style="color: #009900;">&#41;</span>;
							<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>miesiac<span style="color: #009900;">&#41;</span>;
&nbsp;
							<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Rok urodzin: '</span><span style="color: #009900;">&#41;</span>;
							<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>rok<span style="color: #009900;">&#41;</span>;
						<span style="color: #000000; font-weight: bold;">END</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
			CLRSCR;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WyswietlBaze;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">5</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					WITH info<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> dataur <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'NR'</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">': '</span><span style="color: #339933;">,</span> imie<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> nazwisko<span style="color: #339933;">,</span> <span style="color: #ff0000;">' :: '</span><span style="color: #339933;">,</span> dzien<span style="color: #339933;">,</span> <span style="color: #ff0000;">'-'</span><span style="color: #339933;">,</span> miesiac<span style="color: #339933;">,</span> <span style="color: #ff0000;">'-'</span><span style="color: #339933;">,</span> rok<span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
			CLRSCR;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> SzukajNazwiskiem;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			nazw <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wpisz szukane nazwisko: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>nazw<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">5</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					WITH info<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000000; font-weight: bold;">IF</span> nazw <span style="color: #339933;">=</span> nazwisko <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'- '</span><span style="color: #339933;">,</span> imie<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> nazwisko<span style="color: #009900;">&#41;</span>
&nbsp;
							<span style="color: #000000; font-weight: bold;">ELSE</span>
								CONTINUE;
						<span style="color: #000000; font-weight: bold;">END</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
			CLRSCR;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> SzukajData;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			rokur <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wpisz rok urodzenia: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>rokur<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">5</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					WITH info<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> dataur <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000000; font-weight: bold;">IF</span> rokur <span style="color: #339933;">=</span> rok <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'- '</span><span style="color: #339933;">,</span> imie<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> nazwisko<span style="color: #009900;">&#41;</span>
&nbsp;
							<span style="color: #000000; font-weight: bold;">ELSE</span>
								CONTINUE;
						<span style="color: #000000; font-weight: bold;">END</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
			CLRSCR;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">TRUE</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			CLRSCR;
&nbsp;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'1. Uzupełnij bazę'</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'2. Wyświetl bazę'</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'3. Szukaj względem nazwiska'</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'4. Szukaj względem roku urodzenia'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wybór: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>wybor<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">CASE</span> wybor <span style="color: #000000; font-weight: bold;">OF</span>
				<span style="color: #cc66cc;">1</span> <span style="color: #339933;">:</span> UzupelnijBaze;
				<span style="color: #cc66cc;">2</span> <span style="color: #339933;">:</span> WyswietlBaze;
				<span style="color: #cc66cc;">3</span> <span style="color: #339933;">:</span> SzukajNazwiskiem;
				<span style="color: #cc66cc;">4</span> <span style="color: #339933;">:</span> SzukajData;
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				EXIT;
&nbsp;
			<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">W zadaniu tym należy skorzystać z rekordów zagnieżdżonych, czyli pól adresowych, będących rekordami umieszczonymi wewnątrz głównego rekordu. Należy zwrócić uwagę na to, w jakiej kolejności definiowane są poszczególne (zależne od siebie) rekordy! Zwróćcie uwagę na to, że skorzystałem z <a href="http://www.freepascal.org/docs-html/ref/refsu45.html#x115-12200010.2.7" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu45.html_x115-12200010.2.7?referer=');">instrukcji WITH</a>, w celu pominięcia nazwy rekordów przed nazwali pól. Całe zadanie dotyczy zdefiniowanych procedur, których rolę realizują założenia wytyczone w treści.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 5</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista8_zad5<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	KLASA <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span><span style="color: #009900;">&#91;</span>1..36<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">RECORD</span>
				imie<span style="color: #339933;">,</span> nazwisko <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
			<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	TABLICA <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span><span style="color: #009900;">&#91;</span>1..36<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	uczen <span style="color: #339933;">:</span> KLASA;
	ludzie <span style="color: #339933;">:</span> TABLICA;
	x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> LosowanieBezPowtorzen <span style="color: #339933;">:</span> TABLICA;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			losy <span style="color: #339933;">:</span> TABLICA;
			x<span style="color: #339933;">,</span> temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			RANDOMIZE;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">36</span> <span style="color: #000000; font-weight: bold;">DO</span>
				losy<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">36</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">REPEAT</span>
						temp <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">36</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">UNTIL</span>
						losy<span style="color: #009900;">&#91;</span>temp<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
					ludzie<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> temp;         
					losy<span style="color: #009900;">&#91;</span>temp<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;       
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			LosowanieBezPowtorzen <span style="color: #339933;">:=</span> ludzie;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">36</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			WITH uczen<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Imię i nazwisko ucznia: '</span><span style="color: #009900;">&#41;</span>;
					<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>imie<span style="color: #339933;">,</span> nazwisko<span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	ludzie <span style="color: #339933;">:=</span> LosowanieBezPowtorzen;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wyniki losowania: '</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">36</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>x <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">2</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					WITH uczen<span style="color: #009900;">&#91;</span>ludzie<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>imie<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> nazwisko<span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				WITH uczen<span style="color: #009900;">&#91;</span>ludzie<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Para: '</span><span style="color: #339933;">,</span> imie<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> nazwisko<span style="color: #339933;">,</span> <span style="color: #ff0000;">'oraz '</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">W celu wylosowania nazwisk uczniów i stworzenia par odbywających dyżury, napisałem funkcję <em>LosowanieBezPowtorzen</em>, która generuje tablicę liczb (z uwzględnionym przedziałem), pozbawioną duplikatów. Tablica posłuży mi jako indeks, za pomocą którego odwołam się do tablicy rekordów przechowującej dane wszystkich uczniów.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista8_zad6<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">CONST</span>
	rozmiar <span style="color: #339933;">=</span> <span style="color: #cc66cc;">3</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	COMPLEX <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">RECORD</span>
					re<span style="color: #339933;">,</span> im <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
			  <span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	zespolona <span style="color: #339933;">:</span> COMPLEX;
	x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	SETLENGTH<span style="color: #009900;">&#40;</span>zespolona<span style="color: #339933;">,</span> rozmiar<span style="color: #339933;">,</span> rozmiar<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>rozmiar <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>rozmiar <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					WITH zespolona<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj Re i Im: '</span><span style="color: #009900;">&#41;</span>;
							<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>re<span style="color: #339933;">,</span> im<span style="color: #009900;">&#41;</span>;
						<span style="color: #000000; font-weight: bold;">END</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>rozmiar <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>rozmiar <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					WITH zespolona<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'z = '</span><span style="color: #339933;">,</span> re<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' i'</span><span style="color: #339933;">,</span> im<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wartość stałej nadaje rozmiar macierzy (NxN), przechowującej nowo zdefiniowany typ, jakim są <a href="http://pl.wikipedia.org/wiki/Liczby_zespolone" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Liczby_zespolone?referer=');">liczby zespolone</a> (COMPLEX). Tablica rekordów zostanie uzupełniona polami przechowującymi część rzeczywistą i urojoną podanych liczb.</p>
<h4 style="text-align: justify;"><span style="color: #000000;">Laboratorium 9</span></h4>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 1</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista9_zad1<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	BYTEFILE <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">FILE</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	plik <span style="color: #339933;">:</span> BYTEFILE;
	x<span style="color: #339933;">,</span> ilosc<span style="color: #339933;">,</span> liczba <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
	RANDOMIZE;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad1.txt'</span><span style="color: #009900;">&#41;</span>;
	REWRITE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	ilosc <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">801</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">200</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> ilosc <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			liczba <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">101</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">100</span>;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> liczba<span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;	
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Zadanie jest dobrym przykładem sposobu definiowania i korzystania z pliku nietekstowego (w formacie binarnym). Plik ten składa się z losowej ilości liczb o przypadkowych wartościach, ograniczonych przedziałami. Posłuży nam do wykonania pozostałych zadań tej listy.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2a</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista9_zad2a<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	BYTEFILE <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">FILE</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	plik<span style="color: #339933;">,</span> plik2 <span style="color: #339933;">:</span> BYTEFILE;
	temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad1.txt'</span><span style="color: #009900;">&#41;</span>;
	RESET<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik2<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad2a.txt'</span><span style="color: #009900;">&#41;</span>;
	REWRITE<span style="color: #009900;">&#40;</span>plik2<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOF</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> temp<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>temp <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">2</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik2<span style="color: #339933;">,</span> temp<span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				CONTINUE;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik2<span style="color: #009900;">&#41;</span>;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Bazując na pliku z Zadania 1, znajduję wszystkie liczby parzyste. Następnie umieszczam je w pliku docelowym. W tym celu analizuję cały plik źródłowy wykorzystując <a href="http://www.freepascal.org/docs-html/rtl/system/eof.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/eof.html?referer=');">funkcję EOF</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2b</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista9_zad2b<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	BYTEFILE <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">FILE</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	BYTEARRAY <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
&nbsp;
	STATS <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">RECORD</span>
				cyfra<span style="color: #339933;">,</span> ile <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	plik <span style="color: #339933;">:</span> BYTEFILE;
	tablica <span style="color: #339933;">:</span> BYTEARRAY;
	statystyka <span style="color: #339933;">:</span> STATS;
	temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	ilosc <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad1.txt'</span><span style="color: #009900;">&#41;</span>;
	RESET<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOF</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
			SETLENGTH<span style="color: #009900;">&#40;</span>statystyka<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> temp<span style="color: #009900;">&#41;</span>;
			tablica<span style="color: #009900;">&#91;</span>ilosc<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> temp;
&nbsp;
			ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;	
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			statystyka<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">ile</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
			statystyka<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">cyfra</span> <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						statystyka<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">ile</span> <span style="color: #339933;">:=</span> statystyka<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">ile</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad2b.txt'</span><span style="color: #009900;">&#41;</span>;
	REWRITE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> statystyka<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">ile</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> statystyka<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>.<span style="color: #0066ee;">cyfra</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				CONTINUE;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Bazując na pliku z Zadania 1, wyodrębniam liczby, które w całym ciągu pojawiły się jeden raz. Aby tego dokonać tworzę statystykę (tablicę rekordów), która dla każdej analizowanej liczby przypisuje ilość jej wystąpień. Następnie do pliku docelowego trafiają liczby, których to wystąpienie w ciągu równe jest 1. Warto szczególną uwagę zwrócić na budowę pierwszej pętli WHILE, odpowiedzialnej za jednoczesne ustalenie ilości liczb w ciągu, jak i dynamiczny przyrost wielkości obu tablic.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 3</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista9_zad3<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	BYTEFILE <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">FILE</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	BYTEARRAY <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	plik <span style="color: #339933;">:</span> BYTEFILE;
	tablica <span style="color: #339933;">:</span> BYTEARRAY;
	temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	x<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> SortujTablice<span style="color: #009900;">&#40;</span>tablica <span style="color: #339933;">:</span> BYTEARRAY<span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> BYTEARRAY;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> liczba <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000000; font-weight: bold;">IF</span> tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> &gt; tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000000; font-weight: bold;">BEGIN</span>
									liczba <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span>;
									tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span>;
									tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> liczba;
								<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
							<span style="color: #000000; font-weight: bold;">ELSE</span>
								CONTINUE;
						<span style="color: #000000; font-weight: bold;">END</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			SortujTablice <span style="color: #339933;">:=</span> tablica;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	ilosc <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad1.txt'</span><span style="color: #009900;">&#41;</span>;
	RESET<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOF</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> temp<span style="color: #009900;">&#41;</span>;
			tablica<span style="color: #009900;">&#91;</span>ilosc<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> temp;
&nbsp;
			ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	tablica <span style="color: #339933;">:=</span> SortujTablice<span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#41;</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad1.txt'</span><span style="color: #009900;">&#41;</span>;
	REWRITE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Bazując na pliku z Zadania 1, sortuję cały ciąg liczb, bez tworzenia pliku pomocniczego. W tym celu stworzyłem tablicę dynamiczną zawierającą dane liczby, którą to &#8220;przepuściłem&#8221; przez funkcję <em>SortujTablice</em>. Następnie wynik nadpisałem na plik źródłowy.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista9_zad4<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	LINEARRAY <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	plik <span style="color: #339933;">:</span> TEXT;
	x<span style="color: #339933;">,</span> ilosc<span style="color: #339933;">,</span> dlugosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	liczba<span style="color: #339933;">,</span> temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
	tablica <span style="color: #339933;">:</span> LINEARRAY;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	ilosc <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad4.txt'</span><span style="color: #009900;">&#41;</span>;
	RESET<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOF</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> temp<span style="color: #009900;">&#41;</span>;
			tablica<span style="color: #009900;">&#91;</span>ilosc<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> temp;
&nbsp;
			ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad4.txt'</span><span style="color: #009900;">&#41;</span>;
	REWRITE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;	
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			STR<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> liczba<span style="color: #009900;">&#41;</span>;
			dlugosc <span style="color: #339933;">:=</span> LENGTH<span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> dlugosc <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> CONCAT<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'000'</span><span style="color: #339933;">,</span> liczba<span style="color: #339933;">,</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> dlugosc <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> CONCAT<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'00'</span><span style="color: #339933;">,</span> liczba<span style="color: #339933;">,</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> dlugosc <span style="color: #339933;">=</span> <span style="color: #cc66cc;">3</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> CONCAT<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'0'</span><span style="color: #339933;">,</span> liczba<span style="color: #339933;">,</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> CONCAT<span style="color: #009900;">&#40;</span>liczba<span style="color: #339933;">,</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> x <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">W celu prawidłowego uruchomienia tego programu, należy wcześniej przygotować plik tekstowy zad4.txt (z zawartością). Każdej linii pliku zostaje przyporządkowany numer wiersza, który powinien zajmować (zawsze) 4 pozycje.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 5</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista9_zad5<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	MACIERZ <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	plik<span style="color: #339933;">,</span> plik2 <span style="color: #339933;">:</span> TEXT;
	x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> wiersze<span style="color: #339933;">,</span> kolumny<span style="color: #339933;">,</span> a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	znak <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
	tablica <span style="color: #339933;">:</span> MACIERZ;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad5.txt'</span><span style="color: #009900;">&#41;</span>;
	RESET<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	wiersze <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
	kolumny <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOF</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOLN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> znak<span style="color: #009900;">&#41;</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> znak <span style="color: #000000; font-weight: bold;">IN</span> <span style="color: #009900;">&#91;</span><span style="color: #ff0000;">'0'</span>..<span style="color: #ff0000;">'9'</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						kolumny <span style="color: #339933;">:=</span> kolumny <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
			wiersze <span style="color: #339933;">:=</span> wiersze <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	kolumny <span style="color: #339933;">:=</span> ROUND<span style="color: #009900;">&#40;</span>kolumny <span style="color: #339933;">/</span> wiersze<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
	a <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
	b <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> wiersze<span style="color: #339933;">,</span> kolumny<span style="color: #009900;">&#41;</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad5.txt'</span><span style="color: #009900;">&#41;</span>;
	RESET<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	ASSIGN<span style="color: #009900;">&#40;</span>plik2<span style="color: #339933;">,</span> <span style="color: #ff0000;">'zad5-trans.txt'</span><span style="color: #009900;">&#41;</span>;
	REWRITE<span style="color: #009900;">&#40;</span>plik2<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>kolumny <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>wiersze <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOF</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOLN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
								<span style="color: #000000; font-weight: bold;">BEGIN</span>
									<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> tablica<span style="color: #009900;">&#91;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>;
									b <span style="color: #339933;">:=</span> b <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
								<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
							<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
							b <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
							a <span style="color: #339933;">:=</span> a <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
						<span style="color: #000000; font-weight: bold;">END</span>;	
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> x <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>wiersze <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik2<span style="color: #339933;">,</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik2<span style="color: #339933;">,</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> y <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>kolumny <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>plik2<span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>plik2<span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	CLOSE<span style="color: #009900;">&#40;</span>plik2<span style="color: #009900;">&#41;</span>;
	CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">W celu prawidłowego uruchomienia tego programu, należy wcześniej przygotować plik tekstowy zad5.txt, z zawartością macierzy (NxM). Program dokona <a href="http://pl.wikipedia.org/wiki/Macierz_transponowana" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Macierz_transponowana?referer=');">przestawienia macierzy</a>, a wynik zapisze w pliku docelowym.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista9_zad6<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT<span style="color: #339933;">,</span> DOS<span style="color: #339933;">,</span> SYSUTILS;
&nbsp;
<span style="color: #000000; font-weight: bold;">CONST</span>
	baza <span style="color: #339933;">=</span> <span style="color: #ff0000;">'zad6.txt'</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">TYPE</span>
	OSOBA <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">RECORD</span>
				imie<span style="color: #339933;">,</span> nazwisko <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">25</span><span style="color: #009900;">&#93;</span>;
				dzien<span style="color: #339933;">,</span> miesiac <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
				rok <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	plik <span style="color: #339933;">:</span> TEXT;
	wybor <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> SprBaza;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> FSEARCH<span style="color: #009900;">&#40;</span>baza<span style="color: #339933;">,</span> <span style="color: #ff0000;">''</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">''</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> baza<span style="color: #009900;">&#41;</span>;
					REWRITE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
					CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> DodajOsobe;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			nowy <span style="color: #339933;">:</span> OSOBA;
			d<span style="color: #339933;">,</span> m<span style="color: #339933;">,</span> r <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> baza<span style="color: #009900;">&#41;</span>;
			APPEND<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
			WITH nowy <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">WRITELN</span>;
&nbsp;
					<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj imię i nazwisko: '</span><span style="color: #009900;">&#41;</span>;
					<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>imie<span style="color: #339933;">,</span> nazwisko<span style="color: #009900;">&#41;</span>;
&nbsp;
					<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj datę urodzenia (DD MM RRRR): '</span><span style="color: #009900;">&#41;</span>;
					<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>dzien<span style="color: #339933;">,</span> miesiac<span style="color: #339933;">,</span> rok<span style="color: #009900;">&#41;</span>;
&nbsp;
					STR<span style="color: #009900;">&#40;</span>dzien<span style="color: #339933;">,</span> d<span style="color: #009900;">&#41;</span>;
					STR<span style="color: #009900;">&#40;</span>miesiac<span style="color: #339933;">,</span> m<span style="color: #009900;">&#41;</span>;
					STR<span style="color: #009900;">&#40;</span>rok<span style="color: #339933;">,</span> r<span style="color: #009900;">&#41;</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> LENGTH<span style="color: #009900;">&#40;</span>d<span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						d <span style="color: #339933;">:=</span> <span style="color: #ff0000;">'0'</span> <span style="color: #339933;">+</span> d;
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> LENGTH<span style="color: #009900;">&#40;</span>m<span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						m <span style="color: #339933;">:=</span> <span style="color: #ff0000;">'0'</span> <span style="color: #339933;">+</span> m;
&nbsp;
					<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> CONCAT<span style="color: #009900;">&#40;</span>imie<span style="color: #339933;">,</span> nazwisko<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> d<span style="color: #339933;">,</span> <span style="color: #ff0000;">'-'</span><span style="color: #339933;">,</span> m<span style="color: #339933;">,</span> <span style="color: #ff0000;">'-'</span><span style="color: #339933;">,</span> r<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
			CLRSCR;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WyswietlPelnoletnich;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			linia<span style="color: #339933;">,</span> data <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
			akt_d<span style="color: #339933;">,</span> akt_m<span style="color: #339933;">,</span> akt_r<span style="color: #339933;">,</span> d<span style="color: #339933;">,</span> m<span style="color: #339933;">,</span> r <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> baza<span style="color: #009900;">&#41;</span>;
			RESET<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOF</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> linia<span style="color: #009900;">&#41;</span>;
&nbsp;
					data <span style="color: #339933;">:=</span> DATETOSTR<span style="color: #009900;">&#40;</span>Date<span style="color: #009900;">&#41;</span>;
&nbsp;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>linia<span style="color: #339933;">,</span> LENGTH<span style="color: #009900;">&#40;</span>linia<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">9</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> d<span style="color: #009900;">&#41;</span>;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>linia<span style="color: #339933;">,</span> LENGTH<span style="color: #009900;">&#40;</span>linia<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">6</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> m<span style="color: #009900;">&#41;</span>;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>linia<span style="color: #339933;">,</span> LENGTH<span style="color: #009900;">&#40;</span>linia<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">3</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> r<span style="color: #009900;">&#41;</span>;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>data<span style="color: #339933;">,</span> <span style="color: #cc66cc;">9</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> akt_d<span style="color: #009900;">&#41;</span>;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>data<span style="color: #339933;">,</span> <span style="color: #cc66cc;">6</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> akt_m<span style="color: #009900;">&#41;</span>;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>data<span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> akt_r<span style="color: #009900;">&#41;</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>akt_r <span style="color: #339933;">-</span> r<span style="color: #009900;">&#41;</span> &gt; <span style="color: #cc66cc;">18</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'- '</span><span style="color: #339933;">,</span> linia<span style="color: #009900;">&#41;</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>akt_r <span style="color: #339933;">-</span> r<span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">18</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>akt_m <span style="color: #339933;">-</span> m<span style="color: #009900;">&#41;</span> &gt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'- '</span><span style="color: #339933;">,</span> linia<span style="color: #009900;">&#41;</span>
&nbsp;
							<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>akt_m <span style="color: #339933;">-</span> m<span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000000; font-weight: bold;">BEGIN</span>
									<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>akt_d <span style="color: #339933;">-</span> d<span style="color: #009900;">&#41;</span> &gt;<span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
										<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'- '</span><span style="color: #339933;">,</span> linia<span style="color: #009900;">&#41;</span>;
								<span style="color: #000000; font-weight: bold;">END</span>;
						<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
			CLRSCR;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WyswietlWzgledemDaty;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			linia <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
			ust_d<span style="color: #339933;">,</span> ust_m<span style="color: #339933;">,</span> ust_r<span style="color: #339933;">,</span> d<span style="color: #339933;">,</span> m<span style="color: #339933;">,</span> r <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj datę (DD MM RRRR): '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>ust_d<span style="color: #339933;">,</span> ust_m<span style="color: #339933;">,</span> ust_r<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			ASSIGN<span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> baza<span style="color: #009900;">&#41;</span>;
			RESET<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #000066;">EOF</span><span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>plik<span style="color: #339933;">,</span> linia<span style="color: #009900;">&#41;</span>;
&nbsp;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>linia<span style="color: #339933;">,</span> LENGTH<span style="color: #009900;">&#40;</span>linia<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">9</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> d<span style="color: #009900;">&#41;</span>;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>linia<span style="color: #339933;">,</span> LENGTH<span style="color: #009900;">&#40;</span>linia<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">6</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> m<span style="color: #009900;">&#41;</span>;
					VAL<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>linia<span style="color: #339933;">,</span> LENGTH<span style="color: #009900;">&#40;</span>linia<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">3</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> r<span style="color: #009900;">&#41;</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>ust_r <span style="color: #339933;">-</span> r<span style="color: #009900;">&#41;</span> &lt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'- '</span><span style="color: #339933;">,</span> linia<span style="color: #009900;">&#41;</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>ust_r <span style="color: #339933;">-</span> r<span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>ust_m <span style="color: #339933;">-</span> m<span style="color: #009900;">&#41;</span> &lt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'- '</span><span style="color: #339933;">,</span> linia<span style="color: #009900;">&#41;</span>
&nbsp;
							<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>ust_m <span style="color: #339933;">-</span> m<span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000000; font-weight: bold;">BEGIN</span>
									<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>ust_d <span style="color: #339933;">-</span> d<span style="color: #009900;">&#41;</span> &lt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
										<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'- '</span><span style="color: #339933;">,</span> linia<span style="color: #009900;">&#41;</span>;
								<span style="color: #000000; font-weight: bold;">END</span>;
						<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			CLOSE<span style="color: #009900;">&#40;</span>plik<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
			CLRSCR;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">TRUE</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SprBaza;
&nbsp;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'1. Dodaj nową osobę'</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'2. Wyświetl osoby pełnoletnie'</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'3. Wyświetl osoby później urodzone'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wybór: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>wybor<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">CASE</span> wybor <span style="color: #000000; font-weight: bold;">OF</span>
				<span style="color: #ff0000;">'1'</span> <span style="color: #339933;">:</span> DodajOsobe;
				<span style="color: #ff0000;">'2'</span> <span style="color: #339933;">:</span> WyswietlPelnoletnich;
				<span style="color: #ff0000;">'3'</span> <span style="color: #339933;">:</span> WyswietlWzgledemDaty;
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				EXIT;
&nbsp;
			<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Na podstawie ustalonego już typu &#8211; OSOBA, należy wykonać sprawnie działającą bazę danych. Na początku każdego uruchomienia programu sprawdzam, czy w obrębie aplikacji nie znajduje się już plik tekstowy, przechowujący dane tych osób. Dokonuję tego przy pomocy <a href="http://www.freepascal.org/docs-html/rtl/dos/fsearch.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/dos/fsearch.html?referer=');">funkcji FSEARCH</a>, z <a href="http://www.freepascal.org/docs-html/rtl/dos/" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/dos/?referer=');">modułu DOS</a>. Brak pliku spowoduje utworzenie nowej bazy. Dodawanie osób odbywa się przy pomocy procedury <em>DodajOsobe</em> ściśle powiązanej z typem OSOBA. <em>WyswietlPelnoletnich</em>, to kolejna procedura naszego menu, która na podstawie dogłębnej analizy daty urodzenia każdej z osób oraz aktualnej daty, wyznacza tylko te, które ukończyły 18 lat. Dzisiejszą datę ustala funkcja <a href="http://www.freepascal.org/docs-html/rtl/sysutils/datetostr.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/sysutils/datetostr.html?referer=');">DATETOSTR(Date)</a>, z <a href="http://www.freepascal.org/docs-html/rtl/sysutils/index.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/sysutils/index.html?referer=');">modułu SYSUTILS</a>. <em>WyswietlWzgledemDaty</em>, działa podobnie do powyższej procedury. Algorytm postępowania jest analogiczny, zmieniają się tylko warunki logiczne.</p>
<p style="text-align: justify;">Wszystkie zadania z tych lekcji można pobrać: <a href="http://www.tynecki.pl/myown/Pascal/Lista_8.zip">tutaj</a> i <a href="http://www.tynecki.pl/myown/Pascal/Lista_9.zip">tutaj</a>.</p>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=755</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Laborki z Pascala &#8211; Lista 7</title>
		<link>http://www.tynecki.pl/?p=682</link>
		<comments>http://www.tynecki.pl/?p=682#comments</comments>
		<pubDate>Sun, 03 Jan 2010 21:47:40 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[Free Pascal]]></category>
		<category><![CDATA[UwB]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=682</guid>
		<description><![CDATA[Z dużym poślizgiem, ale są! W dzisiejszej notce udostępniam rozwiązania zadań z Listy 7.
Laboratorium 7
Zadanie 1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
PROGRAM lista7_zad1&#40;INPUT, OUTPUT&#41;;
&#160;
USES
	CRT;
&#160;
VAR
	wymiar, x, y : INTEGER;
	macierz : ARRAY OF ARRAY OF INTEGER;
&#160;
BEGIN
	CLRSCR;
&#160;
	WRITE&#40;'Podaj wymiar miacierzy: '&#41;;
	READLN&#40;wymiar&#41;;
&#160;
	SETLENGTH&#40;macierz, wymiar, wymiar&#41;;
&#160;
	WRITELN;
&#160;
	FOR x := 0 TO &#40;wymiar - 1&#41; DO
		BEGIN
			FOR y := 0  TO &#40;wymiar - 1&#41; DO
				BEGIN
					macierz&#91;x&#93;&#91;y&#93; := &#40;x + 1&#41; * [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Z dużym poślizgiem, ale są! W dzisiejszej notce udostępniam rozwiązania zadań z Listy 7.</p>
<h4 style="text-align: justify;"><span style="color: #000000;">Laboratorium 7</span></h4>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 1</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad1<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	wymiar<span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	macierz <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj wymiar miacierzy: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>wymiar<span style="color: #009900;">&#41;</span>;
&nbsp;
	SETLENGTH<span style="color: #009900;">&#40;</span>macierz<span style="color: #339933;">,</span> wymiar<span style="color: #339933;">,</span> wymiar<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>wymiar <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>  <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>wymiar <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					macierz<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #009900;">&#40;</span>y <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
					<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>macierz<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p><span id="more-682"></span></p>
<p style="text-align: justify;">Wypełniam iloczynem liczb macierz, o podanym przez użytkownika rozmiarze. Aby zachować dynamikę rozwiązania, korzystam ze znanego już typu danych, jakim są tablice dynamiczne.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad2<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	n<span style="color: #339933;">,</span> m<span style="color: #339933;">,</span> przedzial<span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> min<span style="color: #339933;">,</span> suma <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	macierz <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj wymiary macierzy NxM: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>n<span style="color: #339933;">,</span> m<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj końcowy przedział liczb losowych: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>przedzial<span style="color: #009900;">&#41;</span>;
&nbsp;
	SETLENGTH<span style="color: #009900;">&#40;</span>macierz<span style="color: #339933;">,</span> n<span style="color: #339933;">,</span> m<span style="color: #009900;">&#41;</span>;
	RANDOMIZE;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>n <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>  <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>m <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					macierz<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>przedzial<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
					<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>macierz<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	suma <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>m <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			min <span style="color: #339933;">:=</span> przedzial <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>n <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> macierz<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> &lt; min <span style="color: #000000; font-weight: bold;">THEN</span>
						min <span style="color: #339933;">:=</span> macierz<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			suma <span style="color: #339933;">:=</span> suma <span style="color: #339933;">+</span> min;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> suma<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Zadanie podobne do powyższego, z tym, że tutaj elementami macierzy są liczy losowe. Dalsza część programu odpowiedzialna jest za znalezienie najmniejszych elementów w poszczególnych kolumnach naszej macierzy, a nastepnie podliczenie sumy wszystkich wyników.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 3</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad3<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
	x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> LENGTH<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypisuję podany łańcuch znaków w odwrotnej kolejności.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad4<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> ZmienZnak<span style="color: #009900;">&#40;</span>str <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>; pre<span style="color: #339933;">,</span> pos <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> LENGTH<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> lancuch<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> pre <span style="color: #000000; font-weight: bold;">THEN</span>
						lancuch<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> pos
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			ZmienZnak <span style="color: #339933;">:=</span> lancuch;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> ZmienZnak<span style="color: #009900;">&#40;</span>lancuch<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'_'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Przy pomocy funkcji <em>ZmienZnak</em> zmieniam wszystkie wystąpienia znaku spacji na znak podkreślenia w podanym przez użytkownika łańcuchu znaków.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 5</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad5<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
	znak <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> ZliczZnak<span style="color: #009900;">&#40;</span>str <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>; zn <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			ilosc <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> LENGTH<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> lancuch<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> zn <span style="color: #000000; font-weight: bold;">THEN</span>
						ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			ZliczZnak <span style="color: #339933;">:=</span> ilosc;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Szukany znak: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>znak<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> ZliczZnak<span style="color: #009900;">&#40;</span>lancuch<span style="color: #339933;">,</span> znak<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Przy pomocy funkcji <em>ZliczZnak</em> zliczam ilość wystąpień danego znaku w podanym przez użytkownika łańcuchu znaków.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad6<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> UsunZnak<span style="color: #009900;">&#40;</span>str <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>; zn <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x<span style="color: #339933;">,</span> ilosc<span style="color: #339933;">,</span> <span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			ilosc <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> LENGTH<span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> str<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> zn <span style="color: #000000; font-weight: bold;">THEN</span>
						ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> ilosc <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">:=</span> POS<span style="color: #009900;">&#40;</span>zn<span style="color: #339933;">,</span> str<span style="color: #009900;">&#41;</span>;
					DELETE<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> <span style="color: #000000; font-weight: bold;">index</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			UsunZnak <span style="color: #339933;">:=</span> str;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> UsunZnak<span style="color: #009900;">&#40;</span>lancuch<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Przy pomocy funkcji <em>UsunZnak</em> usuwam wszystkie wystąpienia znaku spacji w podanym przez użytkownika łańcuchu znaków.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 7</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad7<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> ZliczWyrazy<span style="color: #009900;">&#40;</span>str <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			zbior <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">SET</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			zbior <span style="color: #339933;">:=</span> <span style="color: #009900;">&#91;</span><span style="color: #ff0000;">'A'</span>..<span style="color: #ff0000;">'Z'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'a'</span>..<span style="color: #ff0000;">'z'</span><span style="color: #009900;">&#93;</span>;
			ilosc <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> LENGTH<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">IN</span> zbior<span style="color: #009900;">&#41;</span> <span style="color: #000066;">AND</span> <span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#91;</span>x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">IN</span> zbior<span style="color: #009900;">&#41;</span> <span style="color: #000066;">AND</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span> &lt; <span style="color: #339933;">=</span> LENGTH<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">IN</span> zbior<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> LENGTH<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				ilosc <span style="color: #339933;">:=</span> ilosc;
&nbsp;
			ZliczWyrazy <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> ZliczWyrazy<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Przy pomocy funkcji <em>ZliczWyrazy</em> wyznaczam ilość wyrazów w łańcuchu znaków podanym przez użytkownika. W tym celu należy cały łańcuch przeanalizować względem zbioru dużych i małych liter.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 8</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad8<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> RozdzielWyrazy<span style="color: #009900;">&#40;</span>str <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			zbior <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">SET</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			zbior <span style="color: #339933;">:=</span> <span style="color: #009900;">&#91;</span><span style="color: #ff0000;">'A'</span>..<span style="color: #ff0000;">'Z'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'a'</span>..<span style="color: #ff0000;">'z'</span><span style="color: #009900;">&#93;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> LENGTH<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> lancuch<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">IN</span> zbior <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#91;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">IN</span> zbior<span style="color: #009900;">&#41;</span> <span style="color: #000066;">AND</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">IN</span> zbior<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000066;">WRITELN</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	RozdzielWyrazy<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Procedura <em>RozdzielWyrazy</em> ma za zadanie wypisać każde sowo w odzielnym wierszu, bez względu na budowę wprowadzonego wczęsniej łańcucha znaków</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 9</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad9<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> MaxWyraz<span style="color: #009900;">&#40;</span>str <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x<span style="color: #339933;">,</span> licznik<span style="color: #339933;">,</span> max<span style="color: #339933;">,</span> <span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			zbior <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">SET</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			licznik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
			max <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
			zbior <span style="color: #339933;">:=</span> <span style="color: #009900;">&#91;</span><span style="color: #ff0000;">'A'</span>..<span style="color: #ff0000;">'Z'</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">'a'</span>..<span style="color: #ff0000;">'z'</span><span style="color: #009900;">&#93;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> LENGTH<span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000000; font-weight: bold;">NOT</span> <span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">in</span> zbior<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						licznik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							licznik <span style="color: #339933;">:=</span> licznik <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
							<span style="color: #000000; font-weight: bold;">IF</span> max &lt; licznik <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000000; font-weight: bold;">BEGIN</span>
									max <span style="color: #339933;">:=</span> licznik;
									<span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">:=</span> x;
								<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
							<span style="color: #000000; font-weight: bold;">ELSE</span>
								CONTINUE;
						<span style="color: #000000; font-weight: bold;">END</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			MaxWyraz <span style="color: #339933;">:=</span> COPY<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">-</span> max <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> max<span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> MaxWyraz<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Przy pomocy funkcji <em>MaxWyraz</em> wyznaczam najdłuższy wyraz w podanym przez użytkownika łańcuchu znaków. Algorytm zlicza tylko i wyłącznie znaki będące dużymi i małymi literami, wyznaczając w późniejszym etapie maksymalną wartość. W międzyczasie ustalamy położenie wyrazu w całym łańcuchu i przy pomocy funkcji <a href="http://www.freepascal.org/docs-html/rtl/system/copy.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/copy.html?referer=');">COPY</a> wyciągamy właściwy fragment.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 10</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad10<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> DuplikujWyraz<span style="color: #009900;">&#40;</span>str <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			duplistr <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> LENGTH<span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				duplistr <span style="color: #339933;">:=</span> duplistr <span style="color: #339933;">+</span> str<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">+</span> str<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>;
&nbsp;
			DuplikujWyraz <span style="color: #339933;">:=</span> duplistr;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> DuplikujWyraz<span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Przy pomocy funkcji <em>DuplikujWyraz</em> podwajam wystąpienie każdego znaku w podanym przez użytkownika wyrazie.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 11</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad11<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch<span style="color: #339933;">,</span> sublancuch <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> UsunSubLancuch<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> substr <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;	
		<span style="color: #000000; font-weight: bold;">VAR</span>
			<span style="color: #000000; font-weight: bold;">index</span><span style="color: #339933;">,</span> dlugosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">:=</span> POS<span style="color: #009900;">&#40;</span>substr<span style="color: #339933;">,</span> str<span style="color: #009900;">&#41;</span>;
			dlugosc <span style="color: #339933;">:=</span> LENGTH<span style="color: #009900;">&#40;</span>substr<span style="color: #009900;">&#41;</span>;
&nbsp;
			DELETE<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> <span style="color: #000000; font-weight: bold;">index</span><span style="color: #339933;">,</span> dlugosc<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000000; font-weight: bold;">index</span> &gt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				UsunSubLancuch <span style="color: #339933;">:=</span> UsunSubLancuch<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> substr<span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				UsunSubLancuch <span style="color: #339933;">:=</span> str;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj podłańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>sublancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> UsunSubLancuch<span style="color: #009900;">&#40;</span>lancuch<span style="color: #339933;">,</span> sublancuch<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Przy pomocy funkcji <em>UsunSubLancuch</em> usuwam wszystkie wystąpienia danego podłańcucha w głównym łańcuchu znaków. Tym razem postanowiłem nie korzystać z pętli w celu analizy obu stringów, a oddać tą część pracy w ręce gotowych funkcji: <a href="http://www.freepascal.org/docs-html/rtl/system/pos.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/pos.html?referer=');">POS</a>, <a href="http://www.freepascal.org/docs-html/rtl/system/delete.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/delete.html?referer=');">DELETE</a> czy <a href="http://www.freepascal.org/docs-html/rtl/system/length.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/length.html?referer=');">LENGTH</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 12</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista7_zad12<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	lancuch<span style="color: #339933;">,</span> sublancuch<span style="color: #339933;">,</span> zastepczy <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> ZamienWyrazy<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> substr<span style="color: #339933;">,</span> exstr <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			x<span style="color: #339933;">,</span> <span style="color: #000000; font-weight: bold;">index</span><span style="color: #339933;">,</span> dlugosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			newstr <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">:=</span> POS<span style="color: #009900;">&#40;</span>substr<span style="color: #339933;">,</span> str<span style="color: #009900;">&#41;</span>;
			newstr <span style="color: #339933;">:=</span> str;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				ZamienWyrazy <span style="color: #339933;">:=</span> newstr
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					dlugosc <span style="color: #339933;">:=</span> LENGTH<span style="color: #009900;">&#40;</span>substr<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>;
					newstr <span style="color: #339933;">:=</span> CONCAT<span style="color: #009900;">&#40;</span>COPY<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #000000; font-weight: bold;">index</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> exstr<span style="color: #339933;">,</span> COPY<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> dlugosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> LENGTH<span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #000000; font-weight: bold;">index</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
					ZamienWyrazy <span style="color: #339933;">:=</span> ZamienWyrazy<span style="color: #009900;">&#40;</span>newstr<span style="color: #339933;">,</span> substr<span style="color: #339933;">,</span> exstr<span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wpisz łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>lancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj szukany podłańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>sublancuch<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj zastępczy łańcuch znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>zastepczy<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> ZamienWyrazy<span style="color: #009900;">&#40;</span>lancuch<span style="color: #339933;">,</span> sublancuch<span style="color: #339933;">,</span> zastepczy<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Zadanie podobne do powyższego, z tym że tutaj dokonujemy zamiany we wszystkich miejscach szukanego podłańcucha na nowy ciąg znaków (o nie znanym rozmiarze). Cały "pic" polega na umiejętnym wykorzystaniu wspomnianych już funkcji operujących na stringach: <a href="http://www.freepascal.org/docs-html/rtl/system/stringfunctions.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/stringfunctions.html?referer=');">String handling</a> i rekurencji.</p>
<p style="text-align: justify;">Wszystkie zadania z tej lekcji można pobrać: <a href="http://www.tynecki.pl/myown/Pascal/Lista_7.zip">tutaj</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=682</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Laborki z Pascala &#8211; Lista 6</title>
		<link>http://www.tynecki.pl/?p=646</link>
		<comments>http://www.tynecki.pl/?p=646#comments</comments>
		<pubDate>Sun, 06 Dec 2009 11:41:27 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[Free Pascal]]></category>
		<category><![CDATA[UwB]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=646</guid>
		<description><![CDATA[Udostępniam rozwiązania Listy 6!
Laboratorium 6
Zadanie 1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
PROGRAM lista6_zad1&#40;INPUT, OUTPUT&#41;;
&#160;
USES
	CRT;
&#160;
	PROCEDURE WypelnijTablice&#40;a, b : INTEGER&#41;;
		VAR
			tablica : ARRAY OF INTEGER;
			x : INTEGER;
&#160;
		BEGIN
			SETLENGTH&#40;tablica, a&#41;;
			RANDOMIZE;
&#160;
			FOR x := 0 TO &#40;a - 1&#41; DO
				tablica&#91;x&#93; := RANDOM&#40;b&#41; + 1;
&#160;
			FOR x := 0 TO &#40;a - 1&#41; DO
				WRITE&#40;tablica&#91;x&#93;, ' '&#41;;
		END;
&#160;
BEGIN
	CLRSCR;
&#160;
	WypelnijTablice&#40;10, 20&#41;;
&#160;
	REPEAT UNTIL KEYPRESSED;
END.


Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele procedury WypelnijTablice. Ilość [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Udostępniam rozwiązania Listy 6!</p>
<h4 style="text-align: justify;"><span style="color: #000000;">Laboratorium 6</span></h4>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 1</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad1<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WypelnijTablice<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	WypelnijTablice<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">20</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p><span id="more-646"></span></p>
<p style="text-align: justify;">Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele procedury <em>WypelnijTablice</em>. Ilość liczb oraz ich zakres podaje użytkownik w postaci parametrów aktualnych. W treści zadania nie zostało sprecyzowane, czy algorytm losowania ma eliminować duplikaty, dlatego też przedstawiłem go w najprostszej postaci.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad2<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> PoliczSrednia<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x<span style="color: #339933;">,</span> wynik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			wynik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
					wynik <span style="color: #339933;">:=</span> wynik <span style="color: #339933;">+</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			PoliczSrednia <span style="color: #339933;">:=</span> wynik <span style="color: #339933;">/</span> a;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>PoliczSrednia<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">20</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele funkcji <em>PoliczSrednia</em>, po czym obliczam średnią z tych liczb.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 3</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad3<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> PoliczSume<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x<span style="color: #339933;">,</span> wynik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			wynik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
					wynik <span style="color: #339933;">:=</span> wynik <span style="color: #339933;">+</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			PoliczSume <span style="color: #339933;">:=</span> wynik;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>PoliczSume<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">20</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele funkcji <em>PoliczSume</em>, po czym obliczam sumę wszystkich liczb.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad4<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WyznaczMax<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x<span style="color: #339933;">,</span> max<span style="color: #339933;">,</span> pozycja<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			max <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> &gt; max <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							max <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>;
							pozycja <span style="color: #339933;">:=</span> x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
						<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>max<span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> pozycja<span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	WyznaczMax<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">20</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele procedury <em>WyznaczMax</em>. Następnie, na podstawie porównania wyznaczam maksymalną liczbę wraz z jej pozycją w ciągu.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 5</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad5<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> OdszukajElement<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #339933;">,</span> c <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>b <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>c<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> a <span style="color: #339933;">=</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							OdszukajElement <span style="color: #339933;">:=</span> x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
							EXIT;
						<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			OdszukajElement <span style="color: #339933;">:=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>OdszukajElement<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">20</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele funkcji <em>OdszukajElement</em>. Następnie, każdą z tych liczb porównuję z liczbą podaną przez użytkownika, zwracając ustaloną w treści zadania wartość. W sytuacji kiedy liczby są sobie równe, zwracam pozycję liczby, w przeciwnym wypadku (brak szukanego elementu) -1. W związku z tym, że w (Free) Pascalu zwracanie danych przez funkcję wcale <a href="http://en.wikibooks.org/wiki/Pascal_Programming/Syntax_and_functions" onclick="pageTracker._trackPageview('/outgoing/en.wikibooks.org/wiki/Pascal_Programming/Syntax_and_functions?referer=');">nie kończy jej działania</a>, wykorzystałem instrukcję <a href="http://www.freepascal.org/docs-html/rtl/system/exit.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/exit.html?referer=');">EXIT</a>, która &#8220;wychodzi&#8221; z funkcji i wraca do głównego ciała programu.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad6<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WyswietlTablice<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	WyswietlTablice<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">20</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele procedury <em>WyswietlTablice</em>, po czym wyświetlam jej elementy w odwrotnej kolejności.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 7</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad7<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> ZliczParzyste<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			ilosc <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			ZliczParzyste <span style="color: #339933;">:=</span> ilosc;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>ZliczParzyste<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">20</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele funkcji <em>ZliczParzyste</em>. Następnie, na podstawie dzielenia modulo i zwracanej wartości zliczam ilość elementów parzystych w tablicy.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 8</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad8<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> SortujTablice<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000000; font-weight: bold;">IF</span> tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> &gt; tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000000; font-weight: bold;">BEGIN</span>
									temp <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span>;
									tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span>;
									tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> temp;
								<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
							<span style="color: #000000; font-weight: bold;">ELSE</span>
								CONTINUE;
						<span style="color: #000000; font-weight: bold;">END</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	SortujTablice<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">20</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> KEYPRESSED;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypełniam tablicę (dynamiczną) losowymi liczbami całkowitymi, zadeklarowaną w ciele procedury <em>SortujTablice</em>. Następnie, sortuję elementy tablicy, wykorzystując algorytm <a href="http://pl.wikipedia.org/wiki/Sortowanie_b%C4%85belkowe" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Sortowanie_b_C4_85belkowe?referer=');">sortowania bąbelkowego</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 9</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad9<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">CONST</span>
	LINIA <span style="color: #339933;">=</span> <span style="color: #000066;">CHR</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">13</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #000066;">CHR</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #009900;">&#41;</span>;
	rozmiar <span style="color: #339933;">=</span> <span style="color: #cc66cc;">10</span>;
	przedzial <span style="color: #339933;">=</span> <span style="color: #cc66cc;">20</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	wybor <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
&nbsp;
	<span style="color: #666666; font-style: italic;">// Wybór 1 :: WypelnijTablice</span>
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WypelnijTablice<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #009900;">&#41;</span>;
			RANDOMIZE;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> RANDOM<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			TEXTCOLOR<span style="color: #009900;">&#40;</span>WHITE<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>LINIA<span style="color: #339933;">,</span> <span style="color: #ff0000;">'Wynik: '</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #666666; font-style: italic;">// Wybór 2 :: WyznaczMax</span>
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WyznaczMax<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			max<span style="color: #339933;">,</span> pozycja<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			max <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span> &gt; max <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							max <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span>;
							pozycja <span style="color: #339933;">:=</span> x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
						<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						CONTINUE;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			TEXTCOLOR<span style="color: #009900;">&#40;</span>WHITE<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>LINIA<span style="color: #339933;">,</span> <span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> max<span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> pozycja<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #666666; font-style: italic;">// Wybór 3 :: WyswietlTablice</span>
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> WyswietlTablice<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			TEXTCOLOR<span style="color: #009900;">&#40;</span>WHITE<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>LINIA<span style="color: #339933;">,</span> <span style="color: #ff0000;">'Wynik: '</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #666666; font-style: italic;">// Wybór 4 :: SortujTablice</span>
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> SortujTablice<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			y<span style="color: #339933;">,</span> temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							<span style="color: #000000; font-weight: bold;">IF</span> tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> &gt; tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
								<span style="color: #000000; font-weight: bold;">BEGIN</span>
									temp <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span>;
									tablica<span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span>;
									tablica<span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> temp;
								<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
							<span style="color: #000000; font-weight: bold;">ELSE</span>
								CONTINUE;
						<span style="color: #000000; font-weight: bold;">END</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			TEXTCOLOR<span style="color: #009900;">&#40;</span>WHITE<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>LINIA<span style="color: #339933;">,</span> <span style="color: #ff0000;">'Wynik: '</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">READLN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000000; font-weight: bold;">TRUE</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			CLRSCR;
&nbsp;
			TEXTCOLOR<span style="color: #009900;">&#40;</span>YELLOW<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'1) Wypełnij tablicę losowanymi liczbami'</span><span style="color: #339933;">,</span> LINIA<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'2) Znajdź wartość i pozycję maksymalnej liczby'</span><span style="color: #339933;">,</span> LINIA<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'3) Wypisz (w odwrotnej kolejności) wszystkie liczby'</span><span style="color: #339933;">,</span> LINIA<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'4) Posortuj liczby'</span><span style="color: #339933;">,</span> LINIA<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'5) EXIT'</span><span style="color: #339933;">,</span> LINIA<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wybór: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>wybor<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">CASE</span> wybor <span style="color: #000000; font-weight: bold;">OF</span>
				<span style="color: #ff0000;">'1'</span> <span style="color: #339933;">:</span> WypelnijTablice<span style="color: #009900;">&#40;</span>rozmiar<span style="color: #339933;">,</span> przedzial<span style="color: #009900;">&#41;</span>;
				<span style="color: #ff0000;">'2'</span> <span style="color: #339933;">:</span> WyznaczMax<span style="color: #009900;">&#40;</span>rozmiar<span style="color: #339933;">,</span> przedzial<span style="color: #009900;">&#41;</span>;
				<span style="color: #ff0000;">'3'</span> <span style="color: #339933;">:</span> WyswietlTablice<span style="color: #009900;">&#40;</span>rozmiar<span style="color: #339933;">,</span> przedzial<span style="color: #009900;">&#41;</span>;
				<span style="color: #ff0000;">'4'</span> <span style="color: #339933;">:</span> SortujTablice<span style="color: #009900;">&#40;</span>rozmiar<span style="color: #339933;">,</span> przedzial<span style="color: #009900;">&#41;</span>;
				<span style="color: #ff0000;">'5'</span> <span style="color: #339933;">:</span> EXIT;
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				EXIT;
&nbsp;
			<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Zadanie ma na celu przetestować działanie tej samej tablicy (dynamicznej) względem powyższych procedur. Wiąże się to z tym, że deklaracji tablicy należy dokonać w głównym bloku deklaracyjnym zmiennych.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 10</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista6_zad10<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> GenerujTabliczke;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #009900;">&#91;</span>1..10<span style="color: #339933;">,</span> 1..10<span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
			x<span style="color: #339933;">,</span> y<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>	
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">10</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">10</span> <span style="color: #000000; font-weight: bold;">DO</span>
						tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> x <span style="color: #339933;">*</span> y;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">10</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">WRITELN</span>;
&nbsp;
					<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #cc66cc;">10</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">7</span><span style="color: #009900;">&#41;</span>;
&nbsp;
					<span style="color: #000066;">WRITELN</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	GenerujTabliczke;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Generuję w dwuwymiarowej tablicy (statycznej) tabliczkę mnożenia (10 x 10), a następnie wyświetlam jej wynik na ekranie.</p>
<p style="text-align: justify;">Wszystkie zadania z tej lekcji można pobrać: <a href="http://www.tynecki.pl/myown/Pascal/Lista_6.zip">tutaj</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=646</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Laborki z Pascala &#8211; Lista 5</title>
		<link>http://www.tynecki.pl/?p=593</link>
		<comments>http://www.tynecki.pl/?p=593#comments</comments>
		<pubDate>Sun, 29 Nov 2009 13:29:57 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[Free Pascal]]></category>
		<category><![CDATA[UwB]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=593</guid>
		<description><![CDATA[Kolejne rozwiązania już dostępne &#8211; tym razem Lista 5 &#8211; wykorzystujące pojęcie rekurencji.
Laboratorium 5
Zadanie 1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
PROGRAM lista5_zad1&#40;INPUT, OUTPUT&#41;;
&#160;
USES
	CRT;
&#160;
VAR
	wybor : CHAR;
	liczba : INTEGER;
&#160;
	FUNCTION SilniaIteracyjnie&#40;x : INTEGER&#41; : EXTENDED;
		VAR
			wynik : EXTENDED;
			licznik : INTEGER;
&#160;
		BEGIN
			wynik := 1;
&#160;
			IF &#40;x = 0&#41; OR &#40;x = 1&#41; THEN
				SilniaIteracyjnie := 1
&#160;
			ELSE
				BEGIN
					FOR licznik := x DOWNTO 1 DO
						wynik := wynik * licznik;
&#160;
					SilniaIteracyjnie := wynik;
				END;
		END;
&#160;
	FUNCTION SilniaRekurencyjnie&#40;x [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Kolejne rozwiązania już dostępne &#8211; tym razem Lista 5 &#8211; wykorzystujące pojęcie <a href="http://pl.wikipedia.org/wiki/Rekursja" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Rekursja?referer=');">rekurencji</a>.</p>
<h4 style="text-align: justify;"><span style="color: #000000;">Laboratorium 5</span></h4>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 1</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad1<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	wybor <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
	liczba <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> SilniaIteracyjnie<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> EXTENDED;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			wynik <span style="color: #339933;">:</span> EXTENDED;
			licznik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			wynik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				SilniaIteracyjnie <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">FOR</span> licznik <span style="color: #339933;">:=</span> x <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
						wynik <span style="color: #339933;">:=</span> wynik <span style="color: #339933;">*</span> licznik;
&nbsp;
					SilniaIteracyjnie <span style="color: #339933;">:=</span> wynik;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> SilniaRekurencyjnie<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> EXTENDED;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				SilniaRekurencyjnie <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				SilniaRekurencyjnie <span style="color: #339933;">:=</span> SilniaRekurencyjnie<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> x;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Jaki sposób liczenia silnii wybierasz:'</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'  a) Iteracyjnie'</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'  b) Rekurencyjnie'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wybór: [ ]'</span><span style="color: #009900;">&#41;</span>;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">12</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span>;
	wybor <span style="color: #339933;">:=</span> READKEY;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>wybor<span style="color: #009900;">&#41;</span>;
&nbsp;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">7</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'a'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'A'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
			GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> SilniaIteracyjnie<span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'b'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'B'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
			GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> SilniaRekurencyjnie<span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Błędny wybór!'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p><span id="more-593"></span></p>
<p style="text-align: justify;">Obliczam silnię z podanej przez użytkownika liczby, wykorzystując do tego jedną z wybranych funkcji. Pierwsza (<em>SilniaIteracyjnie</em>), to zwykła iteracja pętli FOR. Druga możliwość (<em>SilniaRekurencyjnie</em>) oblicza wynik z wykorzystaniem rekurencji.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad2<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	wybor <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
	a1<span style="color: #339933;">,</span> q<span style="color: #339933;">,</span> n <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> Iter<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> z <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> EXTENDED;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			wynik<span style="color: #339933;">,</span> licznik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			wynik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> licznik <span style="color: #339933;">:=</span> z <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
				wynik <span style="color: #339933;">:=</span> wynik <span style="color: #339933;">*</span> y;
&nbsp;
			Iter <span style="color: #339933;">:=</span> x <span style="color: #339933;">*</span> wynik;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> Rek<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> z <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> EXTENDED;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> z <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				Rek <span style="color: #339933;">:=</span> x
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				Rek <span style="color: #339933;">:=</span> y <span style="color: #339933;">*</span> Rek<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> z <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Jaki sposób liczenia n-tego wyrazu ciągu geo. wybierasz:'</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'  a) Iteracyjnie'</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'  b) Rekurencyjnie'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wybór: [ ]'</span><span style="color: #009900;">&#41;</span>;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">12</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span>;
	wybor <span style="color: #339933;">:=</span> READKEY;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>wybor<span style="color: #009900;">&#41;</span>;
&nbsp;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">7</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'a'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'A'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj a1, q oraz n: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a1<span style="color: #339933;">,</span> q<span style="color: #339933;">,</span> n<span style="color: #009900;">&#41;</span>;
&nbsp;
			GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> Iter<span style="color: #009900;">&#40;</span>a1<span style="color: #339933;">,</span> q<span style="color: #339933;">,</span> n<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'b'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'B'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj a1, q oraz n: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a1<span style="color: #339933;">,</span> q<span style="color: #339933;">,</span> n<span style="color: #009900;">&#41;</span>;
&nbsp;
			GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> Rek<span style="color: #009900;">&#40;</span>a1<span style="color: #339933;">,</span> q<span style="color: #339933;">,</span> n<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Błędny wybór!'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Obliczam dowolny wyraz ciągu geometrycznego, który wyraża się <a href="http://pl.wikipedia.org/wiki/Ci%C4%85g_geometryczny" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Ci_C4_85g_geometryczny?referer=');">bardzo prostym wzorem</a>. Mimo to, ze względu na &#8220;walory edukacyjne&#8221;, wykonuję to przy pomocy dwóch funkcji: <em>Rek</em> (rekurencyjnie) i <em>Iter</em> (iteracyjnie).</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 3</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad3<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	wybor <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> NWDbezR<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
		  <span style="color: #000000; font-weight: bold;">REPEAT</span>
			temp <span style="color: #339933;">:=</span> x <span style="color: #000000; font-weight: bold;">MOD</span> y;
			x <span style="color: #339933;">:=</span> y;
			y <span style="color: #339933;">:=</span> temp;
		  <span style="color: #000000; font-weight: bold;">UNTIL</span> y <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
		  NWDbezR <span style="color: #339933;">:=</span> x;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> NWDzR<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> y <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				NWDzR <span style="color: #339933;">:=</span> x
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				NWDzR <span style="color: #339933;">:=</span> NWDzR<span style="color: #009900;">&#40;</span>y<span style="color: #339933;">,</span> x <span style="color: #000000; font-weight: bold;">MOD</span> y<span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Jaki sposób liczenia NWD wybierasz:'</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'  a) Bez użycia rekurencji'</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'  b) Rekurencyjnie'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wybór: [ ]'</span><span style="color: #009900;">&#41;</span>;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">12</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span>;
	wybor <span style="color: #339933;">:=</span> READKEY;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>wybor<span style="color: #009900;">&#41;</span>;
&nbsp;
	GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">7</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'a'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'A'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj a i b: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
&nbsp;
			GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> NWDbezR<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'b'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>wybor <span style="color: #339933;">=</span> <span style="color: #ff0000;">'B'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj a i b: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
&nbsp;
			GOTOXY<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> NWDzR<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Błędny wybór!'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Skoro mowa o rekurencji, nie może zabraknąć zadania z <a href="http://pl.wikipedia.org/wiki/Najwi%C4%99kszy_wsp%C3%B3lny_dzielnik" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Najwi_C4_99kszy_wsp_C3_B3lny_dzielnik?referer=');">NWD</a>. Zrozumienie działania algorytmu to podstawa do jego poprawnej implementacji.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad4<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> Piramida<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			licznik<span style="color: #339933;">,</span> temp <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			temp <span style="color: #339933;">:=</span> x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> temp <span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				Piramida <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">FOR</span> licznik <span style="color: #339933;">:=</span> x <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'*'</span><span style="color: #009900;">&#41;</span>;
&nbsp;
					<span style="color: #000066;">WRITELN</span>;
&nbsp;
					Piramida <span style="color: #339933;">:=</span> Piramida<span style="color: #009900;">&#40;</span>temp<span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	Piramida<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Funkcja <em>Piramida</em> odpowiedzialna jest za wypisywanie ciągu znaków, składającego się z malejącej ilości gwiazdek. Ilość ta maleje za każdym (rekurencyjnym) wywołaniem funkcji, dzięki czemu osiągamy zamierzony cel.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 5</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad5<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> G<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'a = '</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">', b = '</span><span style="color: #339933;">,</span> y<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #009900;">&#40;</span>y &lt; <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				G <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">69</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">+</span> y<span style="color: #009900;">&#41;</span> &gt; <span style="color: #cc66cc;">6</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				G <span style="color: #339933;">:=</span> G<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> y<span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> G<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				G <span style="color: #339933;">:=</span> G<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	G<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;	
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Badam działanie funkcji G i generuję <a href="http://pl.wikipedia.org/wiki/Drzewo_wywo%C5%82a%C5%84_funkcji" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Drzewo_wywo_C5_82a_C5_84_funkcji?referer=');">drzewo wywołań</a>, w zależności od podanych parametrów (3, 5).</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad6<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	n <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> OkreslTo<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> EXTENDED;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					OkreslTo <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
					<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'a'</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">' = '</span><span style="color: #339933;">,</span> Okreslto<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ElSE</span> <span style="color: #000000; font-weight: bold;">IF</span> x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					OkreslTo <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;
					<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'a'</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">' = '</span><span style="color: #339933;">,</span> Okreslto<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> x &lt; <span style="color: #339933;">=</span> <span style="color: #cc66cc;">5</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					OkreslTo <span style="color: #339933;">:=</span> SQR<span style="color: #009900;">&#40;</span>OkreslTo<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>;
					<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'a'</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">' = '</span><span style="color: #339933;">,</span> Okreslto<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					OkreslTo <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3</span> <span style="color: #339933;">*</span> OkreslTo<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> OkreslTo<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
					<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'a'</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">' = '</span><span style="color: #339933;">,</span> Okreslto<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj n: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>n<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	OkreslTo<span style="color: #009900;">&#40;</span>n<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Zdecydowanie to zadanie przystworzyło najwięcej problemów. Implementacja algorytmu nie była tak prosta, jak się na początku wydawało. Kluczem do rozwiązania tego zadania jest właściwe ustalenie warunków zachowania ciągu i deklaracja początkowych jego wyrazów. Naszym zadaniem było sprawdzić 8-smy wyraz tego ciągu, który przy moich założeniach równy jest -2.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 7</span></p>
<p style="text-align: center;"><img class="aligncenter" src="http://www.tynecki.pl/myown/zad7.png" alt="Zad 7" /></p>
<p style="text-align: justify;">To zadanie nie wymaga kodu do ustalenia prawidłowego rozwiązania, ponieważ podlega tylko i wyłącznie analizie. Podając argumenty tylko parzyste, spowodujemy największą ilość wywołań funkcji, o której mowa jest w treści zadania.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 8</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad8<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> ZrobTo<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> x &gt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'$'</span><span style="color: #009900;">&#41;</span>;
					ZrobTo<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITELN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	ZrobTo<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
	ZrobTo<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">88</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Badam działanie funkcji <em>ZrobTo</em>, która generuje ciąg znaków, składający się z dolara i nowej linii. W przypadku parametru 0, funkcja wygeneruje tylko pustą linię. Parametr 88, uruchomi rekurencyjne działanie funkcji, co spowoduje zwrot ciągu znaków o tej samej długości i pustą linię.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 9</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad9<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> Zagadka<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				Zagadka <span style="color: #339933;">:=</span> y
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				Zagadka <span style="color: #339933;">:=</span> Zagadka<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> y<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;	
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> Zagadkowa<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">IF</span> y <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				Zagadkowa <span style="color: #339933;">:=</span> x
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				Zagadkowa <span style="color: #339933;">:=</span> Zagadkowa<span style="color: #009900;">&#40;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> y<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>Zagadka<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">8</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>Zagadkowa<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">8</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Badam działanie funkcji <em>Zagadka</em> i <em>Zagadkowa</em>, w zależności od tych samych wartości parametrów. W przypadku Zagadka, funkcja wykonuje się rekurencyjnie, zwracając sumę dwóch liczb. Zagadkowa to zmodyfikowana funkcja Zagadka, która zwraca "fatalny błąd": Range check error. Wyrażenie w ciele funkcji po pewnym czasie przekracza określony zakres liczbowy (nieprawidłowo określony warunek), przez co program się wysypuje.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 10</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista5_zad10<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	k<span style="color: #339933;">,</span> n <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> GenerujSume<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			tablica <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">ARRAY</span> <span style="color: #000000; font-weight: bold;">OF</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
			x<span style="color: #339933;">,</span> y<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>	
			a <span style="color: #339933;">:=</span> a <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
			b <span style="color: #339933;">:=</span> b <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			SETLENGTH<span style="color: #009900;">&#40;</span>tablica<span style="color: #339933;">,</span> a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> b <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
					<span style="color: #000000; font-weight: bold;">BEGIN</span>
						<span style="color: #000000; font-weight: bold;">IF</span> y <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
							tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>
&nbsp;
						<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>y &gt; <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000066;">AND</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
							tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> x <span style="color: #339933;">+</span> y
&nbsp;
						<span style="color: #000000; font-weight: bold;">ELSE</span>
							tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">:=</span> tablica<span style="color: #009900;">&#91;</span>x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span> <span style="color: #339933;">+</span> tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span>;
					<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> a <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">FOR</span> y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">TO</span> b <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
						<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span>tablica<span style="color: #009900;">&#91;</span>x<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span>y<span style="color: #009900;">&#93;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
&nbsp;
					<span style="color: #000066;">WRITELN</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;	
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj k i n: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>k<span style="color: #339933;">,</span> n<span style="color: #009900;">&#41;</span>;
&nbsp;
	GenerujSume<span style="color: #009900;">&#40;</span>k<span style="color: #339933;">,</span> n<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span> <span style="color: #000000; font-weight: bold;">UNTIL</span> Keypressed;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Procedura <em>GenerujSume</em>, jest odpowiedzialna za wygenerowanie tabelki, zwierającej sumę wartości umieszczonych z lewej i górnej strony. Do rozwiązania tego zadania wykorzystałem <a href="http://www.freepascal.org/docs-html/ref/refsu14.html#x37-430003.3.1" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu14.html_x37-430003.3.1?referer=');">tablice dynamiczne</a>. Takie podejście zapewnia nam elastyczny sposób przechowywania pewnej ilości danych, dlatego też deklarując taką tablicę początkowo nie podajemy zakresu indeksów. Ilość elementów określamy dopiero w czasie działania programu. W tym celu korzystam z funkcji <a href="http://www.freepascal.org/docs-html/ref/refsu14.html#x37-430003.3.1" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu14.html_x37-430003.3.1?referer=');">SETLENGTH</a>. <strong>Uwaga!</strong> W tablicach dynamicznych indeksy rozpoczynają się od 0, a kończą na (mniejszej o 1) liczbie komórek tablicy. Nie musimy się również martwić o naszą pamięć, bo jeśli tablica została utworzona w procedurze lub funkcji, to jest automatycznie usuwana z pamięci po zakończeniu jej działania.</p>
<p style="text-align: justify;">Wszystkie zadania z tej lekcji można pobrać: <a href="http://www.tynecki.pl/myown/Pascal/Lista_5.zip">tutaj</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=593</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Laborki z Pascala &#8211; Lista 4</title>
		<link>http://www.tynecki.pl/?p=562</link>
		<comments>http://www.tynecki.pl/?p=562#comments</comments>
		<pubDate>Tue, 24 Nov 2009 19:40:53 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[Free Pascal]]></category>
		<category><![CDATA[UwB]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=562</guid>
		<description><![CDATA[Udostępniam rozwiązania zadań z Listy 4.
Laboratorium 4
Zadanie 1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
PROGRAM lista4_zad1&#40;OUTPUT&#41;;
&#160;
USES
	CRT;
&#160;
VAR
	k : REAL;
	x, y, z : INTEGER;
&#160;
BEGIN
	CLRSCR;
&#160;
	k := 1.5;
	x := 5;
	y := 6;
	z := 3;
&#160;
	WRITELN&#40;'x + y + z = ', x + y + z&#41;;
	WRITELN&#40;'x + y * z = ', x + y * z&#41;;
	WRITELN&#40;'x * (y + z) = ', x * &#40;y + [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Udostępniam rozwiązania zadań z Listy 4.</p>
<h4 style="text-align: justify;"><span style="color: #000000;">Laboratorium 4</span></h4>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 1</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad1<span style="color: #009900;">&#40;</span>OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	k <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
	x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> z <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	k <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1.5</span>;
	x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">5</span>;
	y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">6</span>;
	z <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">3</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'x + y + z = '</span><span style="color: #339933;">,</span> x <span style="color: #339933;">+</span> y <span style="color: #339933;">+</span> z<span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'x + y * z = '</span><span style="color: #339933;">,</span> x <span style="color: #339933;">+</span> y <span style="color: #339933;">*</span> z<span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'x * (y + z) = '</span><span style="color: #339933;">,</span> x <span style="color: #339933;">*</span> <span style="color: #009900;">&#40;</span>y <span style="color: #339933;">+</span> z<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'x + y - z = '</span><span style="color: #339933;">,</span> x <span style="color: #339933;">+</span> y <span style="color: #339933;">-</span> z<span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'y / z = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>y <span style="color: #339933;">/</span> z<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'x + y / z = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">+</span> y <span style="color: #339933;">/</span> z<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'y DIV 1 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>y <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'y DIV 2 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>y <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'y DIV 3 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>y <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'y DIV 4 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>y <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'y DIV 5 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>y <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'y DIV 6 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>y <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">6</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'y DIV 7 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>y <span style="color: #000000; font-weight: bold;">DIV</span> <span style="color: #cc66cc;">7</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'z MOD 1 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>z <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'z MOD 2 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>z <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'z MOD 3 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>z <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'z MOD 4 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>z <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'z MOD 5 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>z <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'z MOD 6 = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>z <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">6</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'k * y = '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>k <span style="color: #339933;">*</span> y<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p><span id="more-562"></span></p>
<p style="text-align: justify;">Wykonujemy podstawowe działania arytmetyczne (w tym DIV i MOD), badając ich zachowanie względem ustalonych liczb.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad2<span style="color: #009900;">&#40;</span>OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'ROUND(3.4) = '</span><span style="color: #339933;">,</span> ROUND<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3.4</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'ROUND(3.7) = '</span><span style="color: #339933;">,</span> ROUND<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3.7</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'TRUNC(3.4) = '</span><span style="color: #339933;">,</span> TRUNC<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3.4</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'TRUNC(3.7) = '</span><span style="color: #339933;">,</span> TRUNC<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3.7</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'INT(3.4) = '</span><span style="color: #339933;">,</span> INT<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3.4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'INT(3.7) = '</span><span style="color: #339933;">,</span> INT<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3.7</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'FRAC(3.4) = '</span><span style="color: #339933;">,</span> FRAC<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3.4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'FRAC(3.7) = '</span><span style="color: #339933;">,</span> FRAC<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3.7</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Badamy działanie 4 wbudowanych funkcji konwersji: <a href="http://www.freepascal.org/docs-html/rtl/system/round.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/round.html?referer=');">ROUND</a>, <a href="http://www.freepascal.org/docs-html/rtl/system/trunc.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/trunc.html?referer=');">TRUNC</a>, <a href="http://www.freepascal.org/docs-html/rtl/system/int.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/int.html?referer=');">INT</a> i <a href="http://www.freepascal.org/docs-html/rtl/system/frac.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/frac.html?referer=');">FRAC</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 3</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad3<span style="color: #009900;">&#40;</span>OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT<span style="color: #339933;">,</span> MATH;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'SIN(PI / 2) = '</span><span style="color: #339933;">,</span> <span style="color: #000066;">SIN</span><span style="color: #009900;">&#40;</span>PI <span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'SQRT(16) = '</span><span style="color: #339933;">,</span> <span style="color: #000066;">SQRT</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">16</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'POWER(2, 3) = '</span><span style="color: #339933;">,</span> POWER<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'POWER(125, 1/3) = '</span><span style="color: #339933;">,</span> POWER<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">125</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'POWER(16, 1/4) = '</span><span style="color: #339933;">,</span> POWER<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">16</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'ABS(-16.2) = '</span><span style="color: #339933;">,</span> <span style="color: #000066;">ABS</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">16.2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Badamy działanie 4 funkcji matematycznych, dostępnych w bibliotece standardowej i module MATH: <a href="http://www.freepascal.org/docs-html/rtl/system/sin.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/sin.html?referer=');">SIN</a>, <a href="http://www.freepascal.org/docs-html/rtl/system/sqrt.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/sqrt.html?referer=');">SQRT</a>, <a href="http://www.freepascal.org/docs-html/rtl/math/power.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/math/power.html?referer=');">POWER</a> i <a href="http://www.freepascal.org/docs-html/rtl/system/abs.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/abs.html?referer=');">ABS</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad4<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczby a i b: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> b <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Nie dzielimy przez zero!'</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Iloraz liczb: '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">/</span> b<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Badamy iloraz wprowadzonych liczb, pamiętając o zabezpieczeniu sytuacji dzielenia przez zero.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 5</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad5<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	a <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę a: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>a <span style="color: #000000; font-weight: bold;">MOD</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Jest to liczba parzysta.'</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Nie jest to liczba parzysta.'</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Badamy parzystość (i nieparzystość) wprowadzonej liczby całkowitej, korzystając z MOD.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad6<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	liczba <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę rzeczywistą: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> liczba &gt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Liczba jest większa od zera.'</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> liczba <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Liczba jest równa zero!'</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Liczba jest mniejsza od zera.'</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Sprawdzamy, czy wprowadzona liczba rzeczywista jest większa, mniejsza bądź równa zero.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 7</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad7<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	a<span style="color: #339933;">,</span> b<span style="color: #339933;">,</span> c<span style="color: #339933;">,</span> delta<span style="color: #339933;">,</span> x0<span style="color: #339933;">,</span> x1<span style="color: #339933;">,</span> x2<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj współczynniki a, b i c równania: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #339933;">,</span> c<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	delta <span style="color: #339933;">:=</span> SQR<span style="color: #009900;">&#40;</span>b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">4</span> <span style="color: #339933;">*</span> a <span style="color: #339933;">*</span> c;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> delta &lt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Pierwiastki rzeczywiste nie istnieją!'</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> delta <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			x0 <span style="color: #339933;">:=</span> <span style="color: #339933;">-</span>b <span style="color: #339933;">/</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span> <span style="color: #339933;">*</span> a<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'x0 = '</span><span style="color: #339933;">,</span> x0<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			x1 <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span>b <span style="color: #339933;">+</span> <span style="color: #000066;">SQRT</span><span style="color: #009900;">&#40;</span>delta<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span> <span style="color: #339933;">*</span> a<span style="color: #009900;">&#41;</span>;
			x2 <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span>b <span style="color: #339933;">-</span> <span style="color: #000066;">SQRT</span><span style="color: #009900;">&#40;</span>delta<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span> <span style="color: #339933;">*</span> a<span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'x1 = '</span><span style="color: #339933;">,</span> x1<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">', x2 = '</span><span style="color: #339933;">,</span> x2<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Obliczamy miejsca zerowe (dla liczb rzeczywistych) funkcji kwadratowej, analizując wartość delty. Ilość argumentów zależna jest od wartości delty.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 8</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad8<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	licznik<span style="color: #339933;">,</span> liczba <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę naturalną: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> licznik <span style="color: #339933;">:=</span> liczba <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #009900;">&#40;</span>liczba <span style="color: #339933;">+</span> <span style="color: #cc66cc;">10</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>licznik<span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypisujemy 10 kolejnych liczb naturalnych, ale od liczby, którą wprowadzi użytkownik.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 9</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad9<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	licznik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> licznik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">10</span> <span style="color: #000000; font-weight: bold;">DOWNTO</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>licznik<span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wypisujemy (malejąco) 10 kolejnych liczb naturalnych, począwszy od liczby 10. W zadaniu tym wykorzystałem wyrażenie <a href="http://www.freepascal.org/docs-html/ref/refsu42.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu42.html?referer=');">DOWNTO</a>, dzięki któremu taki sposób działania pętli jest możliwy.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 10</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad10<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	ciag1<span style="color: #339933;">,</span> ciag2 <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> Polacz<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> y<span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj pierwszy ciąg znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>ciag1<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj drugi ciąg znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>ciag2<span style="color: #009900;">&#41;</span>;
&nbsp;
	Polacz<span style="color: #009900;">&#40;</span>ciag1<span style="color: #339933;">,</span> ciag2<span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Program pobiera od użytkownika dwa ciągi znaków. Następnie przekazuje zmienne do procedury Polacz, która to dokonuje konkatenacji i wypisuje wynik jej działania.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 11</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad11<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	ciag1<span style="color: #339933;">,</span> ciag2<span style="color: #339933;">,</span> wynik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> Polacz<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>; <span style="color: #000000; font-weight: bold;">VAR</span> z <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
			z <span style="color: #339933;">:=</span> x <span style="color: #339933;">+</span> <span style="color: #ff0000;">' '</span> <span style="color: #339933;">+</span> y;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj pierwszy ciąg znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>ciag1<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj drugi ciąg znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>ciag2<span style="color: #009900;">&#41;</span>;
&nbsp;
	Polacz<span style="color: #009900;">&#40;</span>ciag1<span style="color: #339933;">,</span> ciag2<span style="color: #339933;">,</span> wynik<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>wynik<span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Zmodyfikowana wersja Zadania 10. Tym razem procedura zwraca wynik do głównego ciała programu - przy pomocy <a href="http://www.freepascal.org/docs-html/ref/refsu48.html#x124-13100011.4.2" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu48.html_x124-13100011.4.2?referer=');">parametru zmiennego</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 12</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad12<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> Sprawdz<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> x &gt; y <span style="color: #000000; font-weight: bold;">THEN</span>	
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>x<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' &gt; '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> x &lt; y <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>x<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' &lt; '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span>x<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' = '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczby rzeczywiste a i b: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
&nbsp;
	Sprawdz<span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Program pobiera od użytkownika dwie liczby rzeczywiste. Następnie przekazuje zmienne do procedury Sprawdz, która to w zależności od wartości ich porównania wypisuje stosowany komunikat.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 13</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad13<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	liczba <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> Pierw<span style="color: #009900;">&#40;</span>a <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> a &gt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				Pierw <span style="color: #339933;">:=</span> <span style="color: #000066;">SQRT</span><span style="color: #009900;">&#40;</span>a<span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				Pierw <span style="color: #339933;">:=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę rzeczywistą: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> Pierw<span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Tylko liczby dodatnie!'</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Pierwiastek z tej liczby to: '</span><span style="color: #339933;">,</span> pierw<span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Program pobiera od użytkownika liczbę rzeczywistą. Następnie przekazuje tą zmienną do funkcji Pierw, która to oblicza jej pierwiastek kwadratowy. W sytuacji gdy podana liczba jest ujemna, funkcja zwraca wartość -1, a główne ciało programu reaguje na to właściwym komunikatem. W pozostałych przypadkach dochodzi do obliczenia wartości.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 14</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad14<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	ciag <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> LiczZnak<span style="color: #009900;">&#40;</span>a <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span>; b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
		<span style="color: #000000; font-weight: bold;">VAR</span>
			licznik<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			ilosc <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> licznik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> LENGTH<span style="color: #009900;">&#40;</span>a<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000000; font-weight: bold;">IF</span> a<span style="color: #009900;">&#91;</span>licznik<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> b <span style="color: #000000; font-weight: bold;">THEN</span>
						ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			LiczZnak <span style="color: #339933;">:=</span> ilosc;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj ciąg znaków: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>ciag<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Ilość dla '</span><span style="color: #ff0000;">'o'</span><span style="color: #ff0000;">': '</span><span style="color: #339933;">,</span> LiczZnak<span style="color: #009900;">&#40;</span>ciag<span style="color: #339933;">,</span> <span style="color: #ff0000;">'o'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Ilość dla '</span><span style="color: #ff0000;">'n'</span><span style="color: #ff0000;">': '</span><span style="color: #339933;">,</span> LiczZnak<span style="color: #009900;">&#40;</span>ciag<span style="color: #339933;">,</span> <span style="color: #ff0000;">'n'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Ilość dla '</span><span style="color: #ff0000;">'t'</span><span style="color: #ff0000;">': '</span><span style="color: #339933;">,</span> LiczZnak<span style="color: #009900;">&#40;</span>ciag<span style="color: #339933;">,</span> <span style="color: #ff0000;">'t'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Program pobiera od użytkownika ciąg znaków. Następnie przekazuje zmienną do funkcji LiczZnak, której zadaniem jest zliczyć ilość wystąpień znaków: o, n oraz t w tym ciągu. Do obliczenia długości ciągu wykorzystałem wbudowaną funkcję <a href="http://www.freepascal.org/docs-html/rtl/system/length.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/length.html?referer=');">LENGTH</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 15</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
</pre></td><td class="code"><pre class="delphi" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista4_zad15<span style="color: #000066;">&#40;</span>INPUT<span style="color: #000066;">,</span> OUTPUT<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT<span style="color: #000066;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">CONST</span>
	PIN <span style="color: #000066;">=</span> <span style="color: #ff0000;">'1234'</span><span style="color: #000066;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	walidacja<span style="color: #000066;">,</span> weryfikacja <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">BOOLEAN</span><span style="color: #000066;">;</span>
	wybor <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #000066;">;</span>
	kwota <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #000066;">;</span>
&nbsp;
	<span style="color: #808080; font-style: italic;">{ PROCEDURY :: SprPin, Menu, Saldo }</span>
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> SprPin<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">VAR</span> wynik <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">BOOLEAN</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">VAR</span>
			iterator <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #000066;">;</span>
			znak <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #000066;">;</span>
			temp <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">STRING</span><span style="color: #000066;">;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">37</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- PIN --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			TEXTCOLOR<span style="color: #000066;">&#40;</span>White<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITE</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Podaj PIN: '</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			temp <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #ff0000;">''</span><span style="color: #000066;">;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">FOR</span> iterator <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #0000ff;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> <span style="color: #0000ff;">4</span> <span style="color: #000000; font-weight: bold;">DO</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					znak <span style="color: #000066;">:</span><span style="color: #000066;">=</span> READKEY<span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITE</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'*'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					temp <span style="color: #000066;">:</span><span style="color: #000066;">=</span> temp <span style="color: #000066;">+</span> znak<span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> temp <span style="color: #000066;">=</span> PIN <span style="color: #000000; font-weight: bold;">THEN</span>
				wynik <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">TRUE</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				wynik <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">FALSE</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> Menu<span style="color: #000066;">&#40;</span>warunek<span style="color: #000066;">,</span> wynik <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">BOOLEAN</span><span style="color: #000066;">;</span> <span style="color: #000000; font-weight: bold;">VAR</span> wybor <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			CLRSCR<span style="color: #000066;">;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> wynik <span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">FALSE</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">37</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- PIN --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Yellow<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Błędny PIN!'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">37</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- MENU --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					TEXTCOLOR<span style="color: #000066;">&#40;</span>White<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'1. Wpłata'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">10</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'2. Wypłata'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">11</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'3. Sprawdź saldo'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">12</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'4. Exit'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">15</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITE</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Wybór: ['</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">42</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">15</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITE</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">']'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> warunek <span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">TRUE</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">41</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">15</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
							wybor <span style="color: #000066;">:</span><span style="color: #000066;">=</span> READKEY<span style="color: #000066;">;</span>
							<span style="color: #000066;">WRITE</span><span style="color: #000066;">&#40;</span>wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
						<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						<span style="color: #000066;">WRITELN</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">PROCEDURE</span> Saldo<span style="color: #000066;">&#40;</span>kasa <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			CLRSCR<span style="color: #000066;">;</span>
&nbsp;
			TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- SALDO --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			TEXTCOLOR<span style="color: #000066;">&#40;</span>White<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">35</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'SALDO: '</span><span style="color: #000066;">,</span> kasa<span style="color: #000066;">,</span> <span style="color: #ff0000;">'zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
&nbsp;
	<span style="color: #808080; font-style: italic;">{ FUNKCJE :: Wplata, Wyplata }</span>
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> Wplata<span style="color: #000066;">&#40;</span>kasa <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #000066;">&#41;</span> <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">VAR</span>
			wpl <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #000066;">;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			CLRSCR<span style="color: #000066;">;</span>
&nbsp;
			TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- WPŁATA --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			TEXTCOLOR<span style="color: #000066;">&#40;</span>White<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Możliwości wpłaty:'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">34</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">10</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'a) 50zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">34</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">11</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'b) 100zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">34</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">12</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'c) 200zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">34</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">14</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'d) Wróć do MENU'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">16</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Twój wybór: ['</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">47</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">16</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">']'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">46</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">16</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			wpl <span style="color: #000066;">:</span><span style="color: #000066;">=</span> READKEY<span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITE</span><span style="color: #000066;">&#40;</span>wpl<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span>wpl <span style="color: #000066;">=</span> <span style="color: #ff0000;">'a'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>wpl <span style="color: #000066;">=</span> <span style="color: #ff0000;">'A'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">19</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Cyan<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'WPŁACONO: 50zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Wplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa <span style="color: #000066;">+</span> <span style="color: #0000ff;">50</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span>wpl <span style="color: #000066;">=</span> <span style="color: #ff0000;">'b'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>wpl <span style="color: #000066;">=</span> <span style="color: #ff0000;">'B'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">19</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Cyan<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'WPŁACONO: 100zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Wplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa <span style="color: #000066;">+</span> <span style="color: #0000ff;">100</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span>wpl <span style="color: #000066;">=</span> <span style="color: #ff0000;">'c'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>wpl <span style="color: #000066;">=</span> <span style="color: #ff0000;">'C'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">19</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Cyan<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'WPŁACONO: 200zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Wplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa <span style="color: #000066;">+</span> <span style="color: #0000ff;">200</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span>wpl <span style="color: #000066;">=</span> <span style="color: #ff0000;">'d'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>wpl <span style="color: #000066;">=</span> <span style="color: #ff0000;">'D'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					Wplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa<span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					CLRSCR<span style="color: #000066;">;</span>
&nbsp;
					TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- WPŁATA --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Yellow<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Błędny wybór!'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					weryfikacja <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">FALSE</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">FUNCTION</span> Wyplata<span style="color: #000066;">&#40;</span>kasa <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #000066;">&#41;</span> <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">VAR</span>
			wyp <span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span><span style="color: #000066;">;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			CLRSCR<span style="color: #000066;">;</span>
&nbsp;
			TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- WYPŁATA --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			TEXTCOLOR<span style="color: #000066;">&#40;</span>White<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Możliwość wypłaty:'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">34</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">10</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'a) 50zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">34</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">11</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'b) 100zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">34</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">12</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'c) 200zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">34</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">14</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'d) Wróć do MENU'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">16</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Twój wybór: ['</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">47</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">16</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">']'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">46</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">16</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
			wyp <span style="color: #000066;">:</span><span style="color: #000066;">=</span> READKEY<span style="color: #000066;">;</span>
			<span style="color: #000066;">WRITE</span><span style="color: #000066;">&#40;</span>wyp<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span><span style="color: #000066;">&#40;</span>wyp <span style="color: #000066;">=</span> <span style="color: #ff0000;">'a'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>wyp <span style="color: #000066;">=</span> <span style="color: #ff0000;">'A'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">AND</span> <span style="color: #000066;">&#40;</span>kasa &gt;<span style="color: #000066;">=</span> <span style="color: #0000ff;">50</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">19</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Cyan<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'POBRANO: 50zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Wyplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa <span style="color: #000066;">-</span> <span style="color: #0000ff;">50</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span><span style="color: #000066;">&#40;</span>wyp <span style="color: #000066;">=</span> <span style="color: #ff0000;">'b'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>wyp <span style="color: #000066;">=</span> <span style="color: #ff0000;">'B'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">AND</span> <span style="color: #000066;">&#40;</span>kasa &gt;<span style="color: #000066;">=</span> <span style="color: #0000ff;">100</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">19</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Cyan<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'POBRANO: 100zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Wyplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa <span style="color: #000066;">-</span> <span style="color: #0000ff;">100</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span><span style="color: #000066;">&#40;</span>wyp <span style="color: #000066;">=</span> <span style="color: #ff0000;">'c'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>wyp <span style="color: #000066;">=</span> <span style="color: #ff0000;">'C'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">AND</span> <span style="color: #000066;">&#40;</span>kasa &gt;<span style="color: #000066;">=</span> <span style="color: #0000ff;">200</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">19</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Cyan<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'POBRANO: 200zł'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					Wyplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa <span style="color: #000066;">-</span> <span style="color: #0000ff;">200</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span>wyp <span style="color: #000066;">=</span> <span style="color: #ff0000;">'d'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>wyp <span style="color: #000066;">=</span> <span style="color: #ff0000;">'D'</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					Wyplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa<span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					CLRSCR<span style="color: #000066;">;</span>
&nbsp;
					TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- WYPŁATA --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">33</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Yellow<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #000066;">&#40;</span>kasa &lt; <span style="color: #0000ff;">50</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>kasa &lt; <span style="color: #0000ff;">100</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">OR</span> <span style="color: #000066;">&#40;</span>kasa &lt; <span style="color: #0000ff;">200</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">32</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
							<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Brak środków na koncie!'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
							DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
							Wyplata <span style="color: #000066;">:</span><span style="color: #000066;">=</span> kasa<span style="color: #000066;">;</span>
							Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
						<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">ELSE</span>
						<span style="color: #000000; font-weight: bold;">BEGIN</span>
							GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
							<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Błędny wybór!'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
							DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
							weryfikacja <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">FALSE</span><span style="color: #000066;">;</span>
						<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR<span style="color: #000066;">;</span>
&nbsp;
	SprPin<span style="color: #000066;">&#40;</span>walidacja<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
	Menu<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">,</span> walidacja<span style="color: #000066;">,</span> wybor<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
	kwota <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #0000ff;">1000</span><span style="color: #000066;">;</span>
	weryfikacja <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> <span style="color: #000066;">&#40;</span>weryfikacja <span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">AND</span> <span style="color: #000066;">&#40;</span>walidacja <span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">TRUE</span><span style="color: #000066;">&#41;</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000000; font-weight: bold;">CASE</span> wybor <span style="color: #000000; font-weight: bold;">OF</span>
				<span style="color: #ff0000;">'1'</span> <span style="color: #000066;">:</span> kwota <span style="color: #000066;">:</span><span style="color: #000066;">=</span> Wplata<span style="color: #000066;">&#40;</span>kwota<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
				<span style="color: #ff0000;">'2'</span> <span style="color: #000066;">:</span> kwota <span style="color: #000066;">:</span><span style="color: #000066;">=</span> Wyplata<span style="color: #000066;">&#40;</span>kwota<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
				<span style="color: #ff0000;">'3'</span> <span style="color: #000066;">:</span> Saldo<span style="color: #000066;">&#40;</span>kwota<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
				<span style="color: #ff0000;">'4'</span> <span style="color: #000066;">:</span> <span style="color: #000066;">EXIT</span><span style="color: #000066;">;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					CLRSCR<span style="color: #000066;">;</span>
&nbsp;
					TEXTCOLOR<span style="color: #000066;">&#40;</span>LightGreen<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">37</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">6</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'-- MENU --'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">23</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">7</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'______________________________________'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					GOTOXY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">36</span><span style="color: #000066;">,</span> <span style="color: #0000ff;">9</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					TEXTCOLOR<span style="color: #000066;">&#40;</span>Yellow<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #000066;">&#40;</span><span style="color: #ff0000;">'Błędny wybór!'</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
					DELAY<span style="color: #000066;">&#40;</span><span style="color: #0000ff;">2000</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
&nbsp;
					weryfikacja <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #000000; font-weight: bold;">FALSE</span><span style="color: #000066;">;</span>
				<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
			<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
		<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">;</span>
<span style="color: #000000; font-weight: bold;">END</span><span style="color: #000066;">.</span></pre></td></tr></table></div>

<p style="text-align: justify;">Wypasione zadanie, symulujące działanie bankomatu. Program można zdecydowanie okroić, pozbywając się takich "dodatków" jak zmiana pozycji na ekranie <a href="http://www.freepascal.org/docs-html/rtl/crt/gotoxy.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/crt/gotoxy.html?referer=');">GOTOXY</a>, zmiana koloru <a href="http://www.freepascal.org/docs-html/rtl/crt/textcolor.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/crt/textcolor.html?referer=');">TEXTCOLOR</a> czy opóźnienie czasowe <a href="http://www.freepascal.org/docs-html/rtl/crt/delay.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/crt/delay.html?referer=');">DELAY</a>. Głównym założeniem tego zadania jest umiejętne operowanie pamięcią (tymczasową) w programie. Należy również zabezpieczyć właściwie sytuację, w której użytkownik chce wypłacić kwotę większą od tej zgromadzonej na koncie.</p>
</pre>
<p style="text-align: justify;">Wszystkie zadania z tej lekcji można pobrać: <a href="http://www.tynecki.pl/myown/Pascal/Lista_4.zip">tutaj</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=562</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RuPy 2009 &#8211; agenda (???)</title>
		<link>http://www.tynecki.pl/?p=513</link>
		<comments>http://www.tynecki.pl/?p=513#comments</comments>
		<pubDate>Wed, 04 Nov 2009 01:53:06 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[PPCG]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=513</guid>
		<description><![CDATA[Już za kilka dni odbędzie się, z niecierpliwością oczekiwana konferencja RuPy 2009! Organizatorzy dopracowują ostatnie szczegóły, a wszystko po to aby pewną stopą stanąć na wysokości zadania!
Ostatnie 3 tygodnie to dla nas prawdziwy sprawdzian cierpliwości, dyspozycyjności i pracy zespołowej. Jak pokazuje praktyka, zapał to nie wszystko! Czasami trzeba mieć też jaja ze stali&#8230; W dzisiejszym [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Już za kilka dni odbędzie się, z niecierpliwością oczekiwana konferencja <a href="http://rupy.eu/" onclick="pageTracker._trackPageview('/outgoing/rupy.eu/?referer=');">RuPy 2009</a>! Organizatorzy dopracowują ostatnie szczegóły, a wszystko po to aby pewną stopą stanąć na wysokości zadania!</p>
<p style="text-align: justify;">Ostatnie 3 tygodnie to dla nas prawdziwy sprawdzian cierpliwości, dyspozycyjności i pracy zespołowej. Jak pokazuje praktyka, zapał to nie wszystko! Czasami trzeba mieć też jaja ze stali&#8230; W dzisiejszym poście chciałbym przede wszystkim poruszyć temat agendy oraz konkursu, w którym do wygrania były darmowe wejściówki na konferencję, a także podzielić się wizją własnego konkursu, który zamierzam zrealizować w ciągu pierwszego dnia imprezy. Dorzucę do tego kilka kwestii organizacyjnych.</p>
<p style="text-align: justify;"><a href="http://rupy.eu/agenda/" onclick="pageTracker._trackPageview('/outgoing/rupy.eu/agenda/?referer=');">Tegoroczna agenda</a> należy do najbardziej interesujących, a zarazem &#8220;upchanych agend&#8221; z jakimi RuPy miał do czynienia. Ma to swoje dobre i złe strony, o czym świadczą komentarze na IRCu czy mikroblogach. Spora ilość wystąpień daje uczestnikowi możliwość elastycznej budowy ścieżki, po której będzie się poruszał w czasie imprezy. Staraliśmy się tak dobierać do siebie talki, aby trudność wyboru prelekcji w czasie trwania obu sesji zmniejszyć do minimum. Z pewnością zauważyliście też, że osierociliśmy wystąpienia o tematyce nieściśle związanej z konkretną technologią. Do takich talków należą głównie keynotey invited speakerów.</p>
<p><span id="more-513"></span></p>
<p style="text-align: justify;">W tym momencie chciałbym dodać, iż agenda nadal <strong>jest modyfikowana</strong>, a jej ostateczną formę każdy z nas pozna dzień przed RuPy. Dzieje się to głównie z powodu trudności i problemów osobistych, jakich masowo zaczęli doznawać nasi prelegenci. Do speakerów &#8220;stojących pod znakiem zapytania&#8221; należą: Olszówka, Franz, Borges i Rudolph. Pomimo naszych wysyłanych e-maili i prób nawiązania telefonicznego kontaktu, nie udało się ostatecznie ustalić czy ich prelekcje są zaklepane. Z pewnością rozczarowania nie ukrywają chłopaki od Rubyiego, a to z powodu nagłej decyzji <strong>Obiego Fernandeza</strong>, który nie wystąpi na tegorocznym RuPy. W zamian za to pojawi się jego kolega <strong>Durran Jordan</strong>. Tą sprawę badamy od wczoraj. Stosowny e-mail został już wysłany, dlatego też nadal mamy nadzieję, że Obie jednak powróci do pierwotnej decyzji i wystąpi na polskich ziemiach.</p>
<p style="text-align: justify;">Wspólnie z <a href="http://www.dworld.pl/" onclick="pageTracker._trackPageview('/outgoing/www.dworld.pl/?referer=');">DEVELOPERS WORLD</a>, miesiąc temu ogłosiliśmy <a href="http://www.dworld.pl/post/show/Konkurs_Strongly_Dynamic_Quiz" onclick="pageTracker._trackPageview('/outgoing/www.dworld.pl/post/show/Konkurs_Strongly_Dynamic_Quiz?referer=');">konkurs</a>, w którym nagrodą były dwie darmowe wejściówki na konferencję RuPy! Nie wiem, może zawinił słaby marketing, może pytania były za trudne, ale frekwencja nie wywarła na mnie większego wrażenia. Spodziewałem się bitwy i chyba się przeliczyłem :). Odpowiedzi, jakie zostały nadesłane były prawidłowe, aczkolwiek zróżnicowane. Selekcji dokonaliśmy na zasadzie wyboru najbardziej trafnych i precyzyjnych zgłoszeń, a następnie metodą losowania. Dziękuję chłopakom z <a href="http://www.python.org.pl/" onclick="pageTracker._trackPageview('/outgoing/www.python.org.pl/?referer=');">PPCG</a>: pigmejowi i salmonowi, za pomoc w analizie odpowiedzi! Zwycięzcami konkursu zostali: <strong>Maciej Dziardziel</strong> i <strong>Damian Nowak</strong>. Gratulujemy!</p>
<p style="text-align: justify;">W tym roku będziemy nagradzać uczestników konferencji koszulkami RuPy 2009 i prenumeratami magazynu <a href="http://lpmagazine.org/pl" onclick="pageTracker._trackPageview('/outgoing/lpmagazine.org/pl?referer=');">Linux+</a> (niestety, bida w budżecie piszczy &#8211;  nie wszyscy wyjadą w czarnym i pachnącym T-shirtcie). Tak, więc zdradzam sposoby na to, jak takie gadżety pozyskać! Metodą będzie &#8220;na pitchera&#8221;, nagrodzimy za ciekawe lighting talki. Jednakże wpadła mi do głowy również inna koncepcja. Każdy z Was, podczas rejestracji otrzyma papierową wersję agendy RuPy 2009, kupony na wyżywienie (lunch/obiad) i browar w <a href="http://www.moodclub.pl/" onclick="pageTracker._trackPageview('/outgoing/www.moodclub.pl/?referer=');">Mood Cafe</a>. Dodatkowo, na każdej z nich będzie wydrukowany kod, który weźmie udział w grupowym losowaniu gadżetów. W ciągu pierwszego dnia, na oczach uczestników wylosujemy ponad 50 kodów, których właściciele będą mogli zgłosić się do organizatorów po odbiór własnej koszulki (dysponujemy rozmiarami: M/L/XL). Dodam, że cały mechanizm będzie działać w Pythonie :)!</p>
<p style="text-align: justify;">Warto wspomnieć też o tym, że ilość miejsc dla uczestników RuPy 2009, w sektorze VIP klubu Mood Cafe, jest ograniczona (tylko dla 100 osób)! Dlatego proponuję szybkim krokiem podążać w stronę klubu i pamiętać by zabrać ze sobą identyfikatory! Pozostałe osoby również mają możliwość zabawy w klubie, w sektorze ogólnodostępnym. Jeżeli mogę coś zasugerować, bilard + butelka dobrego Whisky w gronie znajomych też świetnie się sprawdza (pozdrawiam <a href="http://twitter.com/HonzaKral" onclick="pageTracker._trackPageview('/outgoing/twitter.com/HonzaKral?referer=');">Honze</a> i kolegów z PPCG :) ).</p>
<p style="text-align: justify;">Jest to ostatnia notka o charakterze stricte organizacyjnym. Na RuPy 2009 będę brał udział głównie jako uczestnik (obserwator). Ma to związek z zadaniem, którego celem jest wyłapać niedociągnięcia w organizacji, a zarazem w pełni obiektywnie umożliwić mi podsumowanie imprezy. Mam nadzieję, że raport, który złożę zaraz po konferencji okaże się skuteczny i doda swoje dwa grosze do kolejnej edycji RuPy.</p>
<p style="text-align: justify;">Więcej informacji jak zwykle na stronie konferencji: <a href="http://rupy.eu" onclick="pageTracker._trackPageview('/outgoing/rupy.eu?referer=');">RuPy 2009</a>. Zachęcam również do śledzenia <a href="http://twitter.com/ptynecki" onclick="pageTracker._trackPageview('/outgoing/twitter.com/ptynecki?referer=');">mojego</a>, <a href="http://twitter.com/jakubpnowak" onclick="pageTracker._trackPageview('/outgoing/twitter.com/jakubpnowak?referer=');">Jakuba Nowaka</a> i <a href="http://twitter.com/RuPy" onclick="pageTracker._trackPageview('/outgoing/twitter.com/RuPy?referer=');">konferencyjnego</a> Twittera!</p>
<p style="text-align: justify;">Bezpiecznej drogi i do zobaczenia w Poznaniu!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=513</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Laborki z Pascala &#8211; Lista 2 i 3</title>
		<link>http://www.tynecki.pl/?p=319</link>
		<comments>http://www.tynecki.pl/?p=319#comments</comments>
		<pubDate>Sun, 01 Nov 2009 10:30:22 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[Free Pascal]]></category>
		<category><![CDATA[UwB]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=319</guid>
		<description><![CDATA[Wpadł mi do głowy pewien pomysł na to, aby regularnie udostępniać rozwiązania zadań (włącznie z krótką analizą problemu) z Podstaw Programowania. Chciałbym w ten sposób zachęcić Was do prezentacji własnego kodu, a przede wszystkim zarazić bakcylem programowania.
W związku z tym, dzisiaj przerobimy listę 2 i 3.
Laboratorium 2
Zadanie 1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
PROGRAM lista1_zad1&#40;OUTPUT&#41;;
&#160;
USES
	CRT;
&#160;
BEGIN
	CLRSCR;
&#160;
	WRITELN&#40;'       [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Wpadł mi do głowy pewien pomysł na to, aby regularnie udostępniać rozwiązania zadań (włącznie z krótką analizą problemu) z Podstaw Programowania. Chciałbym w ten sposób zachęcić Was do prezentacji własnego kodu, a przede wszystkim zarazić bakcylem programowania.</p>
<p style="text-align: justify;">W związku z tym, dzisiaj przerobimy listę 2 i 3.</p>
<h4 style="text-align: justify;"><span style="color: #000000;">Laboratorium 2</span></h4>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 1</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista1_zad1<span style="color: #009900;">&#40;</span>OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'                                    ,.,  '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">' /&quot;&quot;&quot;\      /&quot;&quot;&quot;\       /&quot;&quot;&quot;\      /&quot;&quot;&quot;\ '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">' |o o|      |0 0|       |o o|      |@ @| '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">' \ - /      \ U /       \ ~ /      \ = / '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'  |_|        |_|         |_|        |_|  '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'normalny  szczęśliwy  zakochany  po sesji'</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p><span id="more-319"></span></p>
<p style="text-align: justify;">To zadanie chyba nie wymaga szczególnego komentarza.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista1_zad2<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj dwie liczby rzeczywiste: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Suma: '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">+</span> b<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Różnica: '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">-</span> b<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Iloczyn: '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">*</span> b<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> b <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Nie dzielimy przez zero!'</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Iloraz: '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">/</span> b<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wczytujemy przy pomocy instrukcji <a href="http://www.freepascal.org/docs-html/rtl/system/read.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/read.html?referer=');">READ</a> (oddzielając spacją) dwie liczby rzeczywiste. Następnie, wykonujemy kolejno wyrażenia: sumy, różnicy, iloczynu oraz ilorazu dla tych liczb, uwzględniając sytuację, w której dzielnik jest zerem. Wyniki formatujemy, zaokrąglając do dwóch miejsc po przecinku.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 3</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista1_zad3<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	tempC <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj temperaturę (w Celsjuszach): '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>tempC<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Temperatura (w Farenheitach): '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1.8</span> <span style="color: #339933;">*</span> tempC<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">32</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wczytujemy przy pomocy instrukcji <a href="http://www.freepascal.org/docs-html/rtl/system/read.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/read.html?referer=');">READ</a> liczbę rzeczywistą &#8211; temperaturę wyrażoną w Celsjuszach &#8211; którą to w instrukcji <a href="http://www.freepascal.org/docs-html/rtl/system/writeln.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/writeln.html?referer=');">WRITELN</a> konwertujemy (przy pomocy wzoru) i przedstawiamy jako wynik, zaokrąglony do jednego miejsca po przecinku.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4 (a)</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista1_zad4_a<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	argm<span style="color: #339933;">,</span> war <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź argument funkcji: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>argm<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> argm &lt; <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		war <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">3</span> <span style="color: #339933;">*</span> argm
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>argm &gt;<span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000066;">AND</span> <span style="color: #009900;">&#40;</span>argm &lt; <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		war <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">2</span> <span style="color: #339933;">*</span> argm
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		war <span style="color: #339933;">:=</span> argm;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wartość funkcji: '</span><span style="color: #339933;">,</span> war<span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wczytujemy przy pomocy instrukcji <a href="http://www.freepascal.org/docs-html/rtl/system/read.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/read.html?referer=');">READ</a> liczbę całkowitą &#8211; argument naszej funkcji. W zależności od jej wartości, sprawdzanej w instrukcji warunkowej <a href="http://www.freepascal.org/docs-html/ref/refsu41.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu41.html?referer=');">IF &#8211; ELSE IF &#8211; ELSE</a>, wzór funkcji liniowej przybiera różne postacie. Na koniec wyprowadzamy wartość funkcji jako wynik działania.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4 (b)</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista1_zad4_b<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	argm<span style="color: #339933;">,</span> war <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź argument funkcji: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>argm<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> argm &lt; <span style="color: #339933;">-</span><span style="color: #cc66cc;">5</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		war <span style="color: #339933;">:=</span> <span style="color: #339933;">-</span>argm
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>argm &gt;<span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span> <span style="color: #000066;">AND</span> <span style="color: #009900;">&#40;</span>argm &lt; <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		war <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		war <span style="color: #339933;">:=</span> argm;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wartość funkcji: '</span><span style="color: #339933;">,</span> war<span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Zadanie analogiczne do podpunktu (a). Zmieniły się tylko przedziały w instrukcji warunkowej.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 5</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista1_zad5<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	a<span style="color: #339933;">,</span> b <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wprowadź współczynniki a i b: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> b <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Nie dzielimy przez zero!'</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Miejsce zerowe funkcji: '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span>b <span style="color: #339933;">/</span> a<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wczytujemy przy pomocy instrukcji <a href="http://www.freepascal.org/docs-html/rtl/system/read.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/read.html?referer=');">READ</a> (oddzielając spacją) dwie liczby rzeczywiste - współczynniki a i b naszej funkcji. Następnie, sprawdzamy czy przypadkiem b nie jest równe zeru. Jeżeli nie, obliczamy miejsce zerowe i wyprowadzamy wynik.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista1_zad6<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	a<span style="color: #339933;">,</span> b<span style="color: #339933;">,</span> c<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	p <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj długości boków a, b i c: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>a<span style="color: #339933;">,</span> b<span style="color: #339933;">,</span> c<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">IF</span> <span style="color: #009900;">&#40;</span>a &lt; b <span style="color: #339933;">+</span> c<span style="color: #009900;">&#41;</span> <span style="color: #000066;">AND</span> <span style="color: #009900;">&#40;</span>b &lt; a <span style="color: #339933;">+</span> c<span style="color: #009900;">&#41;</span> <span style="color: #000066;">AND</span> <span style="color: #009900;">&#40;</span>c &lt; b <span style="color: #339933;">+</span> a<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">THEN</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			p <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span>a <span style="color: #339933;">+</span> b <span style="color: #339933;">+</span> c<span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span>;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Pole trójkąta: '</span><span style="color: #339933;">,</span> <span style="color: #000066;">SQRT</span><span style="color: #009900;">&#40;</span>p <span style="color: #339933;">*</span> <span style="color: #009900;">&#40;</span>p <span style="color: #339933;">-</span> a<span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #009900;">&#40;</span>p <span style="color: #339933;">-</span> b<span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #009900;">&#40;</span>p <span style="color: #339933;">-</span> c<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">ELSE</span>
		<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Nie policzę tego!'</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wczytujemy przy pomocy instrukcji <a href="http://www.freepascal.org/docs-html/rtl/system/read.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/read.html?referer=');">READ</a> (oddzielając spacją) trzy liczby całkowite - boki trójkąta: a, b i c. Następnie sprawdzamy ich wartości względem warunku istnienia trójkąta (dowolnego). Jeżeli z podanych wartości możemy zbudować figurę, korzystamy ze <a href="http://pl.wikipedia.org/wiki/Wz%C3%B3r_Herona" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Wz_C3_B3r_Herona?referer=');">wzoru Herona</a>. Pierwiastek obliczamy przy pomocy funkcji wbudowanej <a href="http://www.freepascal.org/docs-html/rtl/system/sqrt.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/sqrt.html?referer=');">SQRT</a>.</p>
<h4 style="text-align: justify;"><span style="color: #000000;">Laboratorium 3</span></h4>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 1</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad1<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	x<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	liczba <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Ile liczb wprowadzisz: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>ilosc<span style="color: #009900;">&#41;</span>;
&nbsp;
	x <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> x &lt; ilosc <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			x <span style="color: #339933;">:=</span> x <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> liczba<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>liczba <span style="color: #339933;">*</span> liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>liczba <span style="color: #339933;">*</span> liczba <span style="color: #339933;">*</span> liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">WRITELN</span>
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wczytujemy przy pomocy instrukcji <a href="http://www.freepascal.org/docs-html/rtl/system/read.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/rtl/system/read.html?referer=');">READ</a> liczbę naturalną - odgrywającą rolę górnej granicy ilości obrotów pętli (<a href="http://pl.wikipedia.org/wiki/Inkrementacja" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Inkrementacja?referer=');">inkrementacja</a>). Następnie, w ciele pętli pytamy użytkownika o liczbę rzeczywistą, na podstawie której mamy wykonać operacje. Wyprowadzamy jej pozycję w ciągu, liczbę i jej kwadrat oraz sześcian, formatując wyniki wyrażeń do dwóch miejsc po przecinku.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 2</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad2<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	liczba <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	licznik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BOOLEAN</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	x <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">TRUE</span>;
	licznik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> x <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">TRUE</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
			licznik <span style="color: #339933;">:=</span> licznik <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> liczba <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				x <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">FALSE</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> licznik<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> liczba<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> liczba <span style="color: #339933;">*</span> liczba<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> liczba <span style="color: #339933;">*</span> liczba <span style="color: #339933;">*</span> liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">W przypadku tego zadania, nie ustalamy odgórnie długości ciągu na podstawie wartości jaką początkowo wprowadza użytkownik. Umożliwiamy mu wykonywanie obliczeń (na liczbach całkowitych), dopóty dopóki nie poda liczby 0, która to przerywa działanie pętli. Warto też uwzględnić, że podczas przerwania pętli program nie wykona obliczeń dla wartości 0. Działanie pętli <a href="http://www.freepascal.org/docs-html/ref/refsu44.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu44.html?referer=');">WHILE .. DO</a> w tym przykładzie bazuje na typie danych <a href="http://www.freepascal.org/docs-html/ref/refsu5.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu5.html?referer=');">BOOLEAN</a>.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 3</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad3<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	liczba <span style="color: #339933;">:</span> EXTENDED;
	licznik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BOOLEAN</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	x <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">TRUE</span>;
	licznik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> x <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">TRUE</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
			licznik <span style="color: #339933;">:=</span> licznik <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> liczba <span style="color: #339933;">=</span> <span style="color: #cc66cc;">10000</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> licznik<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> liczba<span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>liczba <span style="color: #339933;">*</span> liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>liczba <span style="color: #339933;">*</span> liczba <span style="color: #339933;">*</span> liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
					x <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">FALSE</span>;
				<span style="color: #000000; font-weight: bold;">END</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> licznik<span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> liczba<span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>liczba <span style="color: #339933;">*</span> liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span>liczba <span style="color: #339933;">*</span> liczba <span style="color: #339933;">*</span> liczba<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">To zadanie jest niemalże identyczne jak powyższe, z tym że tutaj operujemy na bardzo dużym przedziale liczb EXTENDED. Dlatego, że działanie pętli zakończy się w momencie jak użytkownik poda liczbę 10000, dla której to musimy wykonać obliczenia (kwadrat i sześcian tej liczby) i dopiero wtedy zakończyć działanie programu.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 4</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad4<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BOOLEAN</span>;
	znak <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">CHAR</span>;
	licznik <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	x <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">TRUE</span>;
	licznik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> x <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">TRUE</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj znak: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READLN</span><span style="color: #009900;">&#40;</span>znak<span style="color: #009900;">&#41;</span>;
&nbsp;
			licznik <span style="color: #339933;">:=</span> licznik <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> znak <span style="color: #339933;">=</span> <span style="color: #ff0000;">'*'</span> <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					<span style="color: #000066;">WRITELN</span>;
					<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Ilość znaków w ciągu: '</span><span style="color: #339933;">,</span> licznik <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>;
					x <span style="color: #339933;">:=</span> <span style="color: #000000; font-weight: bold;">FALSE</span>;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wczytujemy od użytkownika ciąg znaków, do momentu aż zostanie wprowadzona *, która powoduje zakończenie działania pętli oraz wypisanie łącznej sumy wprowadzonych znaków (nie uwzględniając gwiazdki).</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 5</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad5<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	ilosc<span style="color: #339933;">,</span> licznik<span style="color: #339933;">,</span> pozycja <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	liczba<span style="color: #339933;">,</span> max <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Ile liczb chcesz wprowadzić: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>ilosc<span style="color: #009900;">&#41;</span>;
&nbsp;
	licznik <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
	max <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">0</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> licznik &lt; ilosc <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			licznik <span style="color: #339933;">:=</span> licznik <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj liczbę: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>liczba<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> liczba &gt; max <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000000; font-weight: bold;">BEGIN</span>
					max <span style="color: #339933;">:=</span> liczba;
					pozycja <span style="color: #339933;">:=</span> licznik;
				<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Liczba: '</span><span style="color: #339933;">,</span> max<span style="color: #339933;">,</span> <span style="color: #ff0000;">', Numer w ciągu: '</span><span style="color: #339933;">,</span> pozycja<span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wczytujemy od użytkownika liczbę, która będzie odgrywać rolę górnej granicy ilości obrotów pętli. W ciele tej pętli, pobieramy ciąg liczb, na podstawie którego, wyznaczamy maksymalną wartość oraz jej pozycję w tym ciągu. Wykonujemy to przy pomocy zmiennej pomocniczej max (zerowanej w głównym ciele programu), która za każdym obrotem pętli jest porównywana z nowo wprowadzoną liczbą. Jeżeli warunek nierówności jest spełniony, dla zmiennej max przypisywana jest nowa wartość i zapamiętywana jej pozycja.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6 (a)</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad6_a<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	x<span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> war<span style="color: #339933;">,</span> r<span style="color: #339933;">,</span> ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Ilość punktów do sprawdzenia: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>ilosc<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj promień okręgu: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>r<span style="color: #009900;">&#41;</span>;
&nbsp;
	r <span style="color: #339933;">:=</span> r <span style="color: #339933;">*</span> r;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> ilosc &gt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj współrzędne x i y punktu: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y<span style="color: #009900;">&#41;</span>;
&nbsp;
			ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>;			
			war <span style="color: #339933;">:=</span> <span style="color: #009900;">&#40;</span>x <span style="color: #339933;">*</span> x<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span>y <span style="color: #339933;">*</span> y<span style="color: #009900;">&#41;</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> war <span style="color: #339933;">=</span> r <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Punkt: ('</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> <span style="color: #ff0000;">') leży na obręczy okręgu'</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> war &lt; r <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Punkt: ('</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> <span style="color: #ff0000;">') leży wewnątrz okręgu'</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Punkt: ('</span><span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">,</span> <span style="color: #ff0000;">') leży na zewnątrz okręgu'</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">W celu sprawdzenia czy dany punkt leży nad, pod lub na obręczy okręgu (o środku (0, 0)), musimy zastosować nierówności (i porównanie) pomiędzy kwadratem promienia okręgu, a sumą kwadratów współrzędnych tego punktu. Wynik końcowy zależny jest od wyniku instrukcji warunkowej.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 6 (b)</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad6_b<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	ilosc <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">INTEGER</span>;
	F<span style="color: #339933;">,</span> x<span style="color: #339933;">,</span> y <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">REAL</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Ilość punktów do sprawdzenia: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>ilosc<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj wartość funkcji: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>F<span style="color: #009900;">&#41;</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> ilosc &gt; <span style="color: #cc66cc;">0</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Podaj współrzędne x i y punktu: '</span><span style="color: #009900;">&#41;</span>;
			<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>x<span style="color: #339933;">,</span> y<span style="color: #009900;">&#41;</span>;
&nbsp;
			ilosc <span style="color: #339933;">:=</span> ilosc <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
			<span style="color: #000066;">WRITELN</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">IF</span> F <span style="color: #339933;">=</span> y <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Punkt: ('</span><span style="color: #339933;">,</span> x<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">') leży na prostej'</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span> <span style="color: #000000; font-weight: bold;">IF</span> F &lt; y <span style="color: #000000; font-weight: bold;">THEN</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Punkt: ('</span><span style="color: #339933;">,</span> x<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">') leży nad prostą'</span><span style="color: #009900;">&#41;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">ELSE</span>
				<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Punkt: ('</span><span style="color: #339933;">,</span> x<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">', '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">') leży pod prostą'</span><span style="color: #009900;">&#41;</span>;
		<span style="color: #000000; font-weight: bold;">END</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Ten kod jest bardzo podobny do rozwiązania powyższego zadania, z tym że, tutaj sprawdzamy pozycję punktu względem prostej (stałej). Wystarczy tylko sprawdzić nierówności w instrukcji warunkowej, pomiędzy wartością prostej, a wartością podanego punktu. Dodatkowo, tutaj operujemy na liczbach rzeczywistych.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 7 (a)</span></p>
</pre>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad7_a<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	x <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	y <span style="color: #339933;">:</span> EXTENDED;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Policzę silnię z liczby: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>x<span style="color: #009900;">&#41;</span>;
&nbsp;
	y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;
	y <span style="color: #339933;">:=</span> y <span style="color: #339933;">*</span> x;
&nbsp;
	<span style="color: #000000; font-weight: bold;">WHILE</span> x &gt; <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">DO</span>
		<span style="color: #000000; font-weight: bold;">BEGIN</span>
			x <span style="color: #339933;">:=</span> x <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1</span>;
			y <span style="color: #339933;">:=</span> y <span style="color: #339933;">*</span> x;
		<span style="color: #000000; font-weight: bold;">END</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Wprowadzamy wartość liczby naturalnej, na podstawie której liczona jest <a href="http://pl.wikipedia.org/wiki/Silnia" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Silnia?referer=');">silnia</a>. Zazwyczaj algorytm silni bazuje na <a href="http://pl.wikipedia.org/wiki/Rekurencja" onclick="pageTracker._trackPageview('/outgoing/pl.wikipedia.org/wiki/Rekurencja?referer=');">rekurencji</a>, jednak na tym poziomie wiedzy, musimy zbudować go przy użyciu samej pętli. Pomysł jaki należało wykorzystać w przypadku pętli <a href="http://www.freepascal.org/docs-html/ref/refsu44.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu44.html?referer=');">WHILE .. DO</a> polega na tym, by przy każdym jej obrocie zmniejszać liczbę wejściową o jeden (dekrementacja) i w takiej postaci wymnażać z iloczynem wszystkich, kolejnych liczb dodatnich.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 7 (b)</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad7_b<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	x<span style="color: #339933;">,</span> i<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	y <span style="color: #339933;">:</span> EXTENDED;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Policzę silnię z liczby: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>x<span style="color: #009900;">&#41;</span>;
&nbsp;
	y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">FOR</span> i <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span> <span style="color: #000000; font-weight: bold;">TO</span> x <span style="color: #000000; font-weight: bold;">DO</span>
		y <span style="color: #339933;">:=</span> y <span style="color: #339933;">*</span> i;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Rozwiązanie bazujące na pętli <a href="http://www.freepascal.org/docs-html/ref/refsu42.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu42.html?referer=');">FOR .. TO .. DO</a> wydaje się być prostsze do zrozumienia i szybsze do zaimplementowania. Dla określonego przedziału wykonujemy mnożenie kolejnych liczb z tego przedziału, w efekcie końcowym otrzymując wynik.</p>
<p style="text-align: justify;"><span style="color: #003366;">Zadanie 7 (c)</span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
</pre></td><td class="code"><pre class="pascal" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">PROGRAM</span> lista2_zad7_c<span style="color: #009900;">&#40;</span>INPUT<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">USES</span>
	CRT;
&nbsp;
<span style="color: #000000; font-weight: bold;">VAR</span>
	x<span style="color: #339933;">,</span> i <span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">BYTE</span>;
	y <span style="color: #339933;">:</span> EXTENDED;
&nbsp;
<span style="color: #000000; font-weight: bold;">BEGIN</span>
	CLRSCR;
&nbsp;
	<span style="color: #000066;">WRITE</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Policzę silnię z liczby: '</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000066;">READ</span><span style="color: #009900;">&#40;</span>x<span style="color: #009900;">&#41;</span>;
&nbsp;
	y <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;
	i <span style="color: #339933;">:=</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">REPEAT</span>
		y <span style="color: #339933;">:=</span> y <span style="color: #339933;">*</span> i;
		i <span style="color: #339933;">:=</span> i <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">UNTIL</span>
		i &gt; x;
&nbsp;
	<span style="color: #000066;">WRITELN</span>;
&nbsp;
	<span style="color: #000066;">WRITELN</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Wynik: '</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">END</span>.</pre></td></tr></table></div>

<p style="text-align: justify;">Ostatnie rozwiązanie wykorzystuje instrukcję <a href="http://www.freepascal.org/docs-html/ref/refsu43.html" onclick="pageTracker._trackPageview('/outgoing/www.freepascal.org/docs-html/ref/refsu43.html?referer=');">REPEAT .. UNTIL</a>. Koncepcja jest podobna  do przykładu (a), jednak w tym wypadku najpierw wykonujemy iloczyn liczb, stosujemy inkrementację, a następnie sprawdzamy warunek pętli.</p>
<p>Rozwiązania z listy 4 pojawią się w najbliższy wtorek.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=319</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RuPy 2009 &#8211; powiew nadziei i wszystko się klei</title>
		<link>http://www.tynecki.pl/?p=271</link>
		<comments>http://www.tynecki.pl/?p=271#comments</comments>
		<pubDate>Wed, 07 Oct 2009 09:42:14 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[PPCG]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=271</guid>
		<description><![CDATA[Dużo dobrego dzieje się w organizacji tegorocznej edycji konferencji RuPy. Dowodzi tego kolejna notka, optymistycznie zapowiadająca to listopadowe wydarzenie.
Wielokrotnie wspominałem o kryzysie jaki dotknął RuPy 2009. Jak się okazuje, nic nie trwa wiecznie, a cierpliwość się opłaca. Do grona sponsorów imprezy dołączyły dwie kolejne firmy: NG Logic i Lunar Logic Polska. Co więcej prowadzimy aktualnie [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Dużo dobrego dzieje się w organizacji tegorocznej edycji konferencji RuPy. Dowodzi tego kolejna notka, optymistycznie zapowiadająca to listopadowe wydarzenie.</p>
<p style="text-align: justify;">Wielokrotnie wspominałem o kryzysie jaki dotknął RuPy 2009. Jak się okazuje, nic nie trwa wiecznie, a cierpliwość się opłaca. Do grona sponsorów imprezy dołączyły dwie kolejne firmy: <a title="NG Logic" href="http://www.nglogic.com/" target="_self" onclick="pageTracker._trackPageview('/outgoing/www.nglogic.com/?referer=');">NG Logic</a> i <a title="Lunar Logic Polska" href="http://lunarlogicpolska.com/" target="_self" onclick="pageTracker._trackPageview('/outgoing/lunarlogicpolska.com/?referer=');">Lunar Logic Polska</a>. Co więcej prowadzimy aktualnie negocjację z innymi firmami i fundacjami, wykazującymi chęci zaangażowania się w promocję i pomoc finansową dla konferencji.</p>
<p style="text-align: justify;">Idąc tropem pozytywnych wiadomości: jest już pełna lista prelegentów! Dokładnie <a title="RuPy Speakers" href="http://rupy.eu/speakers/" target="_self" onclick="pageTracker._trackPageview('/outgoing/rupy.eu/speakers/?referer=');">20 talków</a> (tyle co przewidywaliśmy) zostanie wygłoszonych na tegorocznym RuPy. Warto też w tym miejscu zasygnalizować, że spora ich część zostanie poprowadzona przez znane nam postacie ze świata Pythona, Rubiego czy innych nowoczesnych technologii. Bardzo pocieszającym faktem jest to, że prawie połowę z tych prelekcji poprowadzą Polacy! Jest to dla nas miłe zaskoczenie, ponieważ początkowo obawialiśmy się małego zaangażowania rodaków w tym wydaniu imprezy.</p>
<p style="text-align: justify;">Skuteczny marketing, rzetelność Partnerów Medialnych oraz interesująca lista talków przekładają się na ilość zarejestrowanych osób. Mogę zdradzić, że w tym momencie pojawi się już ponad 150 uczestników imprezy, a ugościć jesteśmy w stanie jeszcze drugie tyle!</p>
<p style="text-align: justify;">A teraz niespodzianka, którą celowo zostawiłem na deser. Wiadomo, że w <a title="Polish Python Coders Group" href="http://www.python.org.pl/" target="_self" onclick="pageTracker._trackPageview('/outgoing/www.python.org.pl/?referer=');">PPCG</a> są osoby, które od początku działalności w projekcie, wykazują się ponad przeciętnym zaangażowaniem, wiedzą i czasem, budując to Polskie Community Pythona. W związku z tym postanowiłem z pośród najbardziej widocznych postaci, wybrać trzy, które otrzymają darmowe wejścia (z wyżywieniem i zestawem gadżetów) na RuPy 2009. Są to mianowicie:</p>
<p><span id="more-271"></span></p>
<ul style="text-align: justify;">
<li><strong>Jędrzej &#8220;Pigmej&#8221; Nowak</strong><br />
Zaprojektował system do zarządzania treścią dla portalu PPCG: Pigmej CMS, który od ponad roku służy nam jako część platformy projektu. Jędrzej planuje wydanie jego kolejnej wersji, jako system w pełni otwarty. Jest również jednym z developerów bota IRCowego: <a title="Konfident" href="http://www.python.org.pl/irc.html" target="_self" onclick="pageTracker._trackPageview('/outgoing/www.python.org.pl/irc.html?referer=');">Konfident</a>, ułatwiającego nam komunikację pomiędzy trzema głównymi częściami projektu. Włożył duży wkład w pozyskanie głównego sponsora dla projektu PPCG &#8211; firmę <a title="DMTEC" href="http://www.dmtecgroup.eu/" target="_self" onclick="pageTracker._trackPageview('/outgoing/www.dmtecgroup.eu/?referer=');">DMTEC</a>.</li>
</ul>
<ul style="text-align: justify;">
<li><strong>Marek &#8220;red_ag&#8221; Skiba</strong><br />
Administrator głównego serwera PPCG (również Forum). Jest odpowiedzialny za wszelkie migracje, integracje oraz konfiguracje systemów, skryptów sieciowych, tworzenie backupów i zadań, które powodują, że platforma projektu nigdy jeszcze tak skutecznie nie funkcjonowała. Marek jest głównym pomysłodawcą <a title="Jabber PPCG" href="http://forum.python.org.pl/index.php?topic=643.0" target="_self" onclick="pageTracker._trackPageview('/outgoing/forum.python.org.pl/index.php?topic=643.0&amp;referer=');">serwera Jabbera</a> w domenie python.org.pl. Pozyskał również pierwszego sponsora, oferującego hosting &#8211; firmę <a title="Maxnet" href="http://maxnet.com.pl/" target="_self" onclick="pageTracker._trackPageview('/outgoing/maxnet.com.pl/?referer=');">Maxnet</a>.</li>
</ul>
<ul style="text-align: justify;">
<li><strong>Piotr &#8220;Husio&#8221; Husiatyński</strong><br />
Główny developer jednego z pierwszych edycji Konfidenta. Jest najbardziej skutecznie udzielającą się osobą na Forum projektu. Posiada duży wkład w kształt PPCG, często dzieląc się słusznymi uwagami i sugestiami, dot. spraw technicznych i organizacyjnych projektu. Piotr prowadzi również <a title="Wiki Python" href="http://wiki.python.org.pl" target="_self" onclick="pageTracker._trackPageview('/outgoing/wiki.python.org.pl?referer=');">Wiki Pythona</a>, które z biegiem czasu z pewnością przerodzi się w bogate i różnorodne źródło wiedzy.</li>
</ul>
<p style="text-align: justify;">W gronie naszej paczki, jest jeszcze kilka osób, które równie skutecznie angażują się w rozwój i przyszłość tego projektu. Gdybym tylko posiadał większe możliwości oraz środki, z pewnością lista osób wyszczególnionych byłaby dłuższa.</p>
<p style="text-align: justify;">Uwaga! W najbliższym czasie zorganizujemy wspólnie z <a title="JAVA exPress" href="http://www.javaexpress.pl/" target="_self" onclick="pageTracker._trackPageview('/outgoing/www.javaexpress.pl/?referer=');">JAVA exPress</a> konkurs teoretyczno-programistyczny, na którym to spośród osób przechodzących do głównego etapu, wylosujemy dwie, które otrzymają wejściówki na RuPy 2009 :)! Niestety nic więcej na ten temat powiedzieć nie mogę, jak tylko życzyć powodzenia.</p>
<p style="text-align: justify;">Więcej informacji jak zwyklę dostepnych będzie na stronie konferencji: <a title="RuPy 2009" href="http://rupy.eu/speakers/" target="_self" onclick="pageTracker._trackPageview('/outgoing/rupy.eu/speakers/?referer=');">RuPy 2009</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=271</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>RuPy 2009 &#8211; nastąpiło otwarcie rejestracji</title>
		<link>http://www.tynecki.pl/?p=257</link>
		<comments>http://www.tynecki.pl/?p=257#comments</comments>
		<pubDate>Tue, 22 Sep 2009 22:41:55 +0000</pubDate>
		<dc:creator>Katharsis</dc:creator>
				<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.tynecki.pl/?p=257</guid>
		<description><![CDATA[Wszystko zaczyna nabierać pozytywnych wibracji, a struktura konferencji wyrazistych kształtów. Otóż kilka dni temu ruszyliśmy z rejestracją! Do dnia 6 listopada każdy z Was ma możliwość zgłoszenia swojego uczestnictwa na tegoroczną edycję RuPy, przy pomocy tego formularza.
Chciałbym zwrócić uwagę na 3 rzeczy związane z powyższym. Pierwsza to cena konferencji, która z biegiem kolejnych tygodni wzrasta! [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Wszystko zaczyna nabierać pozytywnych wibracji, a struktura konferencji wyrazistych kształtów. Otóż kilka dni temu ruszyliśmy z rejestracją! Do dnia 6 listopada każdy z Was ma możliwość zgłoszenia swojego uczestnictwa na tegoroczną edycję RuPy, przy pomocy tego <a title="Formularz rejestracyjny" href="http://gik.wufoo.com/forms/rupy09-registration/" target="_self" onclick="pageTracker._trackPageview('/outgoing/gik.wufoo.com/forms/rupy09-registration/?referer=');">formularza</a>.</p>
<p style="text-align: justify;">Chciałbym zwrócić uwagę na 3 rzeczy związane z powyższym. Pierwsza to cena konferencji, która z biegiem kolejnych tygodni wzrasta! Dlatego też sugeruję by rejestracji dokonywać jak najszybciej, również z powodu ograniczonej ilości miejsc (nieoficjalnie 300). Druga, to często pomijana informacja, którą chcę podkreślić &#8211; <span style="text-decoration: underline;">rezerwacja miejsca jest równoznaczna z datą, w której dokonujemy wpłaty</span>. I rzecz ostatnia dotyczy waluty, w jakiej wykonujemy przelew. Uczestnicy z Polski mają możliwość transferowania w polskich złotych, a w pozostałych przypadkach jest to Euro.</p>
<p style="text-align: justify;">Co więcej znane jest już dokładne miejsce, w którym odbędzie się impreza. W związku z tym, że tegoroczny kapitał imprezy nie jest wystarczający do wynajmu np. kina Apollo, zdecydowaliśmy się na ponowną współpracę z władzami <strong>Uniwersytetu im. Adama Mickiewicza w Poznaniu</strong>, na <strong>Wydziale Matematyki i Informatyki</strong>. Konferencja odbędzie się dokładnie w tym samym miejscu, co zeszłoroczne edycję. Będziemy mieli do dyspozycji dwie aule (ponad 200 i 100 osobowe), gdzie odbędą się wszystkie prelekcje.</p>
<p style="text-align: justify;">Na zakończenie mogę dodać, że strona jest sukcesywnie aktualizowana. Dlatego też zainteresowanych kwestią zakwaterowania czy dojazdu, zapraszam do działu <a title="LOCATION" href="http://rupy.eu/location/" target="_self" onclick="pageTracker._trackPageview('/outgoing/rupy.eu/location/?referer=');">LOCATION</a>. W niektórych hotelach będą przewidziane rabaty dla uczestników konferencji RuPy 2009.</p>
<p style="text-align: justify;">Więcej informacji na stronie <a title="RuPy 2009" href="http://rupy.eu/" target="_self" onclick="pageTracker._trackPageview('/outgoing/rupy.eu/?referer=');">RuPy 2009</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tynecki.pl/?feed=rss2&amp;p=257</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
