Przeczytaj
Zadanie 1. Podróż pociągiem
Pani Bitowa jedzie pociągiem z Chełma do Zamościa.
Jeśli założymy, że trasa z jednego miasta do drugiego leży na linii prostej będącej osią OX, to bieg torów na mapie można opisać funkcją .
Przyjmij, że funkcja jest ciągła w przedziale .
Zadanie 1.1
Pani Bitowa chce się dowiedzieć, jaka jest odległość między Chełmem a Zamościem na mapie w linii prostej. Wiadomo, że dla podanych założeń Chełm jest w punkcie , natomiast Zamość znajduje w przedziale .

Załóż, że funkcja na końcach przedziału przyjmuje różne znaki oraz że w podanym przedziale jest określona i ciągła.
Napisz program, który obliczy odległość od Chełma do Zamościa na mapie w linii prostej według podanych powyżej założeń, z przybliżeniem równym:
Długość odcinka ograniczonego punktami A oraz B można obliczyć ze wzoru: .
Do oceny oddajesz:
plik
odleglosc.txtzawierający odpowiedź (odległość między Chełmem a Zamościem w linii prostej; wynik podany z przybliżeniem równym: ),plik(i) z komputerową realizacją zadania.
Przedstaw rozwiązanie zadania w postaci programu w języku C++, Java lub Python.
Rozwiązanie
Rozwiązanie przedstawimy w postaci pseudokodu, ponieważ na egzaminie maturalnym można korzystać z samodzielnie wybranego języka programowania: C++, Java lub Python.
Zauważmy, że skoro zarówno Chełm, jak i Zamość leżą na osi OX, to są miejscami zerowymi funkcji opisującej tory. W związku z tym wzór na odległość między obydwoma miastami upraszcza się do następującej postaci:
Wystarczy zatem znaleźć położenie drugiego miejsca zerowego, czyli Zamościa, i obliczyć wartość bezwzględną (inaczej moduł) z różnicy obu miejsc zerowych.
W celu znalezienia położenia Zamościa skorzystamy z metody bisekcji. Przystąpmy do zapisania programu:
W głównej części kodu zapisujemy dane potrzebne do obliczenia drugiego miejsca zerowego funkcji oraz długości odcinka ograniczonego przez miejsca zerowe podanej funkcji. [linie kodu od do ]
Następnie wypisujemy wynik, czyli długość odcinka między dwoma punktami. Oba punkty są miejscami zerowymi, zatem wypisujemy wartość bezwzględną ich różnicy jako odległość na osi
OX. [linia kodu ]
Definiujemy funkcję, która dla podanych ograniczeń przedziału, dokładności oraz szukanej wartości funkcji zwróci wartość argumentu (w tym przypadku miejsca zerowego). [linia kodu ]
Wykonujemy algorytm bisekcji:
Algorytm wykonujemy, dopóki odległość między wartościami funkcji dla punktów skrajnych przedziału jest większa niż dokładność. [linia kodu ]
Ustalamy środek przedziału. Jeżeli jego wartość różni się od o mniej niż epsilon, to znaczy, że znaleźliśmy miejsce zerowe z zadaną dokładnością i możemy przerwać pętlę. W przeciwnym wypadku, w zależności od iloczynu wartości funkcji w środku i na brzegach, aktualizujemy jeden z brzegów przedziału, zawężając go. [linie kodu od do ]
Na koniec zwracamy przybliżoną wartość znalezionego miejsca zerowego. [linia kodu ]
Definiujemy funkcję, która dla wartości
xzwraca wartość funkcji podanej w zadaniu.
Definiujemy funkcję, która zwróci wartość bezwzględną podanej zmiennej. [linia kodu ]
Jeżeli wartość zmiennej jest większa lub równa , zwracamy pierwotną wartość zmiennej. [linie kodu , ]
Jeżeli jednak wartość zmiennej jest mniejsza od , zwracamy wartość przeciwną do wartości zmiennej. [linie kodu od do ]
Odpowiedź do zadania
Uwaga: Ze względu na niedokładność odpowiedź może się różnić o .
Zadanie 1.2
W celu odwiedzenia rezerwatu przyrody położonego między Chełmem a Zamościem, pani Bitowa postanowiła zmienić trasę przejazdu. Rezerwat znajduje się w przedziale oraz przyjmuje wartość funkcji równą . Załóżmy, że w danym przedziale nie istnieje inny punkt o wartości równej .
Napisz program obliczający obwód trójkąta. Wierzchołki tego trójkąta znajdują się na wykresie w punktach zawierających: Chełm, Zamość oraz rezerwat przyrody według podanych w zadaniu założeń, z przybliżeniem równym .
Odpowiedź podaj w zaokrągleniu do dwóch miejsc po przecinku.
Załóż, że funkcja na końcach przedziału przyjmuje różne znaki oraz że w podanym przedziale jest określona i ciągła.
Do przygotowania rozwiązania w pseudokodzie użyj następujących funkcji:
moduł(x) – która dla wartości x zwraca jej wartość bezwzględną
oraz:
zaokrąglij(x) – która zaokrągla wartość x do dwóch miejsc po przecinku.
Do oceny oddajesz:
plik
obwod.txtzawierający odpowiedź (obwód trójkąta, którego wierzchołki na wykresie odpowiadają punktom oznaczającym: Chełm, Zamość oraz rezerwat przyrody; wynik podany z przybliżeniem równym ),plik(i) z komputerową realizacją zadania.
Przedstaw rozwiązanie zadania w postaci programu w języku C++, Java lub Python. Odpowiedź do zadania znajdziesz pod omówieniem pseudokodu.
Rozwiązanie
Rozwiązanie przedstawimy w postaci pseudokodu, ponieważ na egzaminie maturalnym można korzystać z samodzielnie wybranego języka programowania: C++, Java lub Python.
W głównej części kodu korzystamy z położenia Chełma (
x1), przybliżenia () oraz punktówpoczątekZ,koniecZ, poczatekRorazkoniecR, oznaczających zakresy przedziałówprzedziałów, w których znajdują się Zamość oraz rezerwat. [linie kodu od 1 do 6]Następnie za pomocą metody bisekcji obliczamy położenie Zamościa oraz rezerwatu na osi
OX. [linie kodu 7 do 8]Mając wszystkie trzy punkty i znając ich wartości funkcji (0 dla Chełma i Zamościa oraz 1 dla rezerwatu), wyliczamy obwód trójkąta za pomocą funkcji
obwód().
Funkcja analogiczna do funkcji
bisekcja()opisanej w zadaniu 1.1.
Definiujemy funkcję, która dla podanych punktów zwróci obwód trójkąta, którego wierzchołki znajdują się w tych punktach. [linia kodu ]
Obliczenie długości odcinka
xybędzie przebiegało tak, jak w zadaniu 1.1 – czyli dzięki temu, że oba punkty są pierwiastkami funkcji, możemy pominąć wartościywe wzorze na odległość. [linia kodu ]Przy obliczaniu długości
xzorazyznależy skorzystać z pełnego wzoru na odległości punktów. [linie kodu , ]Na koniec zwracamy zaokrąglony odpowiednio obwód trójkąta. [linia kodu ]
Funkcja analogiczna do funkcji
f()opisanej w zadaniu 1.1.
Funkcja analogiczna do funkcji
moduł()opisanej w zadaniu 1.1.
Odpowiedź do zadania
Uwaga: Ze względu na niedokładność odpowiedź może się różnić o .
Słownik
funkcja, której wykres da się narysować bez odrywania długopisu od papieru
zbiór elementów zbioru zawartych między dwoma ustalonymi elementami tego zbioru, nazywanymi początkiem i końcem przedziału; pewien obszar na wykresie funkcji, znajdujący się między dwoma punktami; obszar ten oznacza spójny podzbiór liczb rzeczywistych