17:08 <@d0ubl3_j> Dzisiaj bedzie mowa o instrukcjach warunkowych, petlach itp w delphi
17:08 <@d0ubl3_j> a wiec kto ma delphi niech je teraz odpali
17:08 <@d0ubl3_j> hmm chyba tez powinnienem je odpalic :PP
17:10 <@d0ubl3_j> dobra najpierw zajmiemy sie instrukjca IF
17:10 <@d0ubl3_j> w delphi jak i w pascalu ma ona postac IF warunek THEN
17:10 <@d0ubl3_j> a wiec np:
17:11 <@d0ubl3_j> program Project2;
17:11 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:11 <@d0ubl3_j> uses
17:11 <@d0ubl3_j> SysUtils;
17:11 <@d0ubl3_j> var
17:11 <@d0ubl3_j> a : byte;
17:11 <@d0ubl3_j> begin
17:11 <@d0ubl3_j> a:= 5;
17:11 <@d0ubl3_j> if(a = 5)then
17:11 <@d0ubl3_j> writeln('rowne!');
17:11 <@d0ubl3_j> end.
17:11 <@d0ubl3_j> instrukcja sprawdza czy zmienna a jest rowna 5
17:12 <@d0ubl3_j> wczesniej dalismy przypisanie tej zmiennej wartosci 5 ;>
17:12 <@d0ubl3_j> a wiec napewno sie rowna
17:12 <@d0ubl3_j> instrukcja (dowolna) znajdujac sie po instrukcji then
17:12 <@d0ubl3_j> bedzie wykonywana jezeli warunek jest spelniony
17:12 <@d0ubl3_j> kazda kolejna po niej bedzie juz instrukcja nie dotyczaca if
17:13 <@d0ubl3_j> np
17:13 <@d0ubl3_j> program Project2;
17:13 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:13 <@d0ubl3_j> uses
17:13 <@d0ubl3_j> SysUtils;
17:13 <@d0ubl3_j> var
17:13 <@d0ubl3_j> a : byte;
17:13 <@d0ubl3_j> begin
17:13 <@d0ubl3_j> a:= 5;
17:13 <@d0ubl3_j> if(a = 5)then
17:13 <@d0ubl3_j> writeln('rowne!');
17:13 <@d0ubl3_j> writeln('To sie pokaze bez wzgledu na wartosc zmiennej a');
17:13 <@d0ubl3_j> end.
17:13 <@d0ubl3_j> druga instrukcja writeln
17:13 <@d0ubl3_j> wykona sie nawet jezeli zmienna a bedzie wynosci 6
17:14 <@d0ubl3_j> sprawdzcie przypisujac do zmiennej a dowolna inna liczbe
17:14 <@d0ubl3_j> z zakresu 0..255
17:14 <@d0ubl3_j> nie zmieniajac warunku
17:14 < Tenoriuss> ;)
17:14 <@d0ubl3_j> ktos ma jakies pytania?:)
17:15 <@d0ubl3_j> ok lecimy dalej hehe
17:15 <@d0ubl3_j> teraz jezeli mamy taka postac instrukcji warunkowej to mozemy wykonac tylko jedna instrukcje
17:15 <@d0ubl3_j> a co jezeli chcemy wykonac ich 5 albo wiecej?
17:15 <@d0ubl3_j> musimy skorzystac z blokoow begin i end;
17:16 <@d0ubl3_j> wygalda to tak:
17:16 <@d0ubl3_j> program Project2;
17:16 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:16 <@d0ubl3_j> uses SysUtils;
17:16 <@d0ubl3_j> var
17:16 <@d0ubl3_j> a : byte;
17:16 <@d0ubl3_j> begin
17:16 <@d0ubl3_j> a:= 5;
17:16 <@d0ubl3_j> if(a = 5)then
17:16 <@d0ubl3_j> begin
17:16 <@d0ubl3_j> writeln('rowne!');
17:17 <@d0ubl3_j> writeln('druga instrukcja w if');
17:17 <@d0ubl3_j> writeln('trzecia instrukcja w if');
17:17 <@d0ubl3_j> writeln('nastepna z kolei ;pp');
17:17 <@d0ubl3_j> end;
17:17 <@d0ubl3_j> writeln('To sie pokaze bez wzgledu na wartosc zmiennej a');
17:17 <@d0ubl3_j> end.
17:17 <@d0ubl3_j> dzieki takiemu zastosowaniu mozemy wykonac kilka instrukcji w warunku
17:17 <@d0ubl3_j> ale instrukcja if ma jeszcze jedna fajna dodatkowa instrukcje
17:17 <@d0ubl3_j> mowie o else teraz
17:18 <@d0ubl3_j> dzieki temu mozemy wykonac cos co nie jest spelnieniem warunku
17:19 <@d0ubl3_j> czas na przyklad ;>
17:19 <@d0ubl3_j> program Project2;
17:19 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:19 <@d0ubl3_j> uses
17:19 <@d0ubl3_j> SysUtils;
17:19 <@d0ubl3_j> var
17:19 <@d0ubl3_j> a : byte;
17:19 <@d0ubl3_j> begin
17:19 <@d0ubl3_j> a:= 5;
17:19 <@d0ubl3_j> if(a = 5)then
17:19 <@d0ubl3_j> begin
17:20 <@d0ubl3_j> writeln('rowne!');
17:20 <@d0ubl3_j> writeln('druga instrukcja w if');
17:20 <@d0ubl3_j> writeln('trzecia instrukcja w if');
17:20 <@d0ubl3_j> writeln('nastepna z kolei ;pp');
17:20 <@d0ubl3_j> end
17:20 <@d0ubl3_j> else
17:20 <@d0ubl3_j> begin
17:20 <@d0ubl3_j> writeln('jezeli a jest rozne niz 5 to pokaz ta informacje');
17:20 <@d0ubl3_j> end;
17:20 <@d0ubl3_j> writeln('To sie pokaze bez wzgledu na wartosc zmiennej a');
17:20 <@d0ubl3_j> end.
17:20 <@d0ubl3_j> teraz wystarczy zmiennej a dac wartosc np 10
17:20 <@d0ubl3_j> i odpalic ponownie program ;>
17:20 <@d0ubl3_j> i zobaczycie co sie stanie
17:20 <@d0ubl3_j> jakies pytania?
17:20 <@d0ubl3_j> esh
17:20 <@d0ubl3_j> wlasnie teraz musi byc split --;
17:20 < Tenoriuss> wszystko wiem :D
17:20 <@d0ubl3_j> kiedy ja mowie :PP
17:20 <@d0ubl3_j> hehehe
17:21 <@d0ubl3_j> Tenoriuss: fajnie wiedziec ze jest jedna osoba ktorej nie cza tlumaczyc podstaw delphi ;>>>>>
17:21 < Tenoriuss> :D:D:D
17:21 < Tenoriuss> dokladnie od 5 lat programuje
17:21 <@d0ubl3_j> no to tak jak ja ;>
17:21 < Tenoriuss> te instrukcje stosuje na codzien :)
17:22 < Tenoriuss> najbardziej z tych wszystkich jezykow programowania lubie delphi
17:22 < Tenoriuss> pascal
17:22 < Tenoriuss> w sumie :)
17:22 <@d0ubl3_j> ;>
17:22 <@d0ubl3_j> ok wiec wracamy dalej do if ;>
17:23 <@d0ubl3_j> jezeli sie przekonaliscie dziala tak jak mowilem :PP
17:23 <@d0ubl3_j> w ten sposoob mozemy rozgalezic nasz program
17:23 <@d0ubl3_j> w zaleznosci od warunku
17:23 <@d0ubl3_j> ofc warunek sami okreslamy
17:24 <@d0ubl3_j> mamy jeszcze mozliwosc stosowanie przy warunkach roznych instrukcji
17:24 <@d0ubl3_j> jak NOT AND OR ;>
17:24 <@d0ubl3_j> sa to instrukcje znane prawie wszystkim
17:24 <@d0ubl3_j> spotykane w informatyce
17:24 <@d0ubl3_j> NOT to jest negacja logiczna
17:25 <@d0ubl3_j> AND to jest koniunkcja?:P
17:25 <@d0ubl3_j> tego nie pamietam z matematyki :PP
17:25 <@d0ubl3_j> jakos sie to tam zwalo :p
17:25 <@d0ubl3_j> no i OR jest to logiczne LUB
17:25 <@d0ubl3_j> NIE, I oraz LUB
17:25 <@d0ubl3_j> takie cos jest w matematyce
17:25 <@d0ubl3_j> i wiec mamy to tutaj
17:26 <@d0ubl3_j> jezeli mamy jakos warunek to mozemy go zanegowac korzytajc z NOT
17:26 <@d0ubl3_j> np
17:26 <@d0ubl3_j> program Project2;
17:26 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:26 <@d0ubl3_j> uses
17:26 <@d0ubl3_j> SysUtils;
17:26 <@d0ubl3_j> var
17:26 <@d0ubl3_j> a : byte;
17:26 <@d0ubl3_j> begin a:= 5;
17:26 <@d0ubl3_j> if not(a = 5)then
17:26 <@d0ubl3_j> begin
17:26 <@d0ubl3_j> writeln('rowne!');
17:26 <@d0ubl3_j> writeln('druga instrukcja w if');
17:26 <@d0ubl3_j> writeln('trzecia instrukcja w if');
17:26 <@d0ubl3_j> writeln('nastepna z kolei ;pp');
17:26 <@d0ubl3_j> end
17:26 <@d0ubl3_j> else
17:26 <@d0ubl3_j> begin
17:26 <@d0ubl3_j> writeln('jezeli a jest rozne niz 5 to pokaz ta informacje');
17:26 <@d0ubl3_j> end;
17:26 <@d0ubl3_j> writeln('To sie pokaze bez wzgledu na wartosc zmiennej a');
17:26 <@d0ubl3_j> readln;
17:26 <@d0ubl3_j> end.
17:27 <@d0ubl3_j> (znowu ten sam przyklad ale cicho tam ;pp)
17:27 <@d0ubl3_j> tutaj mamy zanegowany warunek
17:27 <@d0ubl3_j> czyli jezeli a=5 zwroci TRUE wtedy po dodaniu NOT otrzymamy FALSE
17:27 <@d0ubl3_j> NOT 1 = 0 ;>
17:27 <@d0ubl3_j> kto cos chcial sie zpaytac?
17:27 < Tenoriuss> ja
17:27 < Tenoriuss> pomyliles sie :P
17:27 < Tenoriuss> if not(a = 5)then
17:27 < Tenoriuss> begin
17:27 < Tenoriuss> writeln('rowne!');
17:27 < Tenoriuss> hehehe :)
17:27 <@d0ubl3_j> tzn?
17:28 <@d0ubl3_j> rozwin swa wypowiedz :p
17:28 < Tenoriuss> jesli a jest inne od 5 to ma napisac "rowne", a jezeli a = 5 to "rozne" (negacja negacji) :)
17:28 < Tenoriuss> else i not daja prawde
17:28 < Tenoriuss> powinno byc
17:28 < Tenoriuss> if not(a = 5) then
17:28 < Tenoriuss> begin
17:29 < Tenoriuss> writeln('jezeli a jest rozne niz 5 to pokaz ta informacje');
17:29 < Tenoriuss> end else
17:29 < Tenoriuss> begin
17:29 < Tenoriuss> writeln('rowne!');
17:29 < Tenoriuss> writeln('druga instrukcja w if');
17:29 < Tenoriuss> writeln('trzecia instrukcja w if');
17:29 < Tenoriuss> writeln('nastepna z kolei ;pp');
17:29 < Tenoriuss> end;
17:29 <@d0ubl3_j> a kompilowales to co podalem?:p
17:29 < Tenoriuss> nii :)
17:29 <@d0ubl3_j> no wiec informuje cie ze moj kod ;>
17:29 <@d0ubl3_j> jest poprawny i dziala z twoja logika
17:29 <@d0ubl3_j> ;>
17:30 < Tenoriuss> ;) ale wyswietla przeciwne wartosci
17:30 <@d0ubl3_j> na ekranie otrzymamy:
17:30 <@d0ubl3_j> jezeli a jest rozne niz 5 to pokaz ta informacje
17:30 <@d0ubl3_j> To sie pokaze bez wzgledu na wartosc zmiennej a
17:30 <@d0ubl3_j> i to mamy otrzymac ;p
17:30 < Tenoriuss> if not(a = 5)then
17:30 < Tenoriuss> jesli a nie jest rowne 5
17:30 < crook> fuj, ale paskudny sposob negacji
17:31 < Tenoriuss> to writeln('rowne!'); -> napisz "rowne!" :P
17:31 <@d0ubl3_j> przyjmujemy ze a jest rowne 5 :P
17:31 < ant_> joł
17:31 < crook> tylko tak sie da w delphi?
17:31 <@d0ubl3_j> mozna inaczej zapisac warunek
17:31 <@d0ubl3_j> if a <> 5 then
17:31 < Tenoriuss> no :)
17:31 <@d0ubl3_j> czyli jezeli a rozne od 5 to zrob cos tam
17:31 < crook> uuu
17:31 < Tenoriuss> czyli
17:31 < Tenoriuss> 3 sposoby moge wymienic :)
17:31 < Tenoriuss> if (a <> 5) then
17:31 < Tenoriuss> if not(a = 5) then
17:31 < crook> dawaj ;]
17:32 < Tenoriuss> if (a = 5) then else ...
17:32 < Tenoriuss> to by na to samo wyszlo :)
17:32 <@d0ubl3_j> no to jest inna sprawa ze negujac czy nie otrzymamy ten sam rezultat
17:32 <@d0ubl3_j> jednak warunek musial by byc falszywy
17:32 <@d0ubl3_j> czyli a nie moglo by sie rownac 5
17:32 <@d0ubl3_j> wtedy nie musimy stosowac NOT
17:33 <@d0ubl3_j> jezeli chodzi o not
17:33 <@d0ubl3_j> sprawa jest prosta
17:33 <@d0ubl3_j> mamy na wejsciu 1
17:33 <@d0ubl3_j> to po negacji czyli NOT 1 otrzymamy na wyjsciu 0
17:33 <@d0ubl3_j> a jezeli na wej jest 0 to otrzymamy na wyjsciu 1
17:33 < Tenoriuss> wiem to zadziala bedzie dobrze tylko nieprawidlowy text w funkcji writeln wyswietli
17:33 <@d0ubl3_j> zrozumieliscie teraz?
17:33 <@d0ubl3_j> ;>
17:33 < Tenoriuss> ;)
17:34 < Tenoriuss> funkcja dobra kod dobry
17:34 < Tenoriuss> tylko tekst wyjsciowy zly :)
17:34 < Tenoriuss> chodzi o tresc
17:34 <@d0ubl3_j> --;
17:34 <@d0ubl3_j> dobra zmienie ten przyklad ;p
17:34 < Tenoriuss> :P
17:34 <@d0ubl3_j> bede opieral sie o inny ;>
17:34 <@d0ubl3_j> na czym to ja skonczylem?
17:34 < Tenoriuss> hehe :D
17:34 < Tenoriuss> NOT
17:34 <@d0ubl3_j> a dobra lece dajel z AND i OR
17:34 < Tenoriuss> ok
17:35 <@d0ubl3_j> a wiec jezeli chodzi o AND (i) to pozwala nam sprawdzic kilka warunkoow naraz
17:35 <@d0ubl3_j> najpierw maly kod bez AND :>
17:37 <@d0ubl3_j> program Project2;
17:37 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:37 <@d0ubl3_j> uses SysUtils;
17:37 <@d0ubl3_j> var
17:37 <@d0ubl3_j> a, b : byte;
17:37 <@d0ubl3_j> begin
17:37 <@d0ubl3_j> a:= 10;
17:37 <@d0ubl3_j> b:= 5;
17:37 <@d0ubl3_j> if(a = 10)then
17:37 <@d0ubl3_j> if(b = 5)then
17:37 <@d0ubl3_j> writeln('a i b maja razem 15')
17:37 <@d0ubl3_j> else
17:37 <@d0ubl3_j> writeln('b nie jest rowne 5')
17:37 <@d0ubl3_j> else
17:37 <@d0ubl3_j> writeln('a nie jest rowne 10');
17:37 <@d0ubl3_j> readln;
17:37 <@d0ubl3_j> end.
17:37 <@d0ubl3_j> ok teraz jest taki kod ;>
17:37 <@d0ubl3_j> troche mocno zamotany :p
17:37 <@d0ubl3_j> czyli malo czytelny
17:37 <@d0ubl3_j> mozna oczywiscie zastosowac boki begin i end
17:38 <@d0ubl3_j> ale jezeli mamy jedna isntrukcje tylko pozniej to stosowac nie musimy
17:38 <@d0ubl3_j> a ze if jest jedna instrukcja
17:38 <@d0ubl3_j> nawet jezeli korzysta z else to mozemy to zapisac w formie skroceonej jak powzyej ;>
17:38 <@d0ubl3_j> a teraz zmieniony kod z instrukcja AND
17:38 <@d0ubl3_j> i odpowiadam na pytania ;>
17:39 <@d0ubl3_j> program Project2;
17:39 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:39 <@d0ubl3_j> uses
17:39 <@d0ubl3_j> SysUtils;
17:39 <@d0ubl3_j> var
17:39 <@d0ubl3_j> a, b : byte;
17:39 <@d0ubl3_j> begin
17:39 <@d0ubl3_j> a:= 10;
17:39 <@d0ubl3_j> b:= 5;
17:39 <@d0ubl3_j> if((a = 10) and (b = 5))then
17:40 <@d0ubl3_j> writeln('a i b maja razem 15')
17:40 <@d0ubl3_j> else
17:40 <@d0ubl3_j> writeln('b != 5 or a != 10');
17:40 <@d0ubl3_j> readln;
17:40 <@d0ubl3_j> end.
17:40 <@d0ubl3_j> kod sie odchudzil
17:40 <@d0ubl3_j> jest czytelniejszy
17:40 <@d0ubl3_j> ale wypadla nam mozliwosc sprawdzenia ktore ze zmiennych jest nie rowne ;>
17:40 < Tenoriuss> ;)
17:40 <@d0ubl3_j> pytania?:p
17:41 < Tenoriuss> != nie pisz bo to nietypowe dla delphi :)
17:41 <@d0ubl3_j> Tenoriuss: nie typowe ale to tylko tekst :PP
17:41 < Tenoriuss> ;)
17:41 <@d0ubl3_j> != oznacza nie rowne ;>
17:41 <@d0ubl3_j> w matematyce jest =/=
17:41 <@d0ubl3_j> a w delphi <>
17:41 < Tenoriuss> ;D
17:41 <@d0ubl3_j> zas != spotakmy w c
17:41 < Tenoriuss> i w PHP
17:41 <@d0ubl3_j> i jest o wiele bardziej znane imho :p
17:41 <@d0ubl3_j> no tak ;>
17:41 <@d0ubl3_j> i innych jezykach c_podobnych ;>
17:42 <@d0ubl3_j> ktore wywodza sie z kobiety :PP
17:42 < Tenoriuss> ;D
17:42 <@d0ubl3_j> no ale jak narazie all jasne?;p
17:42 <@d0ubl3_j> heheh
17:42 <@d0ubl3_j> fajnie jak na sali jedna osoba siedzi
17:42 <@d0ubl3_j> i jest to sprzataczka :>>>>>>>>
17:42 < Tenoriuss> ;)
17:43 <@d0ubl3_j> dobra to teraz przedstawie OR ;>
17:43 < Reqamst> c'ya
17:43 < Tenoriuss> ;)
17:43 <@d0ubl3_j> oO
17:43 < Reqamst> eee ;] hi mialo byc ;]
17:43 <@d0ubl3_j> papa Reqamst
17:43 <@d0ubl3_j> ;PP
17:43 <@d0ubl3_j> hi hi ;>
17:43 <@d0ubl3_j> dobra let's go
17:43 <@d0ubl3_j> wiec teraz przedstawie OR (LUB)
17:44 <@d0ubl3_j> jezeli jeden warunek jest spelniony to wtedy caly warunek jest prawdziwy
17:44 <@d0ubl3_j> czyli
17:44 <@d0ubl3_j> 1 0 = prawda 0 1 = prawda 1 1 = prawda 0 0 = prawda oOe
17:44 <@d0ubl3_j> zaraz ;p
17:45 <@d0ubl3_j> w elektronice to jakos innaczej jest ;p
17:45 <@d0ubl3_j> a nie good hehe tam poprosotu cyferki wychodza
17:45 <@d0ubl3_j> a ogoolnie jest to wyrazenie prawdziwe
17:45 <@d0ubl3_j> chociaz dla 0 0 chyab nie bardzo
17:45 <@d0ubl3_j> ale to zaraz sprawdze i zapodam kodem ;>
17:46 <@d0ubl3_j> program Project2;
17:46 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:46 <@d0ubl3_j> uses
17:46 <@d0ubl3_j> SysUtils;
17:46 <@d0ubl3_j> var
17:46 <@d0ubl3_j> a, b : byte;
17:46 <@d0ubl3_j> begin
17:46 <@d0ubl3_j> a:= 10;
17:46 <@d0ubl3_j> b:= 5;
17:46 <@d0ubl3_j> if((a = 10) or (b = 5))then
17:46 <@d0ubl3_j> writeln('a i b maja razem 15')
17:46 <@d0ubl3_j> else
17:46 <@d0ubl3_j> writeln('b != 5 or a != 10');
17:47 <@d0ubl3_j> readln;
17:47 <@d0ubl3_j> end.
17:47 <@d0ubl3_j> warunek prawdziwy bo a jest rowne 10
17:47 <@d0ubl3_j> jak i b rowne 5
17:47 <@d0ubl3_j> program Project2;
17:47 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:47 <@d0ubl3_j> uses
17:47 <@d0ubl3_j> SysUtils;
17:47 <@d0ubl3_j> var
17:47 <@d0ubl3_j> a, b : byte;
17:47 <@d0ubl3_j> begin
17:47 <@d0ubl3_j> a:= 10;
17:47 <@d0ubl3_j> b:= 15;
17:47 <@d0ubl3_j> if((a = 10) or (b = 5))then
17:47 <@d0ubl3_j> writeln('a i b maja razem 15')
17:47 <@d0ubl3_j> else
17:47 <@d0ubl3_j> writeln('b != 5 or a != 10');
17:47 <@d0ubl3_j> readln;
17:47 <@d0ubl3_j> end.
17:47 <@d0ubl3_j> warunek prawdziwy
17:47 <@d0ubl3_j> dlatego ze a rowna sie 10
17:47 <@d0ubl3_j> to nie szkodzi ze b nie jest rowne
17:47 <@d0ubl3_j> ogoolnie warunek jest spelniony ;>
17:48 <@d0ubl3_j> no i ostatni kod
17:48 <@d0ubl3_j> program Project2;
17:48 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:48 <@d0ubl3_j> uses
17:48 <@d0ubl3_j> SysUtils;
17:48 <@d0ubl3_j> var
17:48 <@d0ubl3_j> a, b : byte;
17:48 <@d0ubl3_j> begin
17:48 <@d0ubl3_j> a:= 11;
17:48 <@d0ubl3_j> b:= 15;
17:48 <@d0ubl3_j> if((a = 10) or (b = 5))then
17:48 <@d0ubl3_j> writeln('a i b maja razem 15')
17:48 <@d0ubl3_j> else
17:48 <@d0ubl3_j> writeln('b != 5 or a != 10');
17:48 <@d0ubl3_j> readln;
17:48 <@d0ubl3_j> end.
17:48 <@d0ubl3_j> warunek nie spelniony
17:48 <@d0ubl3_j> dlatego ze ani a ani b nie jest rowne liczba w warunku
17:48 <@d0ubl3_j> teraz jakies pytania?:)
17:48 <@d0ubl3_j> esh cos nie moge flagi sciagnac +m ;p
17:48 <@d0ubl3_j> o juz
17:49 <@d0ubl3_j> uahaha ale lag
17:49 <@d0ubl3_j> lol
17:49 < Reqamst> moze mi ktos zapodac logiem wykladu na priv? ;>
17:49 < MEAL`aw> PhoeSni: dlaczego Twoja sesja nie wrocila?
17:49 <@d0ubl3_j> Reqamst: no calym?
17:49 <@d0ubl3_j> to na stronie bedzie
17:50 < Reqamst> a ogolnie co dzisiaj juz bylo?
17:50 < Reqamst> petle juz byly?
17:50 <@d0ubl3_j> nie
17:50 <@d0ubl3_j> narazie jest iF
17:50 <@d0ubl3_j> wlasciwie to sie akurat konczy
17:50 <@d0ubl3_j> i przechodze do case of ;>
17:50 < Reqamst> a to bede akurat rozumial bo jest podobny w all jezykach ;]
17:51 <@d0ubl3_j> nom ;>
17:51 <@d0ubl3_j> ok to teraz czas na case of ;>
17:51 <@d0ubl3_j> a potem petelki
17:51 <@d0ubl3_j> no wiec teraz kolejna z instrukcji warunkowych
17:51 <@d0ubl3_j> zwana tez instrukcja wyboru
17:51 <@d0ubl3_j> Case (warunek) of
17:51 <@d0ubl3_j> ma ona postac taka:
17:52 <@d0ubl3_j> case (warunek) of
17:52 <@d0ubl3_j> wartosc: instrukcja;
17:52 <@d0ubl3_j> end;
17:52 <@d0ubl3_j> przedstawie maly kod to sqmacie szybciej :.
17:52 <@d0ubl3_j> ;>
17:53 <@d0ubl3_j> program Project2;
17:53 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:53 <@d0ubl3_j> uses SysUtils;
17:53 <@d0ubl3_j> var
17:53 <@d0ubl3_j> a : byte;
17:53 <@d0ubl3_j> begin
17:53 <@d0ubl3_j> a:= 11;
17:53 <@d0ubl3_j> case(a)of
17:53 <@d0ubl3_j> 5: writeln('5');
17:53 <@d0ubl3_j> 10: writeln('10');
17:53 <@d0ubl3_j> 11: writeln('11');
17:53 <@d0ubl3_j> 15: writeln('15');
17:53 <@d0ubl3_j> end;
17:54 <@d0ubl3_j> readln;
17:54 <@d0ubl3_j> end.
17:54 <@d0ubl3_j> po skompilowaniu tego programu i odpaleniu zobaczymy na ekranie napis 11
17:54 <@d0ubl3_j> dlatego ze a == 1
17:54 <@d0ubl3_j> 11
17:54 <@d0ubl3_j> ;>
17:54 <@d0ubl3_j> zmiencie teraz a na np 5
17:54 <@d0ubl3_j> albo 15
17:54 <@d0ubl3_j> i wtedy zobaczycie inny wynik
17:54 <@d0ubl3_j> jezeli wpiszecie np 25
17:54 <@d0ubl3_j> do zmiennej a
17:54 <@d0ubl3_j> to nic nie zobaczycie poniewaz nie ma takiej wartosci w case
17:55 <@d0ubl3_j> jezeli dodamy else
17:55 <@d0ubl3_j> znane nam juz z if
17:55 <@d0ubl3_j> wtedy bedziemy mogli zareagowac na zly argument
17:55 <@d0ubl3_j> (to jest podobne do instrukcji switch i defaulty w c, php)
17:56 <@d0ubl3_j> program Project2;
17:56 <@d0ubl3_j> {$APPTYPE CONSOLE}
17:56 <@d0ubl3_j> uses SysUtils;
17:56 <@d0ubl3_j> var
17:56 <@d0ubl3_j> a : byte;
17:56 <@d0ubl3_j> begin
17:56 <@d0ubl3_j> a:= 25;
17:56 <@d0ubl3_j> case(a)of
17:56 <@d0ubl3_j> 5: writeln('5');
17:56 <@d0ubl3_j> 10: writeln('10');
17:56 <@d0ubl3_j> 11: writeln('11');
17:56 <@d0ubl3_j> 15: writeln('15');
17:56 <@d0ubl3_j> else writeln(a);
17:56 <@d0ubl3_j> end;
17:56 <@d0ubl3_j> readln;
17:56 <@d0ubl3_j> end.
17:56 <@d0ubl3_j> teraz jezeli zmienna a nie jest na liscie argumentoow case
17:56 <@d0ubl3_j> to zostanie wyswietlona ta zmienna
17:56 <@d0ubl3_j> a odpowiada za to else
17:57 <@d0ubl3_j> jakies pytania?;p
17:57 < Reqamst> nie
17:57 <@d0ubl3_j> to chwila przerwy az pomysle co wam dalej wciskac za kity :PP
17:58 <@d0ubl3_j> dobra to czas na przedstawienie w praktyce tego ;>
17:58 <@d0ubl3_j> napisze prosty kalkulator ;>
18:00 < Reqamst> napisalem przed chwila cos takiego, pobawcie sie tym ;)
18:00 < Reqamst> program Project2;
18:00 < Reqamst> {$APPTYPE CONSOLE}
18:00 < Reqamst> uses SysUtils;
18:00 < Reqamst> var
18:00 < Reqamst> a : byte;
18:00 < Reqamst> begin
18:00 < Reqamst> writeln('Podaj liczbe: ');
18:00 < Reqamst> read(a);
18:00 < Reqamst> case(a)of
18:00 < Reqamst> 5: writeln('5');
18:00 < Reqamst> ee? nie wyswietlilo sie cale ;|
18:01 < Reqamst> program Project2;
18:01 < Reqamst> {$APPTYPE CONSOLE}
18:01 < Reqamst> uses SysUtils;
18:01 < Reqamst> var
18:01 < Reqamst> a : byte;
18:01 < Reqamst> begin
18:01 < Reqamst> writeln('Podaj liczbe: ');
18:01 < Reqamst> read(a);
18:01 < Reqamst> case(a)of
18:01 < Reqamst> 5: writeln('5');
18:01 < Reqamst> 10: writeln('10');
18:01 < Reqamst> 11: writeln('11');
18:01 < Reqamst> 15: writeln('15');
18:01 < Reqamst> else
18:01 < Reqamst> writeln('Nieznana liczba');
18:01 < Reqamst> end;
18:01 < Reqamst> readln;
18:01 < Reqamst> readln;
18:01 < Reqamst> end.
18:01 < Reqamst> d0ubl3, dobrze napisalem? ;>
18:03 <@d0ubl3_j> tak ;>
18:04 <@d0ubl3_j> wrzuce na server listing tego kalkulatora ;>
18:06 <@d0ubl3_j> http://cenobium.glt.pl/wyklady/d02/calc.dpr
18:06 < Reqamst> fajne ;]
18:07 < Reqamst> a co z pierwiastkowaniem? ;>
18:07 <@d0ubl3_j> teraz omowie ten kod ;>
18:07 <@d0ubl3_j> to bardzo prosty kalkulator :p
18:07 <@d0ubl3_j> bez pierwiastkowania
18:07 <@d0ubl3_j> ale oczywiscie mozna zastosowac pierwiastkowanie
18:07 < Reqamst> potem omow jak pierwiastkowac ;>
18:07 <@d0ubl3_j> korzystajc z instrukcji sqr(liczba)
18:08 <@d0ubl3_j> ale to juz sami sobie dopiszecie jako zadanie domowe :PP
18:08 <@d0ubl3_j> a wiec najpierw prosimy o podanie 2 liczb
18:08 <@d0ubl3_j> oraz znaku dzialania
18:08 <@d0ubl3_j> potem sprawdzamy czy aby znak dzialania to nie jest / i czy b nie jest rowne 0 korzystamy tutaj z NOT i AND
18:09 <@d0ubl3_j> jezeli nie warunek jest spelniony
18:09 <@d0ubl3_j> wtedy wykona sie kod po else
18:09 <@d0ubl3_j> i wypisze o dzieleniu przez 0
18:09 <@d0ubl3_j> jezeli zas warunek jest nie speleniony
18:09 <@d0ubl3_j> to przechodzimy do case
18:10 <@d0ubl3_j> i sprawdzamy jaki znak podal user
18:10 <@d0ubl3_j> i wykonujemy dopoiwiedznie dzialanie
18:10 <@d0ubl3_j> jezeli znak jest zly
18:10 <@d0ubl3_j> uzytkownik zostanie o tym poinformowany
18:10 <@d0ubl3_j> jedna isntrukcja ktore mozecie nie znac to div
18:10 <@d0ubl3_j> oznacza ona dzieleni calkowite
18:10 <@d0ubl3_j> bez reszty
18:11 <@d0ubl3_j> oczywiscie nie musimy korzystac z div
18:11 <@d0ubl3_j> mozemy wstawic tam /
18:11 <@d0ubl3_j> jednak musimy pamietac ze wykonujemy obliczenia na liczbach calkowitych
18:12 <@d0ubl3_j> jezeli chcemy aby byly to liczby rzeczywiste nalezy zamiast integer dac real
18:12 <@d0ubl3_j> i wtedy bedzie mykac ;>
18:12 <@d0ubl3_j> ale to juz zostawiam wam do wlasnej zabawy ;pp
18:12 <@d0ubl3_j> no i tym sposobem omowilem instrukcje wyboru ;>
18:12 <@d0ubl3_j> jakies pytania?
18:13 <@d0ubl3_j> n
18:13 <@d0ubl3_j> zostalem juz sam?;p
18:13 < Reqamst> dawaj petelki ;]
18:14 <@d0ubl3_j> ok
18:14 <@d0ubl3_j> teraz czas na petle ;>
18:14 <@d0ubl3_j> przyklad petli:
18:14 <@d0ubl3_j> ciagle gadanie o tym samym :PP
18:15 <@d0ubl3_j> jest to fragment kodu ktory jest powtarzany okreslona ilosc razy albo do spelnienie danego warunku
18:15 <@d0ubl3_j> mamy w delphi jak i w pascalu 3 petle
18:15 <@d0ubl3_j> repeat ... until
18:15 <@d0ubl3_j> while... do
18:15 <@d0ubl3_j> i for .. to .. do
18:15 <@d0ubl3_j> ktora sie dzieli na jeszcze jedna
18:15 <@d0ubl3_j> for .. downto .. do
18:16 <@d0ubl3_j> roznica jest w odliczaniu
18:16 <@d0ubl3_j> to odlicza do gory
18:16 <@d0ubl3_j> zas downto w dol ;>
18:16 <@d0ubl3_j> najpier przedstawie petle for ;>
18:18 <@d0ubl3_j> program calc;
18:18 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:18 <@d0ubl3_j> uses
18:18 <@d0ubl3_j> SysUtils;
18:18 <@d0ubl3_j> var
18:18 <@d0ubl3_j> i : integer;
18:18 <@d0ubl3_j> begin
18:18 <@d0ubl3_j> for i:= 0 to 10 do
18:18 <@d0ubl3_j> writeln('2j jest fajny ^^');
18:18 <@d0ubl3_j> for i:= 0 to 10 do
18:18 <@d0ubl3_j> begin
18:18 <@d0ubl3_j> write('interakcja nr: ');
18:19 <@d0ubl3_j> writeln(i);
18:19 <@d0ubl3_j> end;
18:19 <@d0ubl3_j> for i:= 10 downto 0 do
18:19 <@d0ubl3_j> writeln('2j jest fajny ^^');
18:19 <@d0ubl3_j> for i:= 10 downto 0 do
18:19 <@d0ubl3_j> begin
18:19 <@d0ubl3_j> write('interakcja nr: ');
18:19 <@d0ubl3_j> writeln(i);
18:19 <@d0ubl3_j> end;
18:19 <@d0ubl3_j> readln;
18:19 <@d0ubl3_j> end.
18:19 <@d0ubl3_j> wkleilo sie cale?
18:19 <@d0ubl3_j> esh --;
18:19 < Reqamst> chyba tak
18:19 <@d0ubl3_j> powinno sie konczyc end.
18:20 < Reqamst> a maja byc 3 end?
18:20 < Reqamst> w calym listingu tego programu?
18:20 <@d0ubl3_j> to przepiszcie ten kod i sprawdzie jego dzialanie
18:20 <@d0ubl3_j> takl
18:20 <@d0ubl3_j> end; end; end.
18:20 <@d0ubl3_j> kod zawsze wykona sie 10 razy
18:21 <@d0ubl3_j> przedstawie wam listing z dzialania tego programu
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> 2j jest fajny ^^
18:21 <@d0ubl3_j> interakcja nr: 0
18:21 <@d0ubl3_j> interakcja nr: 1
18:21 <@d0ubl3_j> interakcja nr: 2
18:21 <@d0ubl3_j> interakcja nr: 3
18:21 <@d0ubl3_j> interakcja nr: 4
18:21 <@d0ubl3_j> interakcja nr: 5
18:21 <@d0ubl3_j> interakcja nr: 6
18:21 <@d0ubl3_j> interakcja nr: 7
18:22 <@d0ubl3_j> interakcja nr: 8
18:22 <@d0ubl3_j> interakcja nr: 9
18:22 <@d0ubl3_j> interakcja nr: 10
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> 2j jest fajny ^^
18:22 <@d0ubl3_j> interakcja nr: 10
18:22 <@d0ubl3_j> interakcja nr: 9
18:22 <@d0ubl3_j> interakcja nr: 8
18:22 <@d0ubl3_j> interakcja nr: 7
18:22 <@d0ubl3_j> interakcja nr: 6
18:22 <@d0ubl3_j> interakcja nr: 5
18:22 <@d0ubl3_j> interakcja nr: 4
18:22 <@d0ubl3_j> interakcja nr: 3
18:22 <@d0ubl3_j> interakcja nr: 2
18:23 <@d0ubl3_j> interakcja nr: 1
18:23 <@d0ubl3_j> interakcja nr: 0
18:23 <@d0ubl3_j> jak widzicie downto odlicza w dol
18:23 <@d0ubl3_j> zas to w goore ;>
18:23 <@d0ubl3_j> all jasne?;p
18:23 <@d0ubl3_j> mamy jeszcze 30 min
18:23 <@d0ubl3_j> wiec lecimy dalej ;>
18:23 <@d0ubl3_j> dalej omoowie petle wyboru
18:23 <@d0ubl3_j> hehe
18:23 <@d0ubl3_j> oznaczyc tak mozna petle ktore dzialaja wg okreslonego warunku
18:23 <@d0ubl3_j> warunki ofc tak samo jak w if
18:23 <@d0ubl3_j> wiec to pomine
18:24 <@d0ubl3_j> za to podam ogoolnie najpierw petle repeat until
18:24 <@d0ubl3_j> a wiec wykonuj kod w petli dopooki nie spelniony warunek
18:25 <@d0ubl3_j> program calc;
18:25 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:25 <@d0ubl3_j> uses SysUtils;
18:25 <@d0ubl3_j> var
18:25 <@d0ubl3_j> i : integer;
18:25 <@d0ubl3_j> begin
18:25 <@d0ubl3_j> repeat
18:25 <@d0ubl3_j> writeln(i);
18:25 <@d0ubl3_j> inc(i);
18:25 <@d0ubl3_j> until i = 10;
18:25 <@d0ubl3_j> readln;
18:25 <@d0ubl3_j> end.
18:25 <@d0ubl3_j> mam tutaj kod ;>
18:26 <@d0ubl3_j> ktory wykonac powinnien sie 10 razy
18:26 <@d0ubl3_j> inc(zminne)
18:26 <@d0ubl3_j> powoduje zwiekszanie zmiennej o jeden
18:26 <@d0ubl3_j> czyli i++ w c i php etc
18:26 <@d0ubl3_j> jest to inkrementacja
18:26 <@d0ubl3_j> jednak
18:27 <@d0ubl3_j> ten kod nie wykona sie 10 razy ;>
18:27 <@d0ubl3_j> dlatego ze na poczatku nie wyzerowalismy zmiennej i
18:27 <@d0ubl3_j> dlatego nie wiem co tam sie znajduje
18:27 <@d0ubl3_j> (sa smieci ;pp)
18:27 <@d0ubl3_j> i moze sie wykonac bardzo dlugo
18:27 <@d0ubl3_j> ;>
18:28 <@d0ubl3_j> delphi nie zeruje zmiennych!
18:28 <@d0ubl3_j> program calc;
18:28 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:28 <@d0ubl3_j> uses SysUtils;
18:28 <@d0ubl3_j> var
18:28 <@d0ubl3_j> i : integer;
18:28 <@d0ubl3_j> begin
18:28 <@d0ubl3_j> i:= 0;
18:28 <@d0ubl3_j> repeat
18:28 <@d0ubl3_j> writeln(i);
18:28 <@d0ubl3_j> inc(i);
18:28 <@d0ubl3_j> until i = 10;
18:28 <@d0ubl3_j> readln;
18:28 <@d0ubl3_j> end.
18:28 <@d0ubl3_j> tutaj mamy poprawnie dzialajacy kod
18:28 < kamil> co tak wczesnie? :o
18:28 <@d0ubl3_j> kamil: ?
18:29 < kamil> no wyklad
18:29 <@d0ubl3_j> wyklad o delphi jest od 17
18:29 < kamil> no wlasnie, wczesnie cos ;]
18:29 <@d0ubl3_j> wyklad o czyms tam (linux chyba) jest o 19
18:29 <@d0ubl3_j> bo mi nie pasuje w niedizele
18:29 <@d0ubl3_j> mam ten dzien zajety
18:29 < kamil> nie kreci mnie delphi wiec nie mam pytan :D
18:29 <@d0ubl3_j> :p
18:30 <@d0ubl3_j> dobra to teraz czas na petle while ktora jest zarzdziej wykorzystywana w delphi ;>
18:30 <@d0ubl3_j> i w pascalu zreszta tez
18:30 <@d0ubl3_j> petla while warunke do
18:30 <@d0ubl3_j> dziala podobnie do if i for
18:30 <@d0ubl3_j> czyli moze miec bloki begin i end
18:30 <@d0ubl3_j> jak i moze byc bez
18:31 <@d0ubl3_j> wtedy zostanie wykonana tylko jedna instrukcja
18:31 <@d0ubl3_j> petla dzial dopooki warunek jest spelniony
18:31 <@d0ubl3_j> a wiec jezeli a = 10 wtedy wykona sie instrukcja
18:31 <@d0ubl3_j> inaczej petla sie zaoknczy
18:31 <@d0ubl3_j> przyklad:
18:32 <@d0ubl3_j> program calc;
18:32 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:32 <@d0ubl3_j> uses
18:32 <@d0ubl3_j> SysUtils;
18:32 <@d0ubl3_j> var
18:32 <@d0ubl3_j> a : integer;
18:32 <@d0ubl3_j> begin
18:32 <@d0ubl3_j> a:= 10;
18:32 <@d0ubl3_j> while a <> 0 do
18:32 <@d0ubl3_j> dec(a);
18:32 <@d0ubl3_j> writeln(a);
18:32 <@d0ubl3_j> readln;
18:33 <@d0ubl3_j> end.
18:33 <@d0ubl3_j> mamy tutaj <> rozne od
18:33 <@d0ubl3_j> czyli a rozne od zero
18:33 <@d0ubl3_j> dec to dekrementacja
18:33 <@d0ubl3_j> czyli zmniejszanie zmiennej a o jeden
18:33 <@d0ubl3_j> jezeli odpalicie ten program to efektem jego dzialania bedzie wyswietlona liczba zero
18:33 <@d0ubl3_j> dlaczego?
18:33 <@d0ubl3_j> dlatego ze writeln(a); jest poza petla
18:34 <@d0ubl3_j> tak jak mowilem jezeli chcemy wykonac kilka instrukcji w petli stosujemy begin i end:
18:34 <@d0ubl3_j> program calc;
18:34 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:34 <@d0ubl3_j> uses
18:34 <@d0ubl3_j> SysUtils;
18:34 <@d0ubl3_j> var
18:34 <@d0ubl3_j> a : integer;
18:34 <@d0ubl3_j> begin
18:34 <@d0ubl3_j> a:= 10;
18:34 <@d0ubl3_j> while a <> 0 do
18:34 <@d0ubl3_j> begin
18:34 <@d0ubl3_j> dec(a);
18:34 <@d0ubl3_j> writeln(a);
18:34 <@d0ubl3_j> end;
18:34 <@d0ubl3_j> readln;
18:34 <@d0ubl3_j> end.
18:35 <@d0ubl3_j> efektem tego programu jest:
18:35 <@d0ubl3_j> 9
18:35 <@d0ubl3_j> 8
18:35 <@d0ubl3_j> 7
18:35 <@d0ubl3_j> 6
18:35 <@d0ubl3_j> 5
18:35 <@d0ubl3_j> 4
18:35 <@d0ubl3_j> 3
18:35 <@d0ubl3_j> 2
18:35 <@d0ubl3_j> 1
18:35 <@d0ubl3_j> 0
18:35 <@d0ubl3_j> jakies pytania?
18:36 < Reqamst> a w tym pierwszym
18:36 < Reqamst> programie z petla
18:36 <@d0ubl3_j> ktora petla?
18:36 < Reqamst> wyswietlic mialy sie liczby od 1 do 9 ?
18:36 <@d0ubl3_j> od 0
18:36 <@d0ubl3_j> dlatego ze zmienna a miala 0
18:36 < Reqamst> a tak
18:36 <@d0ubl3_j> jezeli damy tam 1 to wtedy bedzie od 1 do 10
18:36 <@d0ubl3_j> tylko ze musimy pamietac o warunkach
18:36 <@d0ubl3_j> jezeli a <> 0
18:37 <@d0ubl3_j> roznica pomiedzy repeat a while jest taka ze repeat wykona sie chociaz raz za to while moze sie nie wykonac ani razu ;>
18:38 <@d0ubl3_j> teraz powiem wam jeszcze o instrukcji break ;>
18:38 <@d0ubl3_j> ^^
18:38 <@d0ubl3_j> dobra
18:38 <@d0ubl3_j> wiec break powoduje przerwanie aktualnej petli
18:39 <@d0ubl3_j> program calc;
18:39 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:39 <@d0ubl3_j> uses
18:39 <@d0ubl3_j> SysUtils;
18:39 <@d0ubl3_j> var
18:39 <@d0ubl3_j> a : integer;
18:39 <@d0ubl3_j> begin
18:39 <@d0ubl3_j> a:= 10;
18:39 <@d0ubl3_j> while a <> 0 do
18:39 <@d0ubl3_j> begin
18:39 <@d0ubl3_j> dec(a);
18:39 <@d0ubl3_j> writeln(a);
18:39 <@d0ubl3_j> if(a = 5) then
18:39 <@d0ubl3_j> break;
18:39 <@d0ubl3_j> end;
18:39 <@d0ubl3_j> readln;
18:39 <@d0ubl3_j> end.
18:39 <@d0ubl3_j> ten program dziala tak jak wczesniejszy
18:39 <@d0ubl3_j> jednyne roznice to instrukcja if z warunkiem a = 5
18:39 <@d0ubl3_j> i instrukcja break
18:39 <@d0ubl3_j> jezeli a = 5 wtedy opusc petle
18:39 <@d0ubl3_j> wynikiem tego dzialania bedzie:
18:39 <@d0ubl3_j> 9
18:39 <@d0ubl3_j> 8
18:39 <@d0ubl3_j> 7
18:39 <@d0ubl3_j> 6
18:39 <@d0ubl3_j> 5
18:40 <@d0ubl3_j> jest jeszcze instrukcja exit
18:40 <@d0ubl3_j> ktora wychodzi z programu
18:40 <@d0ubl3_j> natychmiast ;>>
18:40 <@d0ubl3_j> a wiec jezeli zmienimy w tym programie powyzej break na exit;
18:40 <@d0ubl3_j> program calc;
18:40 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:40 <@d0ubl3_j> uses
18:40 <@d0ubl3_j> SysUtils;
18:40 <@d0ubl3_j> var
18:40 <@d0ubl3_j> a : integer;
18:41 <@d0ubl3_j> begin
18:41 <@d0ubl3_j> a:= 10;
18:41 <@d0ubl3_j> while a <> 0 do
18:41 <@d0ubl3_j> begin
18:41 <@d0ubl3_j> dec(a);
18:41 <@d0ubl3_j> writeln(a);
18:41 <@d0ubl3_j> if(a = 5) then
18:41 <@d0ubl3_j> exit;
18:41 <@d0ubl3_j> end;
18:41 <@d0ubl3_j> readln;
18:41 <@d0ubl3_j> end.
18:41 <@d0ubl3_j> to on wykona sie tyle samo razy tylko ze po 5 program zostanie zamknietyt
18:41 <@d0ubl3_j> program calc;
18:41 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:41 <@d0ubl3_j> uses
18:41 <@d0ubl3_j> SysUtils;
18:41 <@d0ubl3_j> var
18:41 <@d0ubl3_j> a : integer;
18:41 <@d0ubl3_j> begin
18:41 <@d0ubl3_j> a:= 10;
18:41 <@d0ubl3_j> while a <> 0 do
18:41 <@d0ubl3_j> begin
18:41 <@d0ubl3_j> dec(a);
18:41 <@d0ubl3_j> writeln(a);
18:42 <@d0ubl3_j> if(a = 5) then
18:42 <@d0ubl3_j> exit;
18:42 <@d0ubl3_j> end;
18:42 <@d0ubl3_j> writeln('to juz nie zostaine wyswietlone');
18:42 <@d0ubl3_j> readln;
18:42 <@d0ubl3_j> end.
18:42 <@d0ubl3_j> w tym programie dobrze to widac
18:42 <@d0ubl3_j> jezeli a = 5
18:42 <@d0ubl3_j> to wtedy program zostaine zamkniety
18:42 <@d0ubl3_j> i writeln('to juz nie zostaine wyswietlone');
18:42 <@d0ubl3_j> nie zostanie wykonane
18:42 <@d0ubl3_j> jednak jak damy zamiast exit; tam break;
18:42 <@d0ubl3_j> to ta instrukcja zostanie wykonana ;>
18:43 <@d0ubl3_j> chociaz nie do konca jest to prawda ;>
18:43 <@d0ubl3_j> bo exit podowuje zakonczenie bierzacej procedury
18:43 <@d0ubl3_j> ale ze my mamy tutaj tylko jedna jak by procedure
18:43 <@d0ubl3_j> dlatego program sie zamyka
18:43 <@d0ubl3_j> ale o tym kiedy indziej wrocimy do tego jeszcze ;>
18:44 < Reqamst> dawaj dalej ;]
18:44 <@d0ubl3_j> ok
18:44 <@d0ubl3_j> continue;
18:44 <@d0ubl3_j> powoduje przerwnie biezacej interakcji
18:44 <@d0ubl3_j> i wykonanie nastepnej
18:44 <@d0ubl3_j> czyli jezeli:
18:44 <@d0ubl3_j> mamy
18:44 <@d0ubl3_j> 3
18:44 <@d0ubl3_j> 4
18:44 <@d0ubl3_j> continue
18:45 <@d0ubl3_j> 6
18:45 <@d0ubl3_j> przedstawie program ktory to zademonstruje
18:45 <@d0ubl3_j> sprawdza sie to jezeli pewna interakcja powinna zostac pomienieta
18:45 <@d0ubl3_j> przy jakis obliczeniach etc
18:47 <@d0ubl3_j> n('to juz nie zostaine wyswietlone');
18:47 <@d0ubl3_j> program calc;
18:47 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:47 <@d0ubl3_j> uses
18:47 <@d0ubl3_j> SysUtils;
18:47 <@d0ubl3_j> var
18:47 <@d0ubl3_j> a : integer;
18:47 <@d0ubl3_j> begin
18:47 <@d0ubl3_j> for a:= 10 downto 0 do
18:47 <@d0ubl3_j> begin
18:47 <@d0ubl3_j> writeln(a);
18:47 <@d0ubl3_j> if a = 5 then
18:47 <@d0ubl3_j> continue;
18:47 <@d0ubl3_j> end;
18:47 <@d0ubl3_j> readln;
18:47 <@d0ubl3_j> end.
18:47 <@d0ubl3_j> o dokladnie to sie troche walnalem :PP
18:48 <@d0ubl3_j> wynik tego jest:
18:48 <@d0ubl3_j> 10
18:48 <@d0ubl3_j> 9
18:48 <@d0ubl3_j> 8
18:48 <@d0ubl3_j> 7
18:48 <@d0ubl3_j> 6
18:48 <@d0ubl3_j> 5
18:48 <@d0ubl3_j> 4
18:48 <@d0ubl3_j> 3
18:48 <@d0ubl3_j> 2
18:48 <@d0ubl3_j> 1
18:48 <@d0ubl3_j> 0
18:48 <@d0ubl3_j> program calc;
18:48 <@d0ubl3_j> {$APPTYPE CONSOLE}
18:48 <@d0ubl3_j> uses
18:48 <@d0ubl3_j> SysUtils;
18:48 <@d0ubl3_j> var
18:48 <@d0ubl3_j> a : integer;
18:48 <@d0ubl3_j> begin
18:48 <@d0ubl3_j> for a:= 10 downto 0 do
18:48 <@d0ubl3_j> begin
18:48 <@d0ubl3_j> if a = 5 then
18:49 <@d0ubl3_j> continue;
18:49 <@d0ubl3_j> writeln(a);
18:49 <@d0ubl3_j> end;
18:49 <@d0ubl3_j> readln;
18:49 <@d0ubl3_j> end.
18:49 <@d0ubl3_j> o wlasnie ;>
18:49 <@d0ubl3_j> ten kod dzial tak jak mowilem ;pp
18:49 <@d0ubl3_j> 10
18:49 <@d0ubl3_j> 9
18:49 <@d0ubl3_j> 8
18:49 <@d0ubl3_j> 7
18:49 <@d0ubl3_j> 6
18:49 <@d0ubl3_j> 4
18:49 <@d0ubl3_j> 3
18:49 <@d0ubl3_j> 2
18:49 <@d0ubl3_j> 1
18:49 <@d0ubl3_j> 0
18:49 <@d0ubl3_j> brak tutaj 5 ;>
18:49 <@d0ubl3_j> continue musi sie pojawi przed wykonaniem jakiejs instrukcji
18:49 <@d0ubl3_j> ktorej dla danego warunku
18:49 <@d0ubl3_j> nie powinno sie wykonac
18:49 <@d0ubl3_j> continue stosujemy wylacznie w petlach
18:50 <@d0ubl3_j> jakies pytania?;p
18:50 < Reqamst> dla mnie wszystko jasne ;]
18:50 <@d0ubl3_j> to fajnie ;>
18:50 < Reqamst> tylko zastanawiam sie kto sie tym na powaznie interesuje oprocz mnie ^^
18:50 <@d0ubl3_j> na przyszlych wykladach omowie funkcje, procedury oraz moduly
18:50 <@d0ubl3_j> a na dzisiaj to koniec ;>