Darmowe Forum
Kwiecień 05, 2025, 05:07:18 *
Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji
Aktualności: Forum zostaÂło uruchomione!
 
   Strona główna   Pomoc Zaloguj się Rejestracja  
Strony: [1]
  Drukuj  
Autor Wątek: Procedury -  (Przeczytany 8970 razy)
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« : Grudzień 19, 2011, 08:46:31 »

Procedura
Procedura jest pewnym zamkniêtym fragmentem kodu, który ma swoj¹ nazwê i mo¿e mieÌ swoje w³asne zmienne. Procedura mo¿e byÌ porównana do krótkiego podprogramu którego kod zosta³ umieszczony w programie g³ównym.

Procedury deklaruje siê jeszcze tu¿ przed g³ównym programem , czyli przed s³owem begin za deklaracj¹ zmiennych. Procedura jest deklarowana w nastêpuj¹cy sposób:

Procedure Adam;
Begin { TreœÌ procedury }
End;


Od tej chwili w programie istnieje procedura o nazwie Adam.
« Ostatnia zmiana: Grudzień 19, 2011, 08:48:16 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #1 : Grudzień 19, 2011, 08:49:43 »

Zadanie 1 . PrzykÂład deklarowania i wywoÂłania procedury w programie.

program misio;
uses crt,dos;
procedure adam;
begin
end;

var x,y: integer;
begin
write('Za chwile wywolam procedure Adam');
adam;
readkey
end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #2 : Grudzień 19, 2011, 08:51:21 »

Zadanie 2. Wykorzystuj¹c 4 procedury rozmieœciÌ w czterech rogach ekranu napis "Witaj szko³o". Dziêki czterem procedurom w programie g³ównym, wywo³ywane s¹ tylko procedury .

program ryr;
uses crt,dos;
var x,y,z:integer;
                        procedure misio;
                        begin
                        gotoxy(1,1); textcolor(green);write(' Witaj w szkole');
                        end;
                        procedure rysio;
                        begin
                          textcolor(yellow);gotoxy(65,1);
                          write('Witaj szkolo');
                        end;
                          procedure zdzisio;
                        begin
                          textcolor(lightgreen);gotoxy(65,21);
                          write('Witaj szkolo');
                        end;
                          procedure pysio;
                        begin
                          textcolor(9);gotoxy(1,21);
                          write('Witaj szkolo');
                        end;

begin
textbackground(white); clrscr;
  misio; rysio;zdzisio;pysio;

 readkey;
end.
« Ostatnia zmiana: Grudzień 19, 2011, 08:55:56 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #3 : Grudzień 19, 2011, 08:59:01 »

Generowanie dÂźwiĂŞku.
W Pascalu istnieje polecenie umoÂżliwiajÂące przekazanie dÂźwiĂŞku do gÂłoÂśniczka systemowego. Polecenie sound(x); generuje dÂźwiĂŞk o czĂŞstotliwoÂści x Hz.
Np uÂżycie w programie polecenia sound(1000); spowoduje wytworzenie dÂźwiĂŞku o czĂŞstotliwoÂści 1000Hz.
Przerwanie wytwarzania dÂźwiĂŞku umoÂżliwia polecenie nosound;
JeÂżeli chcemy aby dÂźwiĂŞk trwaÂł np. jednÂą sekundĂŞ wystarczy wstawiĂŚ polecenie zatrzymania delay(1000); pomiĂŞdzy w³¹czenie dÂźwieku (sound(x))  i jego wy³¹czenie (nosound;).

program alba;
uses crt,dos;
var a,b: char;
begin
repeat
a:=readkey;
sound(1000); delay(1000); nosound;
until a='q';
end.


--------------------------------- PrzykÂład wykorzystania ------------------------
program alba;
uses crt,dos;
var a,b: char;
begin  clrscr;
repeat
a:=readkey;
case a of
'a':begin sound(1000);delay(300);nosound;end;
's':begin sound(1100);delay(300);nosound;end;
'd':begin sound(1200);delay(300);nosound;end;
'f':begin sound(1300);delay(300);nosound;end;
'g':begin sound(1400);delay(300);nosound;end;
'h':begin sound(1500);delay(300);nosound;end;
'j':begin sound(1600);delay(300);nosound;end;
'k':begin sound(1700);delay(300);nosound;end
else begin end; end;

