Darmowe Forum
Maj 02, 2024, 14:15: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: powtórzenie pętle for... , repeat  (Przeczytany 7102 razy)
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« : Październik 24, 2011, 09:06:48 »

Zadanie 1. Napisać program proszący o podanie dwóch liczb: a, b. Po wprowadzeniu liczb wyświetla a znaków * w b wierszach.

program ergonometrus;
uses crt,dos;
var x,y,a,b: integer;
begin
clrscr;
write('Podaj pierwsza liczbe: ');readln(x);
 write('Podaj druga liczbe: ');readln(y);
   for a:=1 to x do
   begin
   for b:=1 to y do write('* ');
   writeln;
   end;
   readkey;
   end.
« Ostatnia zmiana: Październik 24, 2011, 10:11:09 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #1 : Październik 24, 2011, 10:25:43 »

Zmiana koloru tła.

W Turbo Pascalu możliwa jest zmiana koloru tła. Aby zmienić kolor tła należy wpisać polecenie:
textbackground(x);
clrscr;


1 - x może przyjmować wartości od 0  do 7.
2 - Polecenie clrscr jest potrzebne  do wyczyszczenia tła. Jeżeli po poleceniu zmiany koloru nie zastosowano by  polecenia czyszczenia ekranu (clrscr) zmienione zostanie tylko tło czcionki. 

Przykład.
program ergonometrus;
uses crt,dos;
var x,y,a,b: integer;
begin
textbackground(2);
clrscr;

write('Podaj pierwsza liczbe: ');readln(x);
 write('Podaj druga liczbe: ');readln(y);
   for a:=1 to x do
   begin
   for b:=1 to y do write('* ');
   writeln;
   end;
   readkey;
   end.
« Ostatnia zmiana: Listopad 06, 2011, 05:42:13 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #2 : Październik 24, 2011, 10:48:06 »

Przykład 2. Napisać program który zmienia kolor tła i pokazuje wartość argumentu polecenia textbackground(x).



program ergonometrus;
uses crt,dos;
var x,y: integer;
begin
 x:=0;
 repeat
 textbackground(x);
 clrscr;
   x:=x mod 8;
 write('Kolor tla: ',x);delay(1000);x:=x+1;
 until keypressed;
 end.
« Ostatnia zmiana: Październik 24, 2011, 10:58:36 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #3 : Październik 24, 2011, 10:53:11 »

Polecenie zmiany koloru czcionki: textcolor(x).
Zmiana koloru czcionki jest możliwa przez wykorzystanie polecenia textcolor(x);
Argument x przyjmuje wartości od 0 do 15.

Przykład

program ergonometrus;
uses crt,dos;
var x,y: integer;
begin
 x:=0;
 repeat
 textbackground(x);
 clrscr;
 x:=x+1;   x:=x mod 8;
 textcolor(4);
 write('Kolor tla: ',x);delay(1000);
 until keypressed;
 end.
Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #4 : Listopad 04, 2011, 10:40:44 »

Zadanie 3. Proszę napisać program na pętli for który będzie zmieniał kolory tła. Kolory zmieniają się bez przerwy.

program zyzio;
uses crt,dos;
var x,y:byte;
begin
for x:=0 to 7 do
begin
textcolor(x);clrscr; write(x);delay(100);
if x=7 then x:=0;

end;end.
« Ostatnia zmiana: Listopad 04, 2011, 10:46:38 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #5 : Listopad 06, 2011, 05:44:35 »

Zadanie 4. Napisać program który wykorzystuje pętlę repeat ..until do zmiany koloru tła. Kolor tła zmieniany jest do czasu wciśnięcia dowolnego klawisza.

program zmieniacz;
uses crt,dos;
var x:word;
begin
clrscr;x:=1;
repeat
textbackground(x);
clrscr; delay(200);x:=x+1;
if x=7 then x:=0;
until keypressed;
end.
« Ostatnia zmiana: Listopad 07, 2011, 04:25:37 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #6 : Listopad 06, 2011, 05:45:55 »

