matematykaszkolna.pl
... matt: Jak rozrysować schemat blokowy takiego zadania : Sprawdź czy wszystkie liczby całkowite z wybranego przedziału <a,b> spełniają nierówność n3+20n2<3n2+370. Wypisz liczby dla ktorych nierówność jest nieprawdziwa.
18 paź 21:12
PW: Najpierw bym przekształcił do postaci n3+17n2<370 n2(n+17)<370, a ponieważ 42(4+17)=336 i 52(5+17)=550 − wiemy jakie narzucić ograniczenia dla n dodatnich. Dla n ≤−17 nierówność jest prawdziwa (lewa strona ujemna lub 0). Dla n=−16 mamy (−16)2(−16+17)<370 − zdanie prawdziwe Dla n=−15 (−15)2•2<370 − zdanie fałszywe Dla n=−14 (−14)2•3<370 − zdanie fałszywe Dla n=−13 (−13)2•4<370 − zdanie fałszywe Dla n=−12 144•5<370 − zdanie fałszywe Dla n=−11, −10, −9, −8, −7, −6 − zdania fałszywe Dopiero dla n= −5, −4, −3, −2, −1 zdania prawdziwe. W ten sposób wiemy dla jakich n nierówność jest prawdziwa, dopiero teraz tworzymy schemat blokowy − jeśli podamy komputerowi ograniczenia dla n, to się nie zasapie licząc dla każdej liczby z przedziału <a,b> z osobna n3+17n2 i sprawdzając za każdym razem, czy jest to mniejsze od 370.
18 paź 21:57
matt: ja juz kombinuje na miliony sposobów i zawsze mi cos nie wychodzi Na początku dałem tylko przedział <a,b> pozniej zadeklarowałem tablice i niestety coś zawsze nie jest do końca dobre.
18 paź 22:02
matt: Czy mógłby mi ktoś ogarniający schematy blokowe to sprawdzić ? http://zapodaj.net/0ca2004f77592.png.html
18 paź 22:26
PW: A tu proste sprawdzenie − nierówność jest prawdziwa dla n∊(−,−16]∪[−5,4], dla pozostałych n jest fałszywa.
18 paź 22:28
matt: Bo wiesz to byly pierwsze zajęcia z algorytmów, mówil że mamy zrobić takim sposobem jak próbowalem, ale nie do konca jeszcze to rozumiem i tak sie pytam właśnie.
18 paź 22:31
PW: Powiem tak: uczyłem się prostego programowania 40 lat temu i nie miałem potem już z tym do czynienia. Myślę jednak, że nie może to polegać na bezmyślnym wykonywaniu milionów jednakowych operacji. Co będzie, jeśli komputer dostanie przedział [−2 000000, 12 0000] ? Programista ma rozwiązać problem. Naszym zadaniem jest sprowadzić problem do jak najmniejszej liczby operacji, dlatego proponuję, żeby komputer sprawdzał najpierw liczby a i b. Jeżeli liczba a jest większa od 4 lub b jest mniejsza od −15, to koniec zadania − w pierwszym wypadku żadna liczba z [a,b] nie jest rozwiązaniem (piszemy komunikat "dla wszystkich liczb z podanego przedziału nierówność jest fałszywa"), w drugim − wszystkie. Myśl dalej.
18 paź 22:47