Pętle repeat i while.
INSTRUKCJA REPEAT. .. UNTIL
repeat {powtarzaj dopóki}
instrukcja_1 {wykonywana gdy warunek nie jest spełniony}
instrukcja_n
until < warunek >
Zadanie 1. Napisz program który powtarza napis "informatyka" dopóki nie wciśniesz klawisz "n" lub "N".
program napis;
var znak: char;
begin
repeat
writeln ('informatyka')
writeln ("czy dalej t/n');
readln(znak);
until (znak='n') or (znak='N');
end.
Zadanie 2. Napisz program obliczający sumę pięciu liczb wczytanych z klawiatury.
Zadanie 3. Napisz program, który czyta kolejne liczby i liczy ich sumę aż do napotkania liczby 0. Program wyświetla tymczasową sumę. Wynik obliczenia wyświetl z dokładnością do dwóch miejsc po przecinku.
Zadanie 4. Napisz program, którego działanie polega na obliczeniu kwadratu dowolnie wprowadzonej
z klawiatury liczby. Po wykonaniu obliczenia program powinien zapytać, czy obliczyć sześcian następnej
liczby. Powtarzanie działania programu powinno trwać tak długo dopóki nie naciśniesz klawisza innego niż`t' lub `T'.
Zadanie 5. Napisz program, którego działanie polega na obliczeniu średniej arytmetycznej dowolnej ilości liczb wprowadzonych z klawiatury. Działanie programu powinno zostać przerwane po tym jak suma liczb przekroczy 2001.
DO WHILE - POWTARZAJ
WHILE - DO jest instrukcją pętli z kontrolowanym WEJŚCIEM. Jej działanie polega na obliczeniu wartości warunku i dopiero wtedy wykonaniu instrukcji lub ciągu instrukcji. Jej ogólna postać wygląda następująco:
WHILE warunek DO DOPÓKI warunek jest spełniony WYKONUJ
BEGIN warunek jest sprawdzany na początku wykonania serii instrukcji
instrukcja 1; jest spełniony - prawdę
instrukcja 2; nie jest spełniony - fałsz .
....
instrukcja n;
END;
Zadanie 6. Napisz program, który sprawdza poprawność działania 2+2=4.
Program sprawdz;
var x : byte;
begin
while x<>4 do
begin
write(' Podaj wynik dodawania 2 + 2 = ');
readln(x);
end;
writeln('Dziekuje, wynik poprawny');
end.
Zadanie 7. Napisz program, który oblicza sumę czterech liczb wprowadzonych z klawiatury.
Zadanie 8. wczytuje liczbę całkowitą z klawiatury. Program powinien przyjmować jedynie liczę dodatnia. W przypadku gdy liczba nie jest dodatnia powinien być wyświetlony komunikat o błędzie i ponowiona próba wczytania liczby.
Zadanie 9. wczytuje z klawiatury liczbę aż do momentu gdy będzie ona należała do przedziału <0;100>
Zadanie 10. wyświetla liczby parzyste dopóki ich sumę nie przekroczy 20
Zadanie 11. wczytuje z klawiatury poprawny numer miesiąca tzn. liczbę z przedziału <1;12>. Zakładamy, że możliwe są tylko 3 próby podania poprawnego numeru. Do liczenia prób wprowadź zmienną określającą licznik, zwiększaną w każdym obrocie pętli.
Zadanie 12. wczytuje z klawiatury liczby rzeczywiste aż do momentu, gdy podana liczba jest równa 0, a następnie wyświetla na ekranie sumę i średnia arytmetyczną tych liczb.
Zadanie 13. liczący pole kwadratu podanej długości boku. W przypadku podania niewłaściwej wartości, czyli zera lub liczby ujemnej, program wyświetla komunikat z prośbą o podanie poprawnej wartości.
Realizacja algorytmów iteracyjnych w Pascalu - pętla for.
for licznik := początek to koniec do instrukcja
lub
for licznik := początek downto koniec do instrukcja
np. for i := 1 to 10 do write(i);
Zadanie 13. Napisz program który wpisuje liczby od 1 do 10, a następnie w dół - od 10 do 1.
program zliczanie;
var
i : Byte;
begin
for i := 1 to 10 do { zliczamy w górę od 1 do 10 }
write(i, ' ');
writeln;
for i:= 10 downto 1 do { a następnie w dół od 10 do 1 }
write(i, ' ');
writeln;
readln;
end.
.
Zadanie 14. Napisz program który z gwiazdek (*) rysuje kwadrat 10 na 10.
Zadanie 15. Napisz program który oblicza iloczyn n kolejnych liczb naturalnych (począwszy od
Zadanie 16. Napisz program który oblicza średnią N podanych przez użytkownika liczb.
zadanie 17. Napisz program który oblicza wartość silni dla liczby N
zadanie 18. Napisz program który wyświetla kwadrat z gwiazdek o boku n.
zadanie 19. Napisz program który wyświetla tabliczkę mnożenia (10 x 10).