Darmowe Forum
Kwiecień 16, 2025, 15:26:58 *
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: PĂŞtla for..... - czyli jak powtarzaĂŚ fragment programu  (Przeczytany 14335 razy)
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« : Październik 22, 2010, 08:54:51 »

W programach bardzo czêsto pojawia siê koniecznoœÌ powtarzania pewnej czêœci kodu. W Pascalu dostêpne s¹ trzy rodzaje pêtli. Jedn¹ z nich jest pêtla for.
SkÂładnia pĂŞtli for... wyglÂąda nastĂŞpujÂąco:
For (wartoœÌ pocz¹tkowa licznika) to (wartoœÌ koùcowa licznika) do (polecenie);

Uwaga: W tym przypadku wartoœÌ pocz¹tkowa musi byÌ mniejsza lub równa wartoœci koùcowej licznika. Licznik to liczba ca³kowita która zmienia swoj¹ wartoœÌ po ka¿dym obrocie pêtli. Pêtla dzia³a tak d³ugo jak d³ugo wartoœÌ licznika nie przekroczy wartoœci umieszczonej po s³owie to ( musi byÌ wiêksza!!!). Jak widaÌ przedstawiona powy¿ej sk³adnia dotyczy pêtli w której wartoœÌ licznika roœnie.
W pêtli for wartoœÌ licznika mo¿e byÌ równie¿ zmniejszana, sk³adnia takiej pêtli wygl¹da tak:
For (wartoœÌ poczÂątkowa licznika) downto (wartoœÌ koĂącowa licznika) do (polecenie); 

Uwaga: W tym przypadku wartoœÌ pocz¹tkowa licznika musi byÌ wiêksza od jej wartoœci koùcowej.

PrzykÂład pĂŞtli z licznikiem o rosnÂącej wartoÂści:
for x:=1 to 10 do writeln(x); pĂŞtla wyÂświetli liczby od 1 do 10 umieszczone jedna pod drugÂą.

PrzykÂład pĂŞtli o wartoÂści malejÂącej licznika:
for x:=10 downto 1 do writeln(x);  pĂŞtla wyÂświetli liczby od 10 do 1 umieszczone jedna pod drugÂą. 

Uwaga: jeÂżeli pomylisz wartoÂści licznika, pĂŞtla nie zadziaÂła!!!!!




 
« Ostatnia zmiana: Październik 22, 2010, 09:01:10 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #1 : Październik 25, 2010, 04:27:00 »

PrzykÂład 1. NapisaĂŚ program wyÂświetlajÂący na ekranie 10 razy napis : "Uwielbiam programowaĂŚ w Pascalu"
program zad1_2;
uses crt,dos;
var x:integer;
begin
clrscr;
for x:=1 to 10 do writeln('Lubie programowac w Pascalu!!!');
readkey;
end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #2 : Październik 25, 2010, 04:32:55 »

PrzykÂład 2.
NapisaĂŚ program ktĂłry wyÂświetli przemieszczajÂący siĂŞ od lewej do prawej strony napis: Adam.
WykorzystaĂŚ funkcjĂŞ gotoxy(x,y) i pĂŞtlĂŞ for....
program zad1_2;
uses crt,dos;
var x:integer;
begin
clrscr;
for x:=1 to 60 do
begin
clrscr;gotoxy(x,10);
writeln('Adam');delay(100);
end;
readkey;
end.

W programie wykorzystano instrukcjĂŞ grupujÂąca begin...end;
Polecenie gotoxy(x,y) sÂłuÂży do przemieszczania napisu, x zmienia siĂŞ w pĂŞtli wobec czego napis jest wyÂświetlany przesuniĂŞty coraz bardziej w prawo. Czyszczenie ekranu clrscr,wymazuje poprzedni napis, a polecenie delay(100) zatrzymuje program na 0.1 sekundy, dziĂŞki czemu ma siĂŞ wraÂżenie ruchu napisu. Polecenie delay(x) opisane jest w materiaÂłach dostarczonych PaĂąstwu. SprĂłbujcie zastÂąpiĂŚ wartoœÌ 100 innymi wartoÂściami np.1000 uzyskujÂąc spowolnienie ruchu napisu. 
« Ostatnia zmiana: Październik 25, 2010, 04:38:26 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #3 : Październik 25, 2010, 04:44:57 »

Zadanie 3. ProszĂŞ napisaĂŚ program w ktĂłrym napis "Adam" bĂŞdzie przemieszczaÂł siĂŞ od lewej do prawej, a pod nim napis "Ewa" przemieszcza siĂŞ od prawej do lewej. MajÂą mijaĂŚ siĂŞ mniej wiĂŞcej na Âśrodku ekranu.
program zad1_3;
uses crt,dos;
var x:integer;
begin
clrscr;
for x:=1 to 60 do
begin
clrscr;gotoxy(x,10);
write('Adam');
gotoxy(61-x,11);
write('Ewa');
delay(100);
end;
readkey;
end.

Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #4 : Październik 25, 2010, 04:47:42 »

