Discuss Scratch

barbaramateja
Scratcher
28 posts

Problemy i Pytania

Brak wiadomości ze studii
Wiadomości ze studii przestały przychodzić.

Last edited by barbaramateja (Dec. 5, 2023 18:50:47)

Unixy-Code
Scratcher
500+ posts

Problemy i Pytania

julianlukasiak wrote:

Jak zrobić podpis?
https://scratch.mit.edu/discuss/settings/julianlukasiak/ - taki link na stronie głównej Discuss Scratch o nazwie Change your signature
AndrzejL1
Scratcher
100+ posts

Problemy i Pytania

Może znajdzie się tu ktoś kto podpowie mi, dlaczego program czasami generuje podczas zwykłego mnożenia
https://scratch.mit.edu/projects/967952893/
np.0.001 * 7 mnóstwo cyfr po przecinku?
Zdarza się to nieregularnie i na szybko to obsługuję komunikatem o błędzie działania Scratch.
Matematycznie powinno to być niemożliwe jak sądzę. Coś musi być nie tak z jakimiś klockami (zmienne, mnożenie, dodawanie)?

Last edited by AndrzejL1 (March 20, 2024 12:31:50)

Opisek
Scratcher
1000+ posts

Problemy i Pytania

AndrzejL1 wrote:

Może znajdzie się tu ktoś kto podpowie mi, dlaczego program czasami generuje podczas zwykłego mnożenia
https://scratch.mit.edu/projects/967952893/
np.0.001 * 7 mnóstwo cyfr po przecinku?
Zdarza się to nieregularnie i na szybko to obsługuję komunikatem o błędzie działania Scratch.
Matematycznie powinno to być niemożliwe jak sądzę. Coś musi być nie tak z jakimiś klockami (zmienne, mnożenie, dodawanie)?

To nie jest bląd Scratcha, a ogólny limit komputerów!

W systemie decymalnym, czyli z cyframi 0,1,2,3,4,5,6,7,8,9 mamy problem dokładnego wypisania niektórych liczb. Na przykład, liczba ⅓ posiadałaby nieskończenie wiele cyfr po przecinku: 0.33333…

Komputer nie posiadają 10 cyfr, tylko dwie: 0 i 1. Nazawy się to system binarny. Tak samo jak w “naszym” człowieczym systemie, istnieją liczby których nie da się zapisać bez nieskończenie wiele cyfr po przecinku.

Przykładowo, liczba 0.1 w systemie binarnym to 0.0001100110011001100110011…, a liczba 0.2 to 0.00110011001100110…
Ale komputer ma tylko skończoną ilość pamięci! A więc gdy spróbujemy dodać 0.1 i 0.2 na komputerzy, to ten nie będzie mógł obliczyć dokładnego wyniku, ponieważ musiałby on liczyć nieskończenie długo, i jako rezultat dostaniemy 0.30000000004 - również jak spróbujesz to w Scratchu.

Podobny problem powstaje gdy próbujesz obliczyć 0.001 razy 7. Istnieją teź inne sposoby zapisywania liczb na kompturach (więc np. aplikacja kalkulatora będzie mogła obliczyć to równanie), ale większość programów zapisuje liczby z przecinkami w formacie IEEE 754, czyli “Floating Point Numbers”, które posiadają niestety ten właśnie opisany problem.
julmik6478
Scratcher
500+ posts

Problemy i Pytania

Opisek wrote:

AndrzejL1 wrote:

Może znajdzie się tu ktoś kto podpowie mi, dlaczego program czasami generuje podczas zwykłego mnożenia
https://scratch.mit.edu/projects/967952893/
np.0.001 * 7 mnóstwo cyfr po przecinku?
Zdarza się to nieregularnie i na szybko to obsługuję komunikatem o błędzie działania Scratch.
Matematycznie powinno to być niemożliwe jak sądzę. Coś musi być nie tak z jakimiś klockami (zmienne, mnożenie, dodawanie)?

To nie jest bląd Scratcha, a ogólny limit komputerów!

W systemie decymalnym, czyli z cyframi 0,1,2,3,4,5,6,7,8,9 mamy problem dokładnego wypisania niektórych liczb. Na przykład, liczba ⅓ posiadałaby nieskończenie wiele cyfr po przecinku: 0.33333…

Komputer nie posiadają 10 cyfr, tylko dwie: 0 i 1. Nazawy się to system binarny. Tak samo jak w “naszym” człowieczym systemie, istnieją liczby których nie da się zapisać bez nieskończenie wiele cyfr po przecinku.

