Wróć do informacji o e-podręczniku Wydrukuj Pobierz materiał do PDF Pobierz materiał do EPUB Pobierz materiał do MOBI Zaloguj się, aby dodać do ulubionych Zaloguj się, aby skopiować i edytować materiał Zaloguj się, aby udostępnić materiał Zaloguj się, aby dodać całą stronę do teczki
11
Pokaż ćwiczenia:
11
Ćwiczenie 1

Zmodyfikuj kod programu rozwiązującego równanie kwadratowe tak, aby wartość delta była wyliczana w osobnej funkcji o nazwie obliczDelta(). Funkcja ma zwracać wartość typu double i jako argumenty przyjmować a, b oraz c.

Przetestuj jego działanie dla następujących wartości:

Linia 1. a znak równości 3. Linia 2. b znak równości 2. Linia 3. c znak równości minus 5.

Specyfikacja problemu:

Dane:

  • a, b, c – liczby rzeczywiste

Wynik:

Program wyświetla wynik pierwiastki kwadratowego.

Przykładowe wyjście:

Linia 1. Równanie ma dwa rozwiązania dwukropek. Linia 2. x1 znak równości minus 1 kropka 666667. Linia 3. oraz. Linia 4. x2 znak równości 1 kropka 000000.
ROYEL5UFf7SmB
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.

Twoje zadanie: Program ma rozwiązywać równanie kwadratowe o zadanych parametrach a, b, c, wynoszących odpowiednio: 3, 2, -5. Wartość delty ma być uzyskiwana za pomocą funkcji obliczDelta.

