admin
|
|
« : 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
« 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
|
|
|
|
|