Przykładowo, liczba 0.1 w systemie binarnym to 0.0001100110011001100110011…, a liczba 0.2 to 0.00110011001100110…
Ale komputer ma tylko skończoną ilość pamięci! A więc gdy spróbujemy dodać 0.1 i 0.2 na komputerzy, to ten nie będzie mógł obliczyć dokładnego wyniku, ponieważ musiałby on liczyć nieskończenie długo, i jako rezultat dostaniemy 0.30000000004 - również jak spróbujesz to w Scratchu.

Podobny problem powstaje gdy próbujesz obliczyć 0.001 razy 7. Istnieją teź inne sposoby zapisywania liczb na kompturach (więc np. aplikacja kalkulatora będzie mogła obliczyć to równanie), ale większość programów zapisuje liczby z przecinkami w formacie IEEE 754, czyli “Floating Point Numbers”, które posiadają niestety ten właśnie opisany problem.
Nie wiedziałem, że dopisek jest jeszcze aktywny.
julmik6478
Scratcher
500+ posts

Problemy i Pytania

Unixy-Code wrote:

nightman6565 wrote:

Nie chce obrażać pomysłu ale… sądzę że to trochę głupie robienie tych wszystkich tematów typu: Problemy i pytania. W sensie fajny pomysł ale gorsze wykonanie. Chodzi o to że nie zbyt pomagasz i ktoś inny to może zrobić lepiej. Dlatego jest sens robienia kolejnego tematu
kiedy kliknięto zieloną flagę
powiedz [Czy ktoś mi kiedyś powie dlaczego za każdym razem robię te skrypty?]
powtórz (21) razy
obróć w prawo o (37) stopni

end
Nie do końca Ciebie rozumiem. Temat problemy&pytania służy temu, aby po pierwsze zadawać małe pytania, które nie wymagają skomplikowanej pomocy- choćby czy coś się stanie gdy…

Po drugie. Problemy i pytania porządkują forum, aby nie powtarzać tych samych pytań. Wiele z nich znajduje się w #spis-poradnikow, gdzie znajdują się gotowe rozwiązania (wystarczy ctrl+f). Niestety na forum nie istnieje działająca wyszukiwarka, ale istnieje zewnętrzna jak ocular.

Nie rozumiem, co miałeś na myśli mówiąc:
Chodzi o to że nie zbyt pomagasz i ktoś inny to może zrobić lepiej
Jak nie pomagasz? Rozwiń swoje myśli.
Lub wyszukiwarka w pewnej scratchowej wtyczce do przeglądarki na a, której nazwy nie mogę napisać.
AndrzejL1
Scratcher
100+ posts

Problemy i Pytania

Opisek wrote:

AndrzejL1 wrote:

Może znajdzie się tu ktoś kto podpowie mi, dlaczego program czasami generuje podczas zwykłego mnożenia
https://scratch.mit.edu/projects/967952893/
np.0.001 * 7 mnóstwo cyfr po przecinku?
Zdarza się to nieregularnie i na szybko to obsługuję komunikatem o błędzie działania Scratch.
Matematycznie powinno to być niemożliwe jak sądzę. Coś musi być nie tak z jakimiś klockami (zmienne, mnożenie, dodawanie)?

To nie jest bląd Scratcha, a ogólny limit komputerów!

W systemie decymalnym, czyli z cyframi 0,1,2,3,4,5,6,7,8,9 mamy problem dokładnego wypisania niektórych liczb. Na przykład, liczba ⅓ posiadałaby nieskończenie wiele cyfr po przecinku: 0.33333…

Komputer nie posiadają 10 cyfr, tylko dwie: 0 i 1. Nazawy się to system binarny. Tak samo jak w “naszym” człowieczym systemie, istnieją liczby których nie da się zapisać bez nieskończenie wiele cyfr po przecinku.

Przykładowo, liczba 0.1 w systemie binarnym to 0.0001100110011001100110011…, a liczba 0.2 to 0.00110011001100110…
Ale komputer ma tylko skończoną ilość pamięci! A więc gdy spróbujemy dodać 0.1 i 0.2 na komputerzy, to ten nie będzie mógł obliczyć dokładnego wyniku, ponieważ musiałby on liczyć nieskończenie długo, i jako rezultat dostaniemy 0.30000000004 - również jak spróbujesz to w Scratchu.

Podobny problem powstaje gdy próbujesz obliczyć 0.001 razy 7. Istnieją teź inne sposoby zapisywania liczb na kompturach (więc np. aplikacja kalkulatora będzie mogła obliczyć to równanie), ale większość programów zapisuje liczby z przecinkami w formacie IEEE 754, czyli “Floating Point Numbers”, które posiadają niestety ten właśnie opisany problem.

Dzięki za odpowiedź. Zastanawiam się czy potraktować zatem te liczby w programie jako ciąg znaków, czy może da się jakoś obciąć wynik mnożenia do 3 cyfr po przecinku?
Opisek
Scratcher
1000+ posts