Linia 1. kratka include otwórz nawias ostrokątny iostream zamknij nawias ostrokątny. Linia 2. kratka include otwórz nawias ostrokątny string zamknij nawias ostrokątny. Linia 3. kratka include otwórz nawias ostrokątny cmath zamknij nawias ostrokątny. Linia 5. using namespace std średnik. Linia 7. string rowKwadr otwórz nawias okrągły double a przecinek double b przecinek double c zamknij nawias okrągły otwórz nawias klamrowy. Linia 8. string wynik znak równości cudzysłów cudzysłów średnik. Linia 10. if otwórz nawias okrągły a znak równości znak równości 0 zamknij nawias okrągły otwórz nawias klamrowy. Linia 11. double x znak równości minus c prawy ukośnik b średnik. Linia 12. wynik znak równości cudzysłów Nie jest to funkcja kwadratowa przecinek tylko liniowa ponieważ a znak równości 0 cudzysłów średnik. Linia 13. return wynik średnik. Linia 14. zamknij nawias klamrowy else otwórz nawias klamrowy. Linia 15. double delta znak równości b asterysk b minus 4 asterysk a asterysk c średnik. Linia 17. if otwórz nawias okrągły delta otwórz nawias ostrokątny 0 zamknij nawias okrągły otwórz nawias klamrowy prawy ukośnik prawy ukośnik NIESKOŃCZENIE WIELE ROZWIĄZAŃ. Linia 18. wynik znak równości cudzysłów Równanie nie ma rozwiązania cudzysłów średnik. Linia 19. zamknij nawias klamrowy else if otwórz nawias okrągły delta znak równości znak równości 0 zamknij nawias okrągły otwórz nawias klamrowy prawy ukośnik prawy ukośnik JEDNO ROZWIĄZANIE. Linia 20. double x znak równości minus b prawy ukośnik otwórz nawias okrągły 2 asterysk a zamknij nawias okrągły średnik. Linia 21. wynik znak równości cudzysłów Równanie ma jedno rozwiązanie przecinek x znak równości cudzysłów plus to podkreślnik string otwórz nawias okrągły x zamknij nawias okrągły średnik. Linia 22. zamknij nawias klamrowy else if otwórz nawias okrągły delta zamknij nawias ostrokątny 0 zamknij nawias okrągły otwórz nawias klamrowy prawy ukośnik prawy ukośnik DWA ROZWIĄZANIA. Linia 23. double viete znak równości c prawy ukośnik a średnik. Linia 24. double x1 znak równości 0 średnik. Linia 25. double x2 znak równości 0 średnik. Linia 27. if otwórz nawias okrągły b zamknij nawias ostrokątny 0 zamknij nawias okrągły otwórz nawias klamrowy. Linia 28. x1 znak równości otwórz nawias okrągły minus b minus sqrt otwórz nawias okrągły delta zamknij nawias okrągły zamknij nawias okrągły prawy ukośnik otwórz nawias okrągły 2 asterysk a zamknij nawias okrągły średnik. Linia 29. x2 znak równości viete prawy ukośnik x1 średnik. Linia 30. zamknij nawias klamrowy else otwórz nawias klamrowy. Linia 31. x2 znak równości otwórz nawias okrągły minus b plus sqrt otwórz nawias okrągły delta zamknij nawias okrągły zamknij nawias okrągły prawy ukośnik otwórz nawias okrągły 2 asterysk a zamknij nawias okrągły średnik. Linia 32. x1 znak równości viete prawy ukośnik x2 średnik. Linia 33. zamknij nawias klamrowy. Linia 35. wynik znak równości cudzysłów Równanie ma dwa rozwiązania dwukropek lewy ukośnik nx1 znak równości cudzysłów plus to podkreślnik string otwórz nawias okrągły x1 zamknij nawias okrągły plus cudzysłów lewy ukośnik noraz lewy ukośnik nx2 znak równości cudzysłów plus to podkreślnik string otwórz nawias okrągły x2 zamknij nawias okrągły średnik. Linia 36. zamknij nawias klamrowy. Linia 37. zamknij nawias klamrowy. Linia 39. return wynik średnik. Linia 40. zamknij nawias klamrowy. Linia 42. int main otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy. Linia 43. double a znak równości 3 przecinek b znak równości 2 przecinek c znak równości minus 5 średnik. Linia 45. cout otwórz nawias ostrokątny otwórz nawias ostrokątny rowKwadr otwórz nawias okrągły a przecinek b przecinek c zamknij nawias okrągły otwórz nawias ostrokątny otwórz nawias ostrokątny endl średnik. Linia 47. return 0 średnik. Linia 48. zamknij nawias klamrowy. Linia 49. at at at. Linia 50. language znak równości cpp17. Linia 51. at at at. Linia 52. Program ma rozwiązywać równanie kwadratowe o zadanych parametrach a przecinek b przecinek c przecinek wynoszących odpowiednio dwukropek 3 przecinek 2 przecinek minus 5 kropka Wartość delty ma być uzyskiwana za pomocą funkcji otwórz nawias ostrokątny code zamknij nawias ostrokątny obliczDelta otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny kropka. Linia 53. at at at. Linia 54. at at at. Linia 55. at at at. Linia 56. kratka wykrzyknik prawy ukośnik usr prawy ukośnik bin prawy ukośnik python3 kropka 7. Linia 57. import sys. Linia 59. podkreślnik podkreślnik TF znak równości open otwórz nawias okrągły 3 przecinek apostrof w apostrof zamknij nawias okrągły. Linia 62. def podkreślnik pt otwórz nawias okrągły t zamknij nawias okrągły dwukropek. Linia 63. print otwórz nawias okrągły str otwórz nawias okrągły t zamknij nawias okrągły przecinek file znak równości podkreślnik podkreślnik TF zamknij nawias okrągły. Linia 66. expected podkreślnik output znak równości cudzysłów cudzysłów cudzysłów. Linia 67. Równanie ma dwa rozwiązania dwukropek. Linia 68. x1 znak równości minus 1 kropka 666667. Linia 69. oraz. Linia 70. x2 znak równości 1 kropka 000000. Linia 71. cudzysłów cudzysłów cudzysłów. Linia 72. input znak równości sys kropka stdin kropka read otwórz nawias okrągły zamknij nawias okrągły kropka strip otwórz nawias okrągły zamknij nawias okrągły. Linia 73. if input znak równości znak równości expected podkreślnik output kropka strip otwórz nawias okrągły zamknij nawias okrągły dwukropek. Linia 74. podkreślnik pt otwórz nawias okrągły 0 zamknij nawias okrągły.
21
Ćwiczenie 2