Zadanie 4. NapisaÌ program który bêdzie pionowo (góra-dó³) przemieszcza³ napis: ADAM.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #5 : Listopad 08, 2010, 11:40:44 »

Program nr 7
Program prosi o podanie liczby od ktĂłrej ma wyÂświetlaĂŚ i liczby do ktĂłrej ma wyÂświetlaĂŚ. NastĂŞpnie wyÂświetla je na ekranie.


program a;
uses crt, dos;
var x,y,z:integer;
begin
clrscr;
write('Podaj od jakiej liczby wyswietlic: ');readln(y);
write('Podaj do ktorej liczby wyswietlic: ');readln(z);
for x:=y to z do
begin
writeln(x);sound(1000); delay(100);nosound;
 end;

readkey;
end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #6 : Listopad 08, 2010, 12:21:23 »

Zadanie 8. NapisaĂŚ program ktĂłry wyÂświetli imiĂŞ tyle razy ile wynosi wiek wprowadzajÂącego.



program milus;
uses crt,dos;
var x:string;
y,z:byte;
begin
clrscr;
write('Podaj swoje imie : ');readln(x);
write('Podaj swoj wiek: ');readln(y);
clrscr;
for z:=1 to y do
begin
writeln(z:5,' : ',x);
end;
readkey;
end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #7 : Listopad 08, 2010, 13:16:00 »

program milus;
uses crt,dos;
var x:string;
y:byte;
begin
clrscr;
for y:=1 to 60 do
begin
clrscr; gotoxy(y,10);write('ADAM');delay(50);
textcolor(y);

end;

readkey;
end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #8 : Listopad 15, 2010, 08:08:59 »

Zadanie 5. NapisaĂŚ program ktĂłry prosi o podanie nazwy, a nastĂŞpnie wyÂświetla jÂą na Âśrodku ekranu. Po 1 sekundzie napis zaczyna przemieszczaĂŚ siĂŞ w prawo.

program rurka;
uses crt,dos;
var x,y:integer;
z: string;
begin
 clrscr;
 gotoxy(30,10);write('Podaj nazwe: ');readln(z);
clrscr; gotoxy(35,10);write(z);
delay(1000);
for x:=1 to 30 do
begin
clrscr;gotoxy(30+x,10);write(z);delay(200);
end;


end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #9 : Listopad 15, 2010, 08:26:53 »

Zadanie 6. NapisaĂŚ program napis "Adam" przemieszcza od lewej do prawej. Po dojÂściu do prawego brzegu ekranu napis znika i pojawia siĂŞ ponownie z lewej strony przemieszczajÂąc siĂŞ do prawej. DziaÂłanie ta powtarzane jest 10 krotnie.

program rurka;
uses crt,dos;
var x,y:integer;
z: string;
begin
 clrscr;
z:='Adam';

for y:=1 to 10 do begin

for x:=1 to 60 do
begin
clrscr;gotoxy(x,10);write(z);gotoxy(60,1); write(y); delay(100);
end;
end;

end.
« Ostatnia zmiana: Listopad 15, 2010, 08:29:06 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #10 : Listopad 15, 2010, 09:21:40 »

Wykorzystanie funkcji randomize;
Funkcja randomize losuje liczby z podanego zakresu. PrzykÂład wykorzystania tej funkcji podano poniÂżej


program rurka;
uses crt,dos;
var x,y,a:integer;
z: string;
begin
 randomize;
 clrscr;
 for a:=1 to 1000 do
 begin
 x:=random(75);
 y:=random(30);
 gotoxy(x+1,y+1);write('*');delay(10);

 end;
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #11 : Listopad 15, 2010, 09:58:04 »

Zadanie 9. NapisaĂŚ program ktĂłry wyÂświetli kwadrat o rozmiarach 10x10 skÂładajÂący siĂŞ z gwiadek w kolorze zielonym.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #12 : Listopad 15, 2010, 10:01:45 »

Zadanie 9. NapisaĂŚ program ktĂłry wyÂświetli kwadrat o rozmiarach 10x10 skÂładajÂący siĂŞ z gwiadek w kolorze zielonym.

program rurka;
uses crt,dos;
var x,y,a,c:integer;
z: string;
begin
 randomize;
 clrscr;
 for x:=1 to 10 do
 begin
 for y:=1 to 10 do
 begin
 textcolor(green);
 gotoxy(x+30,y+5);write('*');
 end; end;
  readkey;
end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #13 : Listopad 15, 2010, 10:34:42 »

Zadanie 10. Klasyczna choinka, korzystajÂąca z pĂŞtli for.....

program rurka;
uses crt,dos;
var x,y,a,c:integer;
z: string;
begin
 randomize;
 clrscr;
 for x:=1 to 10 do
 begin
 for y:=1 to x do
 begin
 textcolor(green);
 gotoxy(x+30,y+5);write('*');
 end; end;
 for y:=1 to 10 do
 begin
 for x:=1 to 10- y do
 begin
 textcolor(green);
 gotoxy(x+40,y+5);write('*');
 end; end;
  readkey;
end.
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

shaggydogss articz zlotasiodemka spw moikrewni