Problemy i Pytania

AndrzejL1 wrote:

Dzięki za odpowiedź. Zastanawiam się czy potraktować zatem te liczby w programie jako ciąg znaków, czy może da się jakoś obciąć wynik mnożenia do 3 cyfr po przecinku?

Możesz przykładowo zapisywać liczby bez przecinka i tylko zmianić na z przecinkiem po wszystkich obliczeniach. Przykładowo, gdy komputery mają do czynienia z pieniędzmi, to nie zapisujesz złotówek z przecinkiem, tylko zapisujesz grosze. Troche głupio by było, gdyby przez takie błędy ktoś stracił albo zyskał pieniądze.

Pełne liczby nie mają tego problemu. Więc możesz na przykład najpierw obliczyć 1 * 7000 (czyli przesuwasz przecinek tak, źeby nie było źadnych liczb po przecinku, a na końcu - gdy chcesz pokazać uźytkownikowi wynik, dzielisz wszystko przez 1000.
AndrzejL1
Scratcher
100+ posts

Problemy i Pytania

Przy dzieleniu znowu wyjdzie kiszka. Ale jest prosty sposób na pozbycie się tych nadmiarowych cyfr - wystarczy wyciąć te od lewej, które są ok i wkleić je jako prawidłowe.
W sumie jeśli potraktuję te liczby do zaokrąglania jako tekst, to nic nie będzie trzeba liczyć. Ale to już prawie cały program do zmiany. Dzięki jeszcze raz.
andrzejewski-norbert
Scratcher
1 post

Problemy i Pytania

Cześć,mam problem z scratchem nie mogę remixować i zapisywać projektów? Mógłby mi ktoś pomuc to naprawić? Bo nikt nie umie
Opisek
Scratcher
1000+ posts

Problemy i Pytania

andrzejewski-norbert wrote:

Cześć,mam problem z scratchem nie mogę remixować i zapisywać projektów? Mógłby mi ktoś pomuc to naprawić? Bo nikt nie umie

Spróbowałeś się wylogować i znowu zalogować?
Unixy-Code
Scratcher
500+ posts

Problemy i Pytania

andrzejewski-norbert wrote:

Cześć,mam problem z scratchem nie mogę remixować i zapisywać projektów? Mógłby mi ktoś pomuc to naprawić? Bo nikt nie umie
Polecam sprawdzić, czy któreś z rozwiązań pod tym łączem się sprawdza (niestety język angielski): en.scratch-wiki.info
Jeśli wylogowanie i zalogowanie nie za działa to spróbuj usunąć ciasteczka na stronie scratch i ponownie się zalogować. Kilka artykułów jak to zrobić w zależności od przeglądarki jakiej używasz:


Kontekst. Jak dobrze pamiętam to w ostatnim czasie były właśnie problemy z zapisywaniem projektów, ale leżały one bardziej po stronie serwerów scratcha, które miały problemy z ciasteczkami.

Last edited by Unixy-Code (Jan. 14, 2025 22:46:18)

pintini
Scratcher
42 posts

Problemy i Pytania

MICRO:BIT

Nie posiadam MICRO:BIT czy są jakieś symulatory dzięki którym MICRO:BIT będzie symulowany i dzięki temu programować w scratch używając MICRO:BIT na ekranie.

Last edited by pintini (Feb. 8, 2025 18:53:21)

Franek20240820
Scratcher
17 posts

Problemy i Pytania

Co mam robić jak ktoś na scratch pisze do kogoś że jest idiotą?
  • 1
    2
    3
AndrzejL1
Scratcher
100+ posts

Problemy i Pytania

Zgłoś - jest taki link przy każdym wpisie.
Unixy-Code
Scratcher
500+ posts

Problemy i Pytania

Franek20240820 wrote:

Co mam robić jak ktoś na scratch pisze do kogoś że jest idiotą?
  • 1
    2
    3


Bądź mądrzejszy Jeżeli czujesz się urażony to po prostu kliknij przycisk zgłoś, który znajduje się w prawym dolnym rogu posta. Pamiętaj, aby zachować spokój kiedy ktoś Cię wyzywa, aby samemu się nie posunąć do nieodpowiednich działań…
TheRevivedGuy
Scratcher
6 posts

Problemy i Pytania

i have one problem, i can't save my project and its all…..
KaaBEL_sk
Scratcher
100+ posts

Problemy i Pytania

Skąd ten angielski?
TheRevivedGuy
Scratcher
6 posts

Problemy i Pytania

KaaBEL_sk wrote:

Skąd ten angielski?
Znikąd
TheRevivedGuy
Scratcher
6 posts

Problemy i Pytania

Może usuńcie limit projektu?

Powered by DjangoBB