Napisz program, który sprawdzi, czy z odcinków o danych długościach można utworzyć trójkąt. Przetestuj jego działanie dla odcinków o długości 9, 10, 12.

Specyfikacja problemu:

Dane:

  • a, b, c – liczby naturalne; długości odcinków

Wynik:

Program na wyjściu standardowym wypisze: Z PODANYCH ODCINKÓW MOŻNA UTWORZYĆ TRÓJKĄT lub Z PODANYCH ODCINKÓW NIE MOŻNA UTWORZYĆ TRÓJKĄTA.

R1bYK5JeZSKXf
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.

Twoje zadanie: Program sprawdza, czy z odcinków o podanych długościach można utworzyć trójkąt, a następnie wypisuje odpowiedni komunikat.

Linia 1. kratka include otwórz nawias ostrokątny iostream zamknij nawias ostrokątny. Linia 3. using namespace std średnik. Linia 5. prawy ukośnik prawy ukośnik brakujący kod. Linia 7. int main otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy. Linia 9. int a znak równości 9 średnik. Linia 10. int b znak równości 12 średnik. Linia 11. int c znak równości 10 średnik. Linia 13. if otwórz nawias okrągły czyMoznaTrojkat otwórz nawias okrągły a przecinek b przecinek c zamknij nawias okrągły znak równości znak równości true zamknij nawias okrągły otwórz nawias klamrowy. Linia 14. prawy ukośnik prawy ukośnik brakujący kod. Linia 15. zamknij nawias klamrowy else otwórz nawias klamrowy. Linia 16. prawy ukośnik prawy ukośnik brakujący kod. Linia 17. zamknij nawias klamrowy. Linia 19. return 0 średnik. Linia 20. zamknij nawias klamrowy. Linia 21. at at at. Linia 22. language znak równości cpp17. Linia 23. at at at. Linia 24. Program sprawdza przecinek czy z odcinków o podanych długościach można utworzyć trójkąt przecinek a następnie wypisuje odpowiedni komunikat kropka. Linia 25. at at at. Linia 26. at at at. Linia 27. at at at. Linia 28. kratka wykrzyknik prawy ukośnik usr prawy ukośnik bin prawy ukośnik python3 kropka 7. Linia 29. import sys. Linia 30. podkreślnik podkreślnik TF znak równości open otwórz nawias okrągły 3 przecinek apostrof w apostrof zamknij nawias okrągły. Linia 31. def podkreślnik pt otwórz nawias okrągły t zamknij nawias okrągły dwukropek. Linia 32. print otwórz nawias okrągły str otwórz nawias okrągły t zamknij nawias okrągły przecinek file znak równości podkreślnik podkreślnik TF zamknij nawias okrągły. Linia 34. if sys kropka stdin kropka read otwórz nawias okrągły zamknij nawias okrągły kropka strip otwórz nawias okrągły zamknij nawias okrągły znak równości znak równości apostrof Z PODANYCH ODCINKÓW MOŻNA UTWORZYĆ TRÓJKĄT apostrof dwukropek. Linia 35. podkreślnik pt otwórz nawias okrągły 0 zamknij nawias okrągły.
31
Ćwiczenie 3

Program realizuje stabilny algorytm rozwiązywania równania kwadratowego. Zmodyfikuj go o wyliczenie rozwiązania i zapisz go w zmiennej wynik, w przypadku gdy równanie jest liniowe (a == 0).

