Ciekawe zadanie ze zbiorem l. rzeczywistych

0

Napisz program, którego zadaniem będzie stwierdzenie czy równanie kwadratowe ma rozwiązanie w zbiorze liczb rzeczywistych... ciekawe zadanie :) napisałem równanie kwadratowe... ale jak sprawdzić rozwiązanie czy jest w zbiorze liczb rzeczywistych??? Proszę o pomoc

class Rownanie {
public static void main ( String args [ ] )

{
int a=1 , b=4 , c=3;
double x , x1, x2;
double delta;

  if ( a == 0) {
      System.out.println (" to równanie nie jest kwadratowe, gdyż " + a + " jest zerem " );
                       }
   else {
       delta= b*b - 4 * a *c ;
                         if (delta < 0 ) {
                         System.out.println ( " delta jet mniejsza od zera "); }
                        else{
                              if (delta == 0 ) {
                              x= -b /2*a; }

                          else{
                                 x1= (-b- Math.sqrt(delta)) / 2*a ;
                                 x2= (-b + Math.sqrt (delta)) / 2*a;
                                 System.out.println (" x1 wynosi " + x1 + " x2 wynosi " + x2 ); }
                          
              }
       }
    }

Powered by DonKiLeR

0

Doucz się trochę, równanie kwadratowe ma zawsze rozwiązania. Leżą one w zbiorze liczb rzeczywistych <==> delta>=0.

0

mógłbyś mi to troszeczkę jaśniej wyjaśnić [wstyd]

0

Nie potrafię jaśniej.

0

co oznacza <==> ???? z tego co napiałeś to np. -3 czy 4 to też liczby rzeczywiste... ale nie o to chodzi nauczycielowi ;)... trzeba sprawdzić czy liczba jest z przecinkiem np. czy x1 lub x2 będzie 4,5 23.3346 4,634 itd. rozumiesz o to mi chodzi... czy da się to jakoś sprawdzić??? Ja dopiero 3 dzień w javie programuje

0
  1. <==> znaczy wtedy i tylko wtedy
  2. Jesteś pewien że nauczycielowi chodzi o coś innego ? Porównaj obliczony pierwiasteki x1 z (int)x1, jeśli nie są równe, to x1 "nie jest rzeczywiste".
0

w tym przypadku ile programujesz w javie nie ma nic do rzeczy :D to tylko czysta matematyka.
rownanie kwadratowe typu ax^2 + bx + c = 0 ma rozwiązanie wtedy i tylko wtedy gdy
b^2 - 4ac > 0 -> wtedy ma dwa rozwiązania
== 0 -> wtedy ma jedno rozwiązanie

nie wliczamy liczb zespolonych bo dla zespolonych istnieje zawsze rozwiązanie ^^
gimnazjum się kłania :P

0

Nie szalej :D Ja to dopiero w liceum poznałem. Samą funkcję kwadratową rzeczywiście miałem w gimnazjum, ale przyjmowaliśmy zawsze b=0.

0

Przecież już sprawdziłeś. Jeżeli delta jest zerowa, to ma jedno rozwiązanie w R, a jeżeli dodatnia, to dwa rozwiązania w R. Natomiast jeżeli delta jest ujemna, to równanie nie ma rozwiązań w R (brak punktów zerowych).

Inaczej mówiąc równanie ax^2 + bx + c = 0 można zamienić na
(x - x1)*(x - x0) = 0. Z tym, że dla delty > 0, x0 i x1 są rzeczywiste i różne (to jest Twoje x1 i x2);
dla delty == 0, x1 == x0; a dla delty ujemnej x0 i x1 nie są rzeczywiste, lecz urojone.
No, ale ten ostatni przypadek jest w szkole średniej interpretowany jako brak rozwiązań w zbiorze R. Bo tylko takie zbiory liczb wtedy się zna.

ps. To trochę podobnie jak z przejściem z liczb wymiernych w gimnazjum na rzeczywiste przy okazji stwierdzenia, że przekątnej kwadratu nie da się żadnym sposobem zapisać w postaci x/y - czyli postaci liczby wymiernej. Konkretnie nie ma rozwiązania w zbiorze liczb wymiernych takie równanie:
a2 + b2 = (x / y)^2

0

@Olamagato napisał

No, ale ten ostatni przypadek jest w szkole średniej interpretowany jako brak rozwiązań w zbiorze R.

Ten ostatni przypadek (delta<0) jest w każdej szkole interpretowany jako brak rozwiązań w zbiorze R. W szkole średniej jest on interpretowany jako brak rozwiązań.

0
Olamagato napisał(a)

dla delty == 0, x1 == x0; a dla delty ujemnej x0 i x1 nie są rzeczywiste, lecz urojone.

Powiedziałbym raczej "zespolone" :) Część rzeczywista niekoniecznie musi być równa zero.

0

Nie chcę się czepiać, ale nie wziąłeś pod uwagę kółek matematycznych. :)
Poza tym nie ma czegoś takiego jak absolutny "brak rozwiązań" (bez odniesienia do czego). Zawsze są jakieś rozwiązania - tyle, że czasem nie są nam znane, albo ich nie rozumiemy.

0

Powiedziałbym raczej "zespolone" :) Część rzeczywista niekoniecznie musi być równa zero.

Racja. EOT z mojej strony.

0

Z tego co ja widzę, to donkilleros'owi chodziło tylko o oddzielenie całkowitych (a może nawet naturalnych) od nie-całkowitych, które nazywał rzeczywistymi. Prawda? ;)

0

Pytanie bylo - napisz program ktorego zadaniem bedzie stwierdzenie czy rownanie kwadratowe ma rozwiazanie w zbiorze liczb rzeczywistych. A wiec po co obliczac x1, x2, x0, skoro wystarczy tylko powiedziec - jesli delta>=0 to ma rozwiazania w R a jesli delta<0 to nie ma. I tyle, kropka.
Sam sie dopiero ucze pare dni, wiec pytanie do Was czy w tym wypadku mam racje?

class Main {
	public static void main (String args []) {
		int a = 2, b = 5, c = -2;
		double delta = b * b - 4 * a * c;
		if (delta < 0) {
			System.out.println("to rownanie nie ma rozwiazania w liczbach rzeczywistych");
		}
		else if (delta >= 0) {
			System.out.println ("to rownanie ma rozwiazanie w zbiorze liczb rzeczywistych");
		}
		
	}
} 
0

@mychal, przemysl to co napisales, bo to nie ma sensu...

0

@loo21, masz rację, tylko niepotrzebnie wykonujesz jedno sprawdzenie

                if (delta < 0) {
                        System.out.println("to rownanie nie ma rozwiazania w liczbach rzeczywistych");
                }
                else{
                        System.out.println ("to rownanie ma rozwiazanie w zbiorze liczb rzeczywistych");
                }

1 użytkowników online, w tym zalogowanych: 0, gości: 1