Zadanie 6
Matura z informatyki, maj 2023, poziom rozszerzony
Wymaganie: II.4) przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: b) stosuje zaawansowane funkcje arkusza kalkulacyjnego w zależności od rodzaju danych […]. P.II.3) przygotowuje opracowania rozwiązań problemów, posługując się wybranymi aplikacjami: b) gromadzi dane pochodzące z różnych źródeł w tabeli arkusza kalkulacyjnego, korzysta z różnorodnych funkcji arkusza w zależności od rodzaju danych, filtruje dane według kilku kryteriów, dobiera odpowiednie wykresy do zaprezentowania danych, analizuje dane, korzystając z dodatkowych narzędzi, w tym z tabel i wykresów przestawnych.
Treść zadania
Zadanie 6. Konfitury owocowe
W pliku owoce.txt zapisano informacje o dostawach owoców do przetwórni w okresie od 01.05.2020 do 30.09.2020. W każdym wierszu podane są: data dostawy (dd.mm.rrrr), liczba kilogramów dostarczonych malin, liczba kilogramów dostarczonych truskawek i liczba kilogramów dostarczonych porzeczek, oddzielone znakiem tabulacji. Dostawy odbywały się każdego dnia w wymienionym okresie. Pierwszy wiersz pliku to nagłówek: data, dostawa_malin, dostawa_truskawek, dostawa_porzeczek.
Z wykorzystaniem dostępnych narzędzi informatycznych podaj odpowiedzi do poniższych zadań. Odpowiedzi zapisz w pliku wyniki6.txt, a każdą z nich poprzedź numerem odpowiedniego zadania.
Zadanie 6.1. (0–3) Dla każdego miesiąca pracy przetwórni (od maja do września) wykonaj zestawienie liczby dostarczonych kilogramów malin, liczby dostarczonych kilogramów truskawek i liczby dostarczonych kilogramów porzeczek. Na podstawie wykonanego zestawienia utwórz wykres kolumnowy. Pamiętaj o czytelnym opisie wykresu (tytuł, legenda, opisy osi: na osi X – nazwy miesięcy, na osi Y – liczba kilogramów).
Zadanie 6.2. (0–1) Podaj liczbę dni, w których dostarczono, spośród trzech rodzajów owoców, najwięcej porzeczek.
Informacja do zadań 6.3. i 6.4. Przetwórnia produkuje konfitury: malinowo-truskawkowe, malinowo-porzeczkowe oraz truskawkowo-porzeczkowe (zawsze w proporcji owoców 1:1 oraz z wykorzystaniem maksymalnej dostępnej ilości owoców). Decyzja, jaka konfitura w danym dniu będzie produkowana, zależy od ilości owoców w przetwórni.
Owoce są dostarczane do przetwórni rano, przed rozpoczęciem produkcji. W danym dniu jest produkowany tylko jeden rodzaj konfitur. Do produkcji są brane owoce, których jest najwięcej w przetwórni (dla danych w pliku owoce.txt nie występuje przypadek, gdy ilość różnych owoców jest taka sama). Owoce niewykorzystane do produkcji są przechowywane w chłodni do następnego dnia. W następnym dniu podejmuje się decyzję o produkcji na ten dzień na podstawie łącznej ilości owoców pozostałych z poprzedniego dnia oraz dostarczonych rano.
Przykład: Jeżeli 01.05.2020 dostarczono 211 kg malin, 281 kg truskawek i 88 kg porzeczek, to w tym dniu będzie produkowana konfitura malinowo-truskawkowa. Do produkcji wykorzystane zostanie 211 kg malin i 211 kg truskawek. Reszta truskawek i wszystkie porzeczki będą przechowywane w chłodni do następnego dnia. Po dostawie z 02.05.2020 (393 kg malin, 313 kg truskawek i 83 kg porzeczek) w przetwórni będzie 393 kg malin, 383 kg truskawek i 171 kg porzeczek, czyli znowu będzie produkowana konfitura malinowo-truskawkowa.
Zadanie 6.3. (0–3) Podaj, ile razy, w okresie od 01.05.2020 do 30.09.2020, produkowano konfitury poszczególnych rodzajów.
Zadanie 6.4. (0–3) Na wyprodukowanie 1 kg konfitur dwuowocowych potrzeba po 1 kg każdego owocu. Podaj, ile kilogramów konfitur każdego rodzaju wyprodukowano w okresie od 01.05.2020 do 30.09.2020.
Źródło: arkusz CKE MINP-R0-100-2305. Otwórz oryginalny PDF
Rozwiązanie
Odpowiedzi z zasad oceniania CKE:
6.1. Zestawienie (kg):
| miesiąc | maliny | truskawki | porzeczki |
|---|---|---|---|
| maj | 9238 | 9287 | 3309 |
| czerwiec | 9485 | 8916 | 5081 |
| lipiec | 11592 | 11339 | 10567 |
| sierpień | 11045 | 11386 | 11078 |
| wrzesień | 6532 | 7476 | 6355 |
oraz wykres kolumnowy (trzy serie, nazwy miesięcy na osi X, legenda, tytuł, opis osi Y).
6.2. 19 dni.
6.3. malinowo-porzeczkowe 41, malinowo-truskawkowe 72, truskawkowo-porzeczkowe 40 (razem 153 dni).
6.4. malinowo-porzeczkowe 18008 kg, malinowo-truskawkowe 29732 kg, truskawkowo-porzeczkowe 18382 kg.
Przykładowa realizacja (Python):
import pandas as pd
df = pd.read_csv("owoce.txt", sep="\t")
df["data"] = pd.to_datetime(df["data"], format="%d.%m.%Y")
# 6.1
zest = df.groupby(df["data"].dt.month)[["dostawa_malin", "dostawa_truskawek", "dostawa_porzeczek"]].sum()
# 6.2 – porzeczek dostarczono więcej niż malin i więcej niż truskawek
print(((df.dostawa_porzeczek > df.dostawa_malin) & (df.dostawa_porzeczek > df.dostawa_truskawek)).sum())
# 6.3 i 6.4 – symulacja z chłodnią
zapas = {"maliny": 0, "truskawki": 0, "porzeczki": 0}
ile = {}
kg = {}
for _, r in df.iterrows():
zapas["maliny"] += r.dostawa_malin
zapas["truskawki"] += r.dostawa_truskawek
zapas["porzeczki"] += r.dostawa_porzeczek
a, b = sorted(zapas, key=zapas.get, reverse=True)[:2] # dwa owoce, których jest najwięcej
uzyte = zapas[b] # mniejsza z dwóch ilości
zapas[a] -= uzyte
zapas[b] -= uzyte
rodzaj = "-".join(sorted((a, b)))
ile[rodzaj] = ile.get(rodzaj, 0) + 1
kg[rodzaj] = kg.get(rodzaj, 0) + uzyte # 1 kg konfitury = 1 kg owocu A + 1 kg owocu B
print(ile, kg)
Zad. 6.3 i 6.4 — o rodzaju konfitury decyduje stan przetwórni po porannej dostawie (z zapasem z chłodni), a nie sama dzienna dostawa; symulacja musi przenosić niewykorzystane owoce na kolejny dzień. Zad. 6.4 — 1 kg konfitury wymaga 1 kg każdego z dwóch owoców, więc masa konfitury jest równa zużyciu jednego owocu (połowie łącznej masy zużytych owoców). Zasady oceniania dają 2 pkt za liczby dwa razy większe od poprawnych i 1 pkt za samą łączną sumę (66122). Zad. 6.2 — pytanie dotyczy dostaw danego dnia, nie stanu w chłodni.
Strona arkusza CKE z treścią zadania
Rozwiązanie
6.1. Zestawienie miesięczne + wykres
Grupuj owoce.txt po miesiącu (V–IX), sumuj kg każdego owocu, narysuj wykres kolumnowy zgrupowany.
6.2. Dni z przewagą porzeczek (dostawy)
Filtruj wiersze gdzie porzeczki > maliny i porzeczki > truskawki.
6.3. Symulacja cyklu produkcji
Stan magazynu = (m, t, p) na początek dnia. Po dostawie sumuj. Wybierz parę owoców o największej dostępnej ilości łącznej (z zapasem). Zużyj min(x, y) z pary. Reszta + niewykorzystany trzeci owoc → chłodnia.
6.4. Kg konfitur
Dla każdego dnia produkcji dodaj min(x, y) do licznika danej konfitury. Suma to wynik.
Rozumiesz, jak to rozwiązać?
Przećwicz podobne typy zadań w aplikacji
matury-online.pl ma tysiące zadań pogrupowanych po dziedzinach. Sprawdź, czy temat „arkusz kalkulacyjny, przetwarzanie danych, wykres kolumnowy, symulacja produkcji” zrobisz samodzielnie.
Otwórz matury-online.pl