Witam.
Mam problem z pewnym zadaniem o treści:
"dane są suma i iloczyn dwóch liczb całkowitych. Napisz program znajdujący te liczby".
Nie mam zupełnie pomysłu na to zadanie. W ogóle jakiej formuły użyć i działań?
Wiem, że \(\displaystyle{ a+b=s}\) oraz \(\displaystyle{ a \cdot b=i.}\) S oraz i wprowadza użytkownik, tylko jak wyznaczyć \(\displaystyle{ a}\) i \(\displaystyle{ b}\)?
[C++] Znalezienie liczb dających sumę i iloczyn
[C++] Znalezienie liczb dających sumę i iloczyn
Ostatnio zmieniony 30 mar 2014, o 10:21 przez Afish, łącznie zmieniany 2 razy.
Powód: Poprawa wiadomości.Staraj się lepiej dobierać nazwy tematów, tak by wskazywały o czym jest treść zadania.
Powód: Poprawa wiadomości.Staraj się lepiej dobierać nazwy tematów, tak by wskazywały o czym jest treść zadania.
- Althorion
- Użytkownik
- Posty: 4541
- Rejestracja: 5 kwie 2009, o 18:54
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 9 razy
- Pomógł: 662 razy
[C++] Znalezienie liczb dających sumę i iloczyn
\(\displaystyle{ \begin{cases} a+b = s \\ ab = i \end{cases} \Rightarrow a, b = \frac{s - \sqrt{s^2-4i}}{2}, \frac{s + \sqrt{s^2-4i}}{2}}\)
(zwróć uwagę, że to para nieuporządkowana, tzn. dopuszczalny wynik jest w takiej bądź odwrotnej kolejności — jedna z nich jest z plusem, druga z minusem, ale wszystko jedno która)
(zwróć uwagę, że to para nieuporządkowana, tzn. dopuszczalny wynik jest w takiej bądź odwrotnej kolejności — jedna z nich jest z plusem, druga z minusem, ale wszystko jedno która)
- rtuszyns
- Użytkownik
- Posty: 2042
- Rejestracja: 29 gru 2006, o 23:24
- Płeć: Mężczyzna
- Lokalizacja: Zamość
- Podziękował: 1 raz
- Pomógł: 229 razy
[C++] Znalezienie liczb dających sumę i iloczyn
\(\displaystyle{ \begin{cases} a+b=s \\ ab=i \end{cases}}\)
Należy rozwiązać powyższy układ równań względem \(\displaystyle{ a}\) oraz \(\displaystyle{ b}\).
Zaprogramowanie później jest banalne.
W jakim języku masz to zaprogramować?
Pamiętaj o warunkach na \(\displaystyle{ s}\) oraz \(\displaystyle{ i}\)...
PS. Używaj na przyszłość \(\displaystyle{ \LaTeX}\)a do zapisywania wyrażeń matematycznych.
--------
Spóźniony...
Należy rozwiązać powyższy układ równań względem \(\displaystyle{ a}\) oraz \(\displaystyle{ b}\).
Zaprogramowanie później jest banalne.
W jakim języku masz to zaprogramować?
Pamiętaj o warunkach na \(\displaystyle{ s}\) oraz \(\displaystyle{ i}\)...
PS. Używaj na przyszłość \(\displaystyle{ \LaTeX}\)a do zapisywania wyrażeń matematycznych.
--------
Spóźniony...
[C++] Znalezienie liczb dających sumę i iloczyn
Ok, dziękuje. Jeszcze chwilkę się pomęczyłem z zapisaniem tego i działa.
Kod (pierwiastków) wygląda następująco(w c++):
Kod (pierwiastków) wygląda następująco(w c++):
Kod: Zaznacz cały
a=(s-sqrt(pow(s, 2)-4*i))/2;
b=(s+sqrt(pow(s, 2)-4*i))/2;
Ostatnio zmieniony 30 mar 2014, o 10:22 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
Powód: Poprawa wiadomości.
- Althorion
- Użytkownik
- Posty: 4541
- Rejestracja: 5 kwie 2009, o 18:54
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 9 razy
- Pomógł: 662 razy
[C++] Znalezienie liczb dających sumę i iloczyn
Uwzględnij fakt, że pierwiastek z liczby ujemnej nie jest liczbą rzeczywistą. W szczególności więc, jeśli funkcję
sqrt
przywołujesz z biblioteki cmath
, a nie z complex
, to powyższy kod ma święte prawo nie działać (powstanie domain error — a co to konkretnie oznacza, zależy już od standardu C++, z którego korzystasz; w starszym standardzie (C++98) zmienna errno
zostanie ustalona na EDM
, C++11 można ustawić tak, by zamiast tego rzucał wyjątek FE_INVALID
).[C++] Znalezienie liczb dających sumę i iloczyn
Tak, zapisałem odpowiedni warunek.
A załączyłem
A załączyłem
math.h
w tym przypadku.