Zadanie 5. Napisać program w którym literka "a" przemieszcza się od lewej do prawej strony ekranu. Wciśniecie dowolnego klawisza zatrzymuje program.

program zmieniacz;
uses crt,dos;
var x,y,z:word;
begin
clrscr;x:=2; z:=1;
repeat
gotoxy(x,10);write('a');delay(100);
clrscr;x:=x+z;
if x=65 then z:=-z;
if x=1  then z:=-z;
until keypressed;
end.
« Ostatnia zmiana: Listopad 07, 2011, 04:29:37 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #7 : Listopad 06, 2011, 05:49:22 »

Zadanie 6. Napisać program w którym litera "A" przemieszcza się poziomo na ekranie odbijając się od jego krawędzi. Przy każdym odbiciu zmieniany jest kolor tła i literki. Uwaga: kolor tła i litery nie moga mieć tych samych wartości.

program zmieniacz1;
uses crt,dos;
var x,y,z,a,b:word;
begin
clrscr;x:=2; z:=1;a:=1;b:=1;
repeat
gotoxy(x,10);write('A');delay(100);
clrscr;x:=x+z;
if x=65 then
 begin z:=-z;repeat a:=(a+1) mod 7;b:=(b+1)mod 15;until a<>b;
 textcolor(a);textbackground(b);
 end;
if x=1  then
begin z:=-z;repeat a:=(a+1) mod 7;b:=(b+1)mod 15;until a<>b;
textcolor(a);textbackground(b);
 end;
until keypressed;
end.
« Ostatnia zmiana: Listopad 07, 2011, 09:08:38 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #8 : Listopad 06, 2011, 05:51:59 »

Zadanie 7. Napisać program który prosi o podanie hasła. Jeżeli trzy razy hasło zostanie podanie niepoprawnie, ekran przyjmuje barwę zieloną. Na ekranie pionowo przemieszcza się czerwony napis "BRAK DOSTĘPU!!!!"

program zmieniacz8;
uses crt,dos;
var x,y,z:word;
haslo:string;
begin
clrscr;x:=0;y:=3;z:=1;
repeat

if x=3 then
begin
textbackground(green);textcolor(red);
repeat
gotoxy(20,y); write('BRAK DOSTEPU!!!!!');y:=y+z;
delay(200);
clrscr;
if y>20 then z:=-z;
 if y<2 then z:=-z;
  until keypressed;
   end;

gotoxy(40,10);write('Podaj haslo: ');readln(haslo);
x:=x+1; clrscr;
until haslo='rysio';

end.
« Ostatnia zmiana: Listopad 07, 2011, 09:07:38 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #9 : Listopad 07, 2011, 08:10:52 »

Zadanie 8. Napisać program który wyświetli na ekranie tabliczkę mnożenia 10x10. Do napisania programu wykorzystać pętlę for

Program rysio_misio;
uses crt,dos;
var x,y,z:word;
begin clrscr;
for x:=1 to 10 do
begin
for y:=1 to 10 do
write(x*y:4);
writeln; writeln;
end;
readkey;
end.
« Ostatnia zmiana: Listopad 07, 2011, 10:29:40 wysłane przez admin » Zapisane
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« Odpowiedz #10 : Listopad 07, 2011, 08:15:00 »

Zadanie 9. Napisać program proszący o podanie dwóch liczb a, b. Następnie wyświetlający tabliczkę mnożenia a x b. Np. jeżeli podanidano a=4 i b=5 to wyświetlona zostanie tabliczka o rozmiarach 4 x 5. W kodzie wykorzystać pętle repeat i for.

Program cebula;
uses crt,dos;
var a,b,z,w:word;
begin clrscr;
write('Podaj pierwsza liczbe: ');readln(a);
write('Podaj pierwsza liczbe: ');readln(b);

for z:=1 to a do
                begin
            w:=1; writeln;writeln;
            repeat
                  write((z*w):4);
                  w:=w+1;
                  until w>=b+1;
                  end;
    readkey;
end.
« Ostatnia zmiana: Listopad 07, 2011, 11:26:31 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

justplay endermanpl croissanta garage cybersteam