6. Przykład sprawdzianu
Transkrypt
6. Przykład sprawdzianu
77 6. Przykład sprawdzianu Sprawdzian powinien być przeprowadzony po zrealizowaniu działu Grafika w języku programowania. Wymagana jest również znajomość algorytmu znajdowania minimum, a zwłaszcza równoczesnego znajdowania elementu najmniejszego i największego. Należy również omówić zastosowanie funkcji random(). Grupa A 1. 2. 3. 4. 5. Napisz program rysujący na ekranie monitora n okręgów o promieniu rn i pozycji środka okręgu (xn, yn). Program powinien poprosić użytkownika o wprowadzenie liczby okręgów n oraz dla każdego z okręgów wylosować rn, xn, yn, gdzie 0 <= xn < 640, 0 <= yn < 480, 0 <= rn < 100. Wskazówka: Do losowania należy użyć funkcji random(). (dopuszczający) Zmodyfikuj program z punktu 1 tak, aby żaden z rysowanych okręgów nie wychodził poza obręb monitora – jeżeli trzeba, zmniejsz promień rysowanego okręgu. (dostateczny) Zmodyfikuj program z punktu 2 tak, aby dodatkowo obliczał i – po wykonaniu rysunku, zaczekaniu na naciśnięcie dowolnego klawisza i zamknięciu ekranu graficznego – wypisywał: średnią arytmetyczną długości promieni wszystkich narysowanych okręgów, średnią arytmetyczną ich pozycji x oraz średnią arytmetyczną pozycji y. (dobry) Zmodyfikuj program z punktu 3 tak, aby uwzględniał możliwą wartość n = 0 oraz dodatkowo znajdował i wypisywał minimalną i maksymalną wielkość r. (bardzo dobry) Zmodyfikuj program z punktu 4 tak, aby po zakończeniu rysowania okręgów i naciśnięciu dowolnego klawisza ekran monitora był czyszczony oraz ponownie były rysowane na nim te same okręgi. Naciśnięcie klawisza ESC powinno kończyć program. Wskazówka: Przyjmij, że n <= 100. (celujący) Grupa B 1. 2. 3. 4. 5. Napisz program rysujący na ekranie monitora n odcinków o początku (xpn, ypn) i końcu (xkn, ykn). Program powinien poprosić użytkownika o wprowadzenie liczby odcinków n oraz dla każdego z odcinków wylosować xpn, ypn, xkn, ykn, gdzie 0 <= xpn < 640, 0 <= ypn < 480, 0 <= xkn < 640, 0 <= ykn < 480. Wskazówka: Do losowania użyć funkcji random(). (dopuszczający) Zmodyfikuj program z punktu 1 tak, aby długość żadnego z rysowanych odcinków nie była większa niż 100 (przy losowaniu odrzuć odcinki zbyt długie). (dostateczny) Zmodyfikuj program z punktu 2 tak, aby dodatkowo obliczał i – po wykonaniu rysunku, zaczekaniu na naciśnięcie dowolnego klawisza i zamknięciu trybu graficznego – wypisywał sumę długości wszystkich odcinków. Wskazówka: długość odcinka = pierwiastek((xkn – xpn)2 + (ykn – ypn)2). (dobry) Zmodyfikuj program z punktu 3 tak, aby dodatkowo znajdował i wypisywał minimalną i maksymalną długość odcinka. (bardzo dobry) Zmodyfikuj program z punktu 4 tak, aby po zakończeniu rysowania odcinków i naciśnięciu dowolnego klawisza ekran monitora był czyszczony oraz ponownie były rysowane na nim te same odcinki. Naciśnięcie klawisza ESC powinno kończyć program. Wskazówka: Przyjmij, że n <= 100. (celujący) 78 Grupa C 1. 2. 3. 4. 5. Napisz program rysujący na ekranie monitora n kwadratów o środku w punkcie (x, y) i długości boku a. Program powinien poprosić użytkownika o wprowadzenie liczby kwadratów n oraz dla każdego z kwadratów wylosować x i y, gdzie 0 <= x < 640, 0 <= y < 480 i obliczyć długość boku a jako 1/5 sumy współrzędnych x i y. Wskazówka: Do losowania użyć funkcji random(). (dopuszczający) Zmodyfikuj program z punktu 1 tak, aby powierzchnia każdego z rysowanych kwadratów była nie większa niż 1000 (przy losowaniu odrzuć kwadraty zbyt duże). (dostateczny) Zmodyfikuj program z punktu 2 tak, aby dodatkowo obliczał i – po wykonaniu rysunku, zaczekaniu na naciśnięcie dowolnego klawisza i zamknięciu trybu graficznego – wypisywał sumę powierzchni kół wpisanych w kwadraty. (dobry) Zmodyfikuj program z punktu 3 tak, aby odrzucał kwadraty o boku o długości 0 oraz dodatkowo znajdował i wypisywał minimalną i maksymalną powierzchnię kwadratu. (bardzo dobry) Zmodyfikuj program z punktu 4 tak, aby po zakończeniu rysowania kwadratów i naciśnięciu dowolnego klawisza ekran monitora był czyszczony oraz ponownie były rysowane na nim te same kwadraty aż do naciśnięcia klawisza ESC. (celujący) Uwagi: • program należy zapisać w katalogu roboczym pod nazwą SPR-XX.PAS, gdzie XX – numer autora programu w dzienniku lekcyjnym (jeżeli numer jest jednocyfrowy, należy poprzedzić go zerem), • na początku programu należy umieścić komentarz zawierający imię i nazwisko autora, • programy, które nie będą spełniały tych warunków, nie będą sprawdzane.