Adam Czech L1 Ćwiczenie 7

background image

Kierunek: Informatyka III
Przedmiot: Bazy danych

Opole 2013

POLITECHNIKA OPOLSKA

Ćwiczenie 7

Wykonał:

Adam Czech

background image

Kierunek: Informatyka III
Przedmiot: Bazy danych

1

1. Zadania do wykonania

Korzystając z pętli FOR wypisać liczby pierwsze z zakresu od 0 do a, gdzie a-liczba
naturalna podana z klawiatury.

Zdefiniować własny wyjątek za_malo_pracownikow. Obliczyć ilość pracowników
w każdym zespole. Jeśli w którymś zespole jest mniej niż trzech pracowników
zasygnalizować wystąpienie wyjątku. Użytkownik może wywoływać ręcznie
zarówno błędy systemowe, jak i zdefiniowane przez siebie. Każdy wywołany błąd
powinien zostać obsłużony przez odpowiednią procedurę obsługi wyjątku.

2. Zadania wykonane

Korzystając z pętli FOR wypisać liczby pierwsze z zakresu od 0 do a, gdzie a-liczba
naturalna podana z klawiatury.

background image

Kierunek: Informatyka III
Przedmiot: Bazy danych

2

DECLARE

a INTEGER;

reszta NUMBER;

dzieli_sie VARCHAR2(1);

BEGIN

DBMS_OUTPUT.PUT_LINE('Podaj libczê wiêksz¹ od 2:');

a:=&liczba; -- wczytanie liczby z klawiatury

IF a < 3 THEN -- dopilnowane, aby byla wieksza, niz 2 ( inaczej algorytm nie ma sensu )

DBMS_OUTPUT.PUT_LINE('Podana liczba musi by&#230; wi&#234;ksza ni&#191; 2!');

RETURN;

END IF;

FOR i IN 2..a LOOP -- petla pierwsza, ktora generuje zakres liczb od 2 do podanej z klawiatury

dzieli_sie:='n'; -- liczby z tego zakresu beda kolejno sprawdzane w drugiej, zagniezdzonej petli

FOR j IN 2..i LOOP -- pod katem podzielnosci przez wszystkie liczby miedzy 2 i soba, ktorych to

liczb

IF j!=i THEN -- dostarcza iterator j

reszta:=i MOD j; -- podzielnosc sprawdzana poprzez wynik reszty z dzielenia

IF reszta=0 THEN -- decyzja o wypisaniu liczby podejmowana na podstawie zawartosci zmiennej

znakowej

dzieli_sie:='t'; -- traktowanej jako zmienna logiczna.

END IF;

END IF;

END LOOP;

IF dzieli_sie='n' THEN

DBMS_OUTPUT.PUT_LINE(i);

END IF;

END LOOP;

END;

/

background image

Kierunek: Informatyka III
Przedmiot: Bazy danych

3

Zdefiniować własny wyjątek za_malo_pracownikow. Obliczyć ilość pracowników
w każdym zespole. Jeśli w którymś zespole jest mniej niż trzech pracowników
zasygnalizować wystąpienie wyjątku. Użytkownik może wywoływać ręcznie
zarówno błędy systemowe, jak i zdefiniowane przez siebie. Każdy wywołany błąd
powinien zostać obsłużony przez odpowiednią procedurę obsługi wyjątku.

DECLARE

V_A NUMBER:=0;

ZA_MALO_PRACOWNIKOW EXCEPTION;

V_LICZBA NUMBER := &LICZBA;

BEGIN

SELECT COUNT(*) INTO V_A FROM PRAC WHERE ID_ZESP = V_LICZBA;

IF(V_A<3) THEN

RAISE ZA_MALO_PRACOWNIKOW;

ELSE

DBMS_OUTPUT.PUT_LINE('ILOSC PRACOWNIKOW ' || V_A);

DBMS_OUTPUT.PUT_LINE('W ZESPOLE ' || V_LICZBA);

END IF;

EXCEPTION

WHEN ZA_MALO_PRACOWNIKOW THEN

DBMS_OUTPUT.PUT_LINE('W ZESPOLE '||V_A||' jest za malo pracownikow, bo jedynie

'||V_A);

END;

/


Wyszukiwarka

Podobne podstrony:
Adam Czech L1 Ćwiczenie 4
Adam Czech L1 Ćwiczenie 9
Adam Czech L1 Ćwiczenie 8
Adam Czech L1 Ćwiczenie 6
Adam Czech L1 Ćwiczenie 3
l1, ćwiczenia z literkami
Adam Czech ccna3 166797 204102
Sprawozdanie Adam Czech
Adam Czech ccna4 list 166797 204115
Adam Czech ccna4 166797 204115
Adam Czech ccna3 list 166797 204102
Adam Czech Sprawozdanie
Adam Błaszczak Opis Ćwiczeń 23 12 2013
Adam Czech Sprawozdanie
Ćwiczenie 40, Ćwiczenie 40 (1), Adam Wasilewski

więcej podobnych podstron