Przetestuj jego działanie dla wartości:

Linia 1. a znak równości 0. Linia 2. b znak równości 2. Linia 3. c znak równości minus 5.

Specyfikacja problemu:

Dane:

  • a, b, c – zmienne typu double

Wynik:

Program na wyjściu standardowym wypisze rozwiązanie wraz z komunikatem: „Nie jest to funkcja kwadratowa, tylko liniowa, ponieważ a = 0, rozwiązanie funkcji liniowej = [wyliczone rozwiązanie]”.

Przykładowe wyjście:

Linia 1. Nie jest to funkcja kwadratowa przecinek tylko liniowa ponieważ a znak równości 0 przecinek rozwiązanie funkcji liniowej znak równości 2 kropka 500000.
R16MAz3BEfNnW
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.

Twoje zadanie: Program, w przypadku gdy wartość współczynnika a będzie równa 0, ma wyliczyć rozwiązanie oraz wypisać komunikat: „Nie jest to funkcja kwadratowa, tylko liniowa, ponieważ a = 0, rozwiązanie funkcji liniowej = [wyliczone rozwiązanie]”.

Linia 1. kratka include otwórz nawias ostrokątny iostream zamknij nawias ostrokątny. Linia 2. kratka include otwórz nawias ostrokątny string zamknij nawias ostrokątny. Linia 3. kratka include otwórz nawias ostrokątny cmath zamknij nawias ostrokątny. Linia 5. using namespace std średnik. Linia 7. string rowKwadr otwórz nawias okrągły double a przecinek double b przecinek double c zamknij nawias okrągły otwórz nawias klamrowy. Linia 8. string wynik znak równości cudzysłów cudzysłów średnik. Linia 10. if otwórz nawias okrągły a znak równości znak równości 0 zamknij nawias okrągły otwórz nawias klamrowy. Linia 11. wynik znak równości cudzysłów Nie jest to funkcja kwadratowa przecinek tylko liniowa ponieważ a znak równości 0 przecinek rozwiązanie funkcji liniowej znak równości cudzysłów średnik. Linia 12. return wynik średnik. Linia 13. zamknij nawias klamrowy else otwórz nawias klamrowy. Linia 14. float delta znak równości b asterysk b minus 4 asterysk a asterysk c średnik. Linia 16. if otwórz nawias okrągły delta otwórz nawias ostrokątny 0 zamknij nawias okrągły otwórz nawias klamrowy prawy ukośnik prawy ukośnik NIESKOŃCZENIE WIELE ROZWIĄZAŃ. Linia 17. wynik znak równości cudzysłów Równanie nie ma rozwiązania cudzysłów średnik. Linia 18. zamknij nawias klamrowy else if otwórz nawias okrągły delta znak równości znak równości 0 zamknij nawias okrągły otwórz nawias klamrowy prawy ukośnik prawy ukośnik JEDNO ROZWIĄZANIE. Linia 19. double x znak równości minus b prawy ukośnik otwórz nawias okrągły 2 asterysk a zamknij nawias okrągły średnik. Linia 20. wynik znak równości cudzysłów Równanie ma jedno rozwiązanie przecinek x znak równości cudzysłów plus to podkreślnik string otwórz nawias okrągły x zamknij nawias okrągły średnik. Linia 21. zamknij nawias klamrowy else if otwórz nawias okrągły delta zamknij nawias ostrokątny 0 zamknij nawias okrągły otwórz nawias klamrowy prawy ukośnik prawy ukośnik DWA ROZWIĄZANIA. Linia 22. double viete znak równości c prawy ukośnik a średnik. Linia 23. double x1 znak równości 0 średnik. Linia 24. double x2 znak równości 0 średnik. Linia 26. if otwórz nawias okrągły b zamknij nawias ostrokątny 0 zamknij nawias okrągły otwórz nawias klamrowy. Linia 27. x1 znak równości otwórz nawias okrągły minus b minus sqrt otwórz nawias okrągły delta zamknij nawias okrągły zamknij nawias okrągły prawy ukośnik otwórz nawias okrągły 2 asterysk a zamknij nawias okrągły średnik. Linia 28. x2 znak równości viete prawy ukośnik x1 średnik. Linia 29. zamknij nawias klamrowy else otwórz nawias klamrowy. Linia 30. x2 znak równości otwórz nawias okrągły minus b plus sqrt otwórz nawias okrągły delta zamknij nawias okrągły zamknij nawias okrągły prawy ukośnik otwórz nawias okrągły 2 asterysk a zamknij nawias okrągły średnik. Linia 31. x1 znak równości viete prawy ukośnik x2 średnik. Linia 32. zamknij nawias klamrowy. Linia 34. wynik znak równości cudzysłów Równanie ma dwa rozwiązania dwukropek lewy ukośnik nx1 znak równości cudzysłów plus to podkreślnik string otwórz nawias okrągły x1 zamknij nawias okrągły plus cudzysłów lewy ukośnik noraz lewy ukośnik nx2 znak równości cudzysłów plus to podkreślnik string otwórz nawias okrągły x2 zamknij nawias okrągły średnik. Linia 35. zamknij nawias klamrowy. Linia 36. zamknij nawias klamrowy. Linia 38. return wynik średnik. Linia 39. zamknij nawias klamrowy. Linia 41. int main otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy. Linia 43. double a znak równości 0 przecinek b znak równości 2 przecinek c znak równości minus 5 średnik. Linia 45. cout otwórz nawias ostrokątny otwórz nawias ostrokątny rowKwadr otwórz nawias okrągły a przecinek b przecinek c zamknij nawias okrągły otwórz nawias ostrokątny otwórz nawias ostrokątny endl średnik. Linia 47. return 0 średnik. Linia 48. zamknij nawias klamrowy. Linia 49. at at at. Linia 50. language znak równości cpp17. Linia 51. at at at. Linia 52. Program przecinek w przypadku gdy wartość współczynnika otwórz nawias ostrokątny code zamknij nawias ostrokątny a otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny będzie równa 0 przecinek ma wyliczyć rozwiązanie oraz wypisać komunikat dwukropek cudzysłów Nie jest to funkcja kwadratowa przecinek tylko liniowa przecinek ponieważ otwórz nawias ostrokątny code zamknij nawias ostrokątny a znak równości 0 otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny przecinek rozwiązanie funkcji liniowej znak równości otwórz nawias kwadratowy wyliczone rozwiązanie zamknij nawias kwadratowy cudzysłów kropka. Linia 53. at at at. Linia 54. at at at. Linia 55. at at at. Linia 56. kratka wykrzyknik prawy ukośnik usr prawy ukośnik bin prawy ukośnik python3 kropka 7. Linia 57. import sys. Linia 58. podkreślnik podkreślnik TF znak równości open otwórz nawias okrągły 3 przecinek apostrof w apostrof zamknij nawias okrągły. Linia 59. def podkreślnik pt otwórz nawias okrągły t zamknij nawias okrągły dwukropek. Linia 60. print otwórz nawias okrągły str otwórz nawias okrągły t zamknij nawias okrągły przecinek file znak równości podkreślnik podkreślnik TF zamknij nawias okrągły. Linia 62. if sys kropka stdin kropka read otwórz nawias okrągły zamknij nawias okrągły kropka strip otwórz nawias okrągły zamknij nawias okrągły znak równości znak równości apostrof Nie jest to funkcja kwadratowa przecinek tylko liniowa ponieważ a znak równości 0 przecinek rozwiązanie funkcji liniowej znak równości 2 kropka 500000 apostrof dwukropek. Linia 63. podkreślnik pt otwórz nawias okrągły 0 zamknij nawias okrągły.