ROZWIĄZUJEMY - MATURA Z INFORMATYKI | MAJ 2021

KURS MATURALNY: https://www.encodeme-maturalnie.pl Wspólnie rozwiążemy maturę 2021 z informatyki od CKE! 👨‍🎓 🧑‍🎓 Jeśli materiał okazał się pomocny będę bardzo wdzięczny za ocenę filmu oraz zasubskrybowanie kanału! 💪 Facebook: https://www.facebook.com/encodeme Instagram: http://instagram.com/encodeme_maturalnie/ Kontakt: kontakt@encodeme-maturalnie.pl 00:00 - Wprowadzenie 05:11 - Zadanie 1 20:30 - Zadanie 2 38:5 ... Wasze opinie, komentarze:
- Po kilku miesiącach od naszej transmisji na oficjalne na stronie CKE pojawiły się odpowiedzi. Mamy zatem potwierdzenie, że odpowiedzi, które uzyskaliśmy są prawidłowe! :D
- Przychodzę tutaj już po wynikach podziękować za streamy i filmiki!!! Obejrzałem niektóre, podłapałem kilka sztuczek i dopiąłem wszystko na ostatni guzik, 94% z informatyki 🤯. Miałem kilka odpowiedzi błędnych, np w 6.2 zrobiłem to co było rozważane jako druga opcja, lub w excelu zamiast średniej całorocznej, choć powtarzali 3 razy, zrobiłem miesięczne, klucz odpowiedzi był chyba bardzo pobłażliwy bo tylko po jednym punkcie odjeli za takie rzeczy.
- Cześć! odnośnie pierwszego pseudokodu w zadaniu 1.2 :)

Przetestowałem w głowie oraz zaprogramowałem pseudokod który stworzyłeś i mam pewien problem.

n = 1
d = 0

while n != 0:
r = n % 10
d = d + (9-r)*n
n = n // 10
n = n * 10

print(d)

To jest w.wym. kod (python), który z oczywistych względów nie jest przydatny ponieważ nie pozwala wprowadzić zmiennej. W tym momencie zacząłem się zastanawiać, bo nie pisałem jeszcze matury, a dopiero się przygotowuję, czy tak to ma wyglądać. Uznałem, że może należy wprowadzić tu jednak możliwość prowadzenia zmiennej 'n' przez użytkownika, ale również tu napotkałem problem.

n = int(input())
d = 0

while n != 0:
r = n % 10
d = d + (9-r)*n
n = n // 10
n = n * 10

print(d)

W tym momecie wydaje mi się że złamałem zakaz podany w poleceniu tj. (..) Nie wolno w szczególności korzystać z żadnych funkcji zamiany z typu znakowego lub napisowego na liczbowy i odwrotnie. No i ok. To akurat specyfika pythona, gdybym napisał to w cpp, stworzenie zmiennej int n; nie było by problemem. Natomiast w tym momencie cała nasza pętla zaczyna się walić.
W linijce 6 i 8

d = d + (9-r)*n
n = n * 10

założeniem było aby liczba dopełniająca do 9 była mnożona przez kolejne potęgi 10 tak by została stworzona liczba o długości naszego n. Tylko w tym momencie, nasze 'n' nie równa się już '1' jak na początku tylko przykładowo 4067 i wszystko diabli biorą. Rozwiązałem ten problem w poniższy sposób dopisując zmienną z.

n = int(input())
d = 0
z = 1

while n != 0:
r = n % 10
d = d + (9-r)*z
n = n // 10
z = z * 10

print(d)

W tym momencie program działa prawidłowo. Czy mógłbyś proszę odnieść się do powyższych i ocenić czy to co napisałem ma sens?
- Dziękuję, szanuję twój wkład w edukację młodych ludzi.

Ale to brzmi boomersko
- Czy w 2.1. czasem nie zaszła pomyłka? Dokładniej w 27:13 w ostatnim wierszu s powinno być równe 2, a dopiero dzielenie przez 2 równe 1, dlatego 30 powinna wylądować na początku.