Napisz program zaokrąglający podaną liczbę x tak, aby błąd względny nie przekroczył ustalonej wartości krytycznej blad_krytyczny.
Przetestuj działanie programu, zaokrąglając liczbę 0,054256, dopóki błąd względny nie przekroczy wartości 5%.
Specyfikacja problemu:
Dane:
x – zaokrąglana wartość; liczba rzeczywista z przedziału [0, 1]
bladKrytyczny – wartość krytyczna; liczba rzeczywista z przedziału [0, 100]
Wynik:
wartość zaokrąglenia liczby
R1OOloys3l1cX
Przykładowe rozwiązanie zadania:
Linia 1. public class Main otwórz nawias klamrowy.
Linia 3. static double zaokraglenie otwórz nawias okrągły double liczba przecinek int poPrzecinku zamknij nawias okrągły otwórz nawias klamrowy.
Linia 4. return otwórz nawias okrągły double zamknij nawias okrągły Math kropka round otwórz nawias okrągły liczba asterysk otwórz nawias okrągły Math kropka pow otwórz nawias okrągły 10 przecinek poPrzecinku zamknij nawias okrągły zamknij nawias okrągły zamknij nawias okrągły prawy ukośnik otwórz nawias okrągły Math kropka pow otwórz nawias okrągły 10 przecinek poPrzecinku zamknij nawias okrągły zamknij nawias okrągły średnik.
Linia 5. zamknij nawias klamrowy.
Linia 7. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy.
Linia 8. double xZaokraglony znak równości 0 średnik.
Linia 9. double bladBezwzgledny znak równości 0 średnik.
Linia 10. double bladWzgledny znak równości 0 średnik.
Linia 11. double x znak równości 0 kropka 054256 średnik.
Linia 12. double bladKrytyczny znak równości 5 średnik.
Linia 14. for otwórz nawias okrągły int i znak równości 1 średnik i otwórz nawias ostrokątny znak równości 6 średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 15. xZaokraglony znak równości zaokraglenie otwórz nawias okrągły x przecinek 6 minus i zamknij nawias okrągły średnik.
Linia 16. bladBezwzgledny znak równości Math kropka abs otwórz nawias okrągły x minus xZaokraglony zamknij nawias okrągły średnik.
Linia 17. bladWzgledny znak równości otwórz nawias okrągły bladBezwzgledny prawy ukośnik x zamknij nawias okrągły asterysk 100 średnik.
Linia 19. if otwórz nawias okrągły bladWzgledny zamknij nawias ostrokątny bladKrytyczny zamknij nawias okrągły otwórz nawias klamrowy.
Linia 20. xZaokraglony znak równości zaokraglenie otwórz nawias okrągły x przecinek 7 minus i zamknij nawias okrągły średnik.
Linia 21. break średnik.
Linia 22. zamknij nawias klamrowy.
Linia 23. zamknij nawias klamrowy.
Linia 25. System kropka out kropka println otwórz nawias okrągły xZaokraglony zamknij nawias okrągły średnik.
Linia 26. zamknij nawias klamrowy.
Linia 27. zamknij nawias klamrowy.
2
Ćwiczenie 2
Korzystając ze zdefiniowanej w programie stałej PIERWIASTEK_Z_2, sprawdź, z dokładnością do ilu miejsc po przecinku należy wypisać jej przybliżenie, aby błąd względny między wartością pierwotną a przybliżoną wynosił mniej niż 0,01%. Wypisz wyznaczoną liczbę cyfr.
Przykład:
Błąd względny między przybliżeniem pierwiastka z liczby 2 do dwóch cyfr po przecinku a wartością 1,41421356237 wynosi:
Potrzeba zatem przybliżenia do dwóch cyfr po przecinku, aby błąd względny wyniósł mniej niż 0,3%.
RtXW6XVY7yfBH
W wybranym edytorze wykorzystaj kod do rozwiązania zadania.
Linia 1. public class Main otwórz nawias klamrowy.
Linia 2. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy.
Linia 3. final double PIERWIASTEK podkreślnik Z podkreślnik 2 znak równości 1 kropka 41421356237 średnik.
Linia 5. prawy ukośnik prawy ukośnik w tym miejscu dodaj implementację swojego rozwiązania.
Linia 6. zamknij nawias klamrowy.
Linia 7. zamknij nawias klamrowy.
Linia 1. public class Main otwórz nawias klamrowy.
Linia 2. static double bladWzgledny otwórz nawias okrągły double wartoscZmierzona przecinek double wartoscOczekiwana zamknij nawias okrągły otwórz nawias klamrowy.
Linia 3. return Math kropka abs otwórz nawias okrągły wartoscOczekiwana minus wartoscZmierzona zamknij nawias okrągły prawy ukośnik wartoscOczekiwana średnik.
Linia 4. zamknij nawias klamrowy.
Linia 6. static double przyblizenie otwórz nawias okrągły double wartosc przecinek int liczbaCyfr zamknij nawias okrągły otwórz nawias klamrowy.
Linia 7. double potega10 znak równości Math kropka pow otwórz nawias okrągły 10 przecinek liczbaCyfr zamknij nawias okrągły średnik.
Linia 8. double przyblizenie znak równości potega10 asterysk wartosc średnik.
Linia 9. int przyblizenie10 znak równości otwórz nawias okrągły int zamknij nawias okrągły przyblizenie średnik.
Linia 11. return przyblizenie10 prawy ukośnik potega10 średnik.
Linia 12. zamknij nawias klamrowy.
Linia 14. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy.
Linia 15. final double PIERWIASTEK podkreślnik Z podkreślnik 2 znak równości 1 kropka 41421356237 średnik.
Linia 17. int liczbaCyfr znak równości 0 średnik.
Linia 19. while otwórz nawias okrągły bladWzgledny otwórz nawias okrągły przyblizenie otwórz nawias okrągły PIERWIASTEK podkreślnik Z podkreślnik 2 przecinek liczbaCyfr zamknij nawias okrągły przecinek PIERWIASTEK podkreślnik Z podkreślnik 2 zamknij nawias okrągły zamknij nawias ostrokątny 0 kropka 0001 zamknij nawias okrągły otwórz nawias klamrowy.
Linia 20. liczbaCyfr plus plus średnik.
Linia 21. zamknij nawias klamrowy.
Linia 23. System kropka out kropka println otwórz nawias okrągły liczbaCyfr zamknij nawias okrągły średnik.
Linia 24. zamknij nawias klamrowy.
Linia 25. zamknij nawias klamrowy.
3
Ćwiczenie 3
Liczba Eulera może być zdefiniowana przez sumę następującego szeregu:
Sprawdź, dla jakiego błąd względny wyznaczonego przybliżenia liczby będzie mniejszy niż 0,0000005. Jako wartość dokładną przyjmij stałą matematyczną Math.E. Wypisz minimalną wartość .
RXCT4WMc1MEIE
W wybranym edytorze wykorzystaj kod do rozwiązania zadania.
Linia 1. public class Main otwórz nawias klamrowy.
Linia 2. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy.
Linia 3. double bladOczekiwany znak równości 0 kropka 0000005 średnik.
Linia 5. prawy ukośnik prawy ukośnik w tym miejscu dodaj implementację swojego rozwiązania.
Linia 6. zamknij nawias klamrowy.
Linia 7. zamknij nawias klamrowy.
Linia 1. public class Main otwórz nawias klamrowy.
Linia 2. static double bladWzgledny otwórz nawias okrągły double wartoscZmierzona przecinek double wartoscOczekiwana zamknij nawias okrągły otwórz nawias klamrowy.
Linia 3. return Math kropka abs otwórz nawias okrągły wartoscOczekiwana minus wartoscZmierzona zamknij nawias okrągły prawy ukośnik wartoscOczekiwana średnik.
Linia 4. zamknij nawias klamrowy.
Linia 6. static double wyznaczE otwórz nawias okrągły int n zamknij nawias okrągły otwórz nawias klamrowy.
Linia 7. double e znak równości 0 kropka 0 średnik.
Linia 9. double next znak równości 1 kropka 0 średnik.
Linia 10. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny n średnik plus plus i zamknij nawias okrągły otwórz nawias klamrowy.
Linia 11. if otwórz nawias okrągły i wykrzyknik znak równości 0 zamknij nawias okrągły.
Linia 12. next asterysk znak równości 1 kropka 0 prawy ukośnik i średnik.
Linia 13. e plus znak równości next średnik.
Linia 14. zamknij nawias klamrowy.
Linia 16. return e średnik.
Linia 17. zamknij nawias klamrowy.
Linia 19. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy.
Linia 20. double bladOczekiwany znak równości 0 kropka 0000005 średnik.
Linia 22. int n znak równości 0 średnik.
Linia 23. while otwórz nawias okrągły bladWzgledny otwórz nawias okrągły wyznaczE otwórz nawias okrągły n zamknij nawias okrągły przecinek Math kropka E zamknij nawias okrągły zamknij nawias ostrokątny bladOczekiwany zamknij nawias okrągły otwórz nawias klamrowy.
Linia 24. plus plus n średnik.
Linia 25. zamknij nawias klamrowy.
Linia 27. System kropka out kropka println otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 28. zamknij nawias klamrowy.
Linia 29. zamknij nawias klamrowy.