Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
23.06.2002, 12:50
Ornest



Also, ich habe ein Programm geschrieben, dass die Determinante ausrechnet.

Quellcode:
public class Determinante
{    
    public static void main(String[] args)
    {
        double d, dx, dy, x, y;
        
        // 4x + 2y = 56
        // 2x - 5y = 32
        
        d  = deter_d( 4, 2, 2, -5 );
        
        if( d == 0 )
        {
            System.out.println("Gleichung ist unloesbar, da d = " + d );
        }
        else if( d != 0 )
        {
            dx = deter_dx( 56, 32, 2, 5 );
            dy = deter_dy( 4, 2, 56, 32 );
            
            System.out.println("D  = " + d );
            System.out.println("Dx = " + dx );
            System.out.println("Dy = " + dy );
            
            x = dx / d;
            y = dy / d;
            
            System.out.println("");
            System.out.println("x = " + x );
            System.out.println("y = " + y );
            
            System.out.println("");
            
            System.out.println("(" + x + "|" + y + ")");
            System.out.print("-------------");            
        }
    }
    
    public static double deter_d( double x1, double x2, double y1, double y2 )
    {        
        return ( x1 * y1 ) - ( x2 * y2 );
    }
    
    public static double deter_dx( double x1, double x2, double y1, double y2 )
    {
        double ergebnis1 = x1 * y1;
        double ergebnis2 = x2 * y2;
        
        return ( ergebnis1 * y2 ) - ( ergebnis2 * y1 );
    }
    
    public static double deter_dy( double x1, double x2, double y1, double y2 )
    {
        double ergebnis1 = x1 * y1;
        double ergebnis2 = x2 * y2;
        
        return ( x1 * ergebnis2 ) - ( x2 * ergebnis1 );
    }
}

Allerdings muss ich dazu sagen, dass es jetzt kein Hammer-Programm ist ... man kann nichtmal eine Variable einlesen, aber egal. Das Programm ist auf ner LAN entstanden und ich hatte nicht gerade nen klaren Kopf und ich würde gerne wissen, ob einer von euch nen Fehler findet, denn ich habe keinen gefunden und ich will unbedingt, dass das Programm fehlerfrei läuft. Thx schonmal

--

zum Seitenanfang zum Seitenende Profil || Suche
001
23.06.2002, 14:44
Prefect



Quellcode:
| x1 y1 |
| x2 y2 | = (x1 * y2) - (x2 * y1)

Das stimmt nicht ganz mit deter_d() überein.

Wozu die Funktionen deter_dx() und deter_dy() da sind ist mir auch schleierhaft. D1 und D2 wird genauso wie D berechnet...

cu,
Prefect

--

Widelands - Gemütliche Aufbaustrategie, Free Software
Noch ein Blog - Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.

zum Seitenanfang zum Seitenende Profil || Suche
002
23.06.2002, 23:44
Leviathan



mich würde ersteinmal interessieren was das programm überhaupt tun soll.

der begriff determinante ist mir vom bestimmen der nullstellen einer polynominalen funktion 2. oder 3. grades bekannt, das ist jeweils der teil, der in der p/q-formel / cardano-formel unter der wurzel steht. unlösbar ist eine derartige gleichung aber nie, sie hat immer genau soviele lösungen wie der grad des polynoms, wobei jedoch mehrere gleich sein können. ist die determinante negativ, ist die zugehörige lösung nichtreel, sondern imaginär oder komplex.

das programm sieht mir irgentwie nach lösen eines gleichungssystems aus.

--

Entities: HL | HL²
Kompilierfehler
r_speeds | mehr über r_speeds

zum Seitenanfang zum Seitenende Profil || Suche
003
24.06.2002, 15:04
apfelkorn



ich glaube du verwechselst das mit der diskriminante, kann das sein?

--

zum Seitenanfang zum Seitenende Profil || Suche
004
24.06.2002, 18:45
Ornest



Wenn man 2 Gleichungen mit 2 unbekannten hat

z.B.: 2x + 4y = 52
3x - 5y = 22

dann kann man mit der Determinante

|2 4|
|3 -5|

überprüfen, ob die Gleichung lösbar ist ( also z.B.: 4 = 4 )
oder unlösbar ist ( z.B.: 4 = 5 )

danach kann man per Dx und Dy die x & y Koordinate berechnenindem man
Dx / D und Dy / D teilt :)

hatten das gerade in Mathe und da fande ich das ganz hilfreich :)

@ Prefect: hast recht ... es muss

Quellcode:
return ( x1 * y2 ) - ( x2 * y1 )

Ach ja, mir ist auch gerade aufgefallen, dass deter_x und deter_y unsinn sind :)

thx

P.S.: normalerweise habe ich das dick kommentiert, aber hier habe ichs rausgenommen.

--


Dieser Beitrag wurde am 24.06.2002 um 18:50 von Ornest bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
005
24.06.2002, 19:52
Leviathan



@apfelkorn: richtig, das heisst diskriminante was ich meine.

@ornest: danke für ich erklärung, ich häng mich gleich mal ins formelwerk.

--

Entities: HL | HL²
Kompilierfehler
r_speeds | mehr über r_speeds

zum Seitenanfang zum Seitenende Profil || Suche