until a='q';
end.
« Ostatnia zmiana: Grudzień 19, 2011, 09:33:50 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #4 : Grudzień 19, 2011, 10:29:04 »

Choinka bez procedur (tzw. masakra)


program alba;
uses crt,dos;
var a,b: char;
x,y:integer;
begin textcolor(green);textbackground(white); clrscr;


       for x:=0 to 5 do
       begin
       for y:=0 to x do
       begin
       gotoxy(20+y,x+5);write('*');
       gotoxy(20-y,x+5);write('*');
       end;
       end;

         for x:=0 to 5 do
       begin
       for y:=0 to x+1 do
       begin
       gotoxy(20+y,x+10);write('*');
       gotoxy(20-y,x+10);write('*');
       end;
       end;

                for x:=0 to 5 do
       begin
       for y:=0 to x+2 do
       begin
       gotoxy(20+y,x+15);write('*');
       gotoxy(20-y,x+15);write('*');
       end;
       end;

 readkey;

end.
------------------------------------------------- A teraz z procedurÂą -------------------------
program alba;
uses crt,dos;
var a,b: char;
x,y,z,c:integer;
procedure choi;
begin
  for x:=0 to z do
       begin
       for y:=0 to x do
       begin
       gotoxy(20+y,x+c);write('*');
       gotoxy(20-y,x+c);write('*');
       end;
       end;
end;


begin textcolor(green);textbackground(white); clrscr;
 c:=5; z:=5;choi;
  z:=6;c:=10; choi;
  z:=7;c:=15; choi;

 readkey;

end.

------------------------------------- Choinka z mrugajÂącymi ÂświateÂłkami ----------------

program alba;
uses crt,dos;
var a,b: char;
x,y,z,c,d:integer;
procedure choi;
begin
  for x:=0 to z do
       begin
       for y:=0 to x do
       begin
       d:=random(10);
       gotoxy(20+y,x+c); if((y+x) mod 3=0) then
       begin textcolor(d);write('*');end
       else begin textcolor(green);write('*'); end;
       gotoxy(20-y,x+c); if((y+x) mod 3=0) then
       begin textcolor(d);write('*');end
       else begin textcolor(green);write('*'); end;
       end;
       end;
end;

begin textcolor(green);textbackground(white); clrscr;  randomize;
 repeat
 c:=5; z:=5;choi;
  z:=6;c:=10; choi;
  z:=7;c:=15; choi;
  until keypressed;


 readkey;

end.
« Ostatnia zmiana: Grudzień 19, 2011, 11:17:10 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #5 : Styczeń 02, 2012, 10:26:17 »

Zadanie napisaĂŚ program ktĂłry wyÂświetli Âżyczenia noworoczne przemieszczajÂące siĂŞ po ekranie.

program Michal;
uses crt,dos;
var x,a,b,aa,bb:byte;
procedure bobo;
begin  clrscr;
x:=x+1;x:=(x mod 15); textcolor(yellow);
gotoxy(a,b); write('Witaj w Nowym roku - 2012 ');
delay(40);
end;

procedure smigacz;
begin
repeat
a:=a+aa;b:=b+bb;
if((a<2) OR (a>60)) then aa:=-aa;
   if((b<2) OR (b>20)) then bb:=-bb;
bobo;
until keypressed;
end;

begin aa:=1;bb:=1; a:=20;b:=10; x:=1;
smigacz;
end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #6 : Styczeń 09, 2012, 13:06:35 »

Zadanie do wyjaÂśnienia, dlaczego usuniĂŞcie nawiasĂłw klamrowych zmienia dziaÂłanie programu

program misi_pysio;
uses crt,dos;
var i:byte;
procedure wzorek;
{var i:integer; }
begin
for i:=1 to 20 do write(i:3);
writeln;
end;

begin clrscr;
for i:=1to 20 do wzorek;
readkey;
end.
« Ostatnia zmiana: Styczeń 09, 2012, 13:09:54 wysłane przez admin » Zapisane
Strony: [1]
  Drukuj  
 
Skocz do:  

Powered by SMF 1.1.11 | SMF © 2006-2008, Simple Machines LLC | Sitemap

Polityka cookies
Darmowe Fora | Darmowe Forum

spw zlotasiodemka moikrewni proskills articz