lineare funktionen und winkel

annalena

Mitglied
Hallo,
wie das Thema schon sagt, habe ich ein kleines Programm geschrieben um lineare Funktionen zu berechnen. Zunächste gebe ich die Koordinaten der geraden ein und berechne dann das dadurch entstehende Dreieck. Jedoch ist das für mich noch sehr rätselhaft wie ich auf die Winkelwerte komme. Auf meinem Taschenrechner nehme ich die anstiegswerte der Gerade also m1 und m2 bei der standart formel y=mx+n ist "m" ja nunmal der anstieg der Geraden. auf dem Taschenrechner gebe ich nun den anstieg ein, drücke Shift und dann die Tangenstaste.
Also berechnet er damit ja dann tan(hoch -1) = alpha als beispiel.

aber mit jedem versuch den ich unternahm kam ich nie auf meinen Winkel hier ist mal der gesammte code..ist quick and dirty..habs wärend des unterrichtes am abendgymnasium gemacht ;)

ich nahm hier erstmal feste werte um schneller testen zu können...

und der rest der ausgabe wobei ich mich hier frage, wie m1 nicht glatt 0,4 ist..was es ja eigentlich ist! wobei aber alle anderen werte wieder richtig gerundet sind..mhh
-----------------------------------------------------------------------
Geben Sie alle Koordinaten ein:
A: (-5.0 ; 0.4) B: (1.0 ; 2.8)
D: (-6.0 ; -14.0) C: (6.0 ; 4.0)
m1= 0.39999999999999997
m2= 1.5
n1= 2.4
n2= -5.0
x01= -6.0
x02= 3.3333333333333335
g= 9.333333333333334
Gleichungen:
0.39999999999999997x + 2.4 = 1.5x + -5.0
S(x;y/h)= (6.727272727272727 ; 5.09090909090909)
Seiten:
a= 6.1185112553328285 LE
b= 13.707692236342373 LE
c= 9.333333333333334 LE
u= 29.159536825008537 LE
A= 23.757575757575754 FE
-----------------------------------------------------------------------
bei genau diesem beispiel müsste die winkel folgendermaßen sein:
α=21,80° β=123,69° γ=34,51°

Java:
package LineareFunktion;

import java.util.Scanner;

public class Main
{

  //####################################################
  public static void main( String[] args )
  {
    //double Ax, Bx, Cx, Dx;
    //double Ay, By, Cy, Dy;
    double Sx, Sy;
    double h2;
    double m1, m2;
    double x01, x02;
    double x01g = 0, x02g = 0;
    double n1, n2;

    double af, u;
    double a1, a, b1, b, c;

    double aw, bw, cw;
    System.out.println( "Geben Sie alle Koordinaten ein:" );
    Scanner sc = new Scanner( System.in );
    double ax = -5,
        ay = 7.3,
        bx = 1,
        by = 4.9,
        cx = -6,
        cy = 4,
        dx = 5,
        dy = -12.5;

    /*
     * System.out.println( "A-x:" );
    double ax = sc.nextDouble();
    System.out.println( "A-y:" );
    double ay = sc.nextDouble();
    System.out.println( "B-x:" );
    double bx = sc.nextDouble();
    System.out.println( "B-y:" );
    double by = sc.nextDouble();
    System.out.println( "C-x:" );
    double cx = sc.nextDouble();
    System.out.println( "C-y:" );
    double cy = sc.nextDouble();
    System.out.println( "D-x:" );
    double dx = sc.nextDouble();
    System.out.println( "D-y:" );
    double dy = sc.nextDouble();
    */
    System.out.println( "A: (" + ax + " ; " + ay + ") B: (" + bx + " ; " + by + ")" );
    System.out.println( "D: (" + cx + " ; " + cy + ") C: (" + dx + " ; " + dy + ")" );
    //"C ""x:" "y:" "D ""x:" "y:";
    sc.close();
    //BERECHNUNGEN########################################
    //m1/m2
    m1 = ( by - ay ) / ( bx - ax );
    m2 = ( dy - cy ) / ( dx - cx );
    System.out.println( "m1= " + m1 + "\n" + "m2= " + m2 );
    //n1/n2
    n1 = ( m1 * ax * -1 ) + ay;
    n2 = ( m2 * cx * -1 ) + cy;
    System.out.println( "n1= " + n1 + "\n" + "n2= " + n2 );
    //x0
    x01 = ( n1 * -1 ) / m1;
    x02 = ( n2 * -1 ) / m2;
    System.out.println( "x01= " + x01 + "\n" + "x02= " + x02 );
    //g

    if ( x01 < 0 )
    {
      x01g = x01 * -1;
    }
    else
      x01g = x01;
    if ( x02 < 0 )
    {
      x02g = x02 * -1;
    }
    else
      x02g = x02;

    c = x01g + x02g;

    System.out.println( "g= " + c );
    //S
    System.out.println( "Gleichungen:\n" + m1 + "x + " + n1 + " = " + m2 + "x + " + n2 );
    double m3 = ( m2 * -1 ) + m1;
    double n3 = ( n1 * -1 ) + n2;
    Sx = n3 / m3;
    Sy = m1 * Sx + n1;
    System.out.println( "S(x;y/h)= (" + Sx + " ; " + Sy + ")" );
    //seiten
    h2 = Sy * Sy;
    double qx1 = 0;
    double qx01 = 0;
    qx1 = x01 - Sx;
    qx01 = qx1 * qx1;
    b1 = qx01 + h2;
    b = Math.sqrt( b1 );
    double qx2 = 0;
    double qx02 = 0;
    qx2 = x02 - Sx;
    qx02 = qx2 * qx2;
    a1 = qx02 + h2;
    a = Math.sqrt( a1 );
    System.out.println( "Seiten:\na= " + a + " LE\nb= " + b + " LE\nc= " + c + " LE" );
    //U + A
    u = a + b + c;
    af = 0.5 * c * Sy;
    System.out.println( "u= " + u + " LE\nA= " + af + " FE" );
    //winkel //math.tan(VAR)
    //double cosa, cosb, cosc, va, vb, vc;
    //cosa = Math.cos( m1 );
    //va = 180 / ( cosa * Math.PI );
    //cosa = ( ( b * b ) + ( c * c ) - ( a * a ) ) / ( 2 * b * c );
    //va = ( Math.cos( cosa ) );
    //cosb = ( ( a * a ) + ( c * c ) - ( b * b ) ) / ( 2 * a * c );
    //cosc = ( ( a * a ) + ( b * b ) - ( c * c ) ) / ( 2 * a * b );
    //aw = Math.cos( cosa );

    System.out.println();
    System.out.println();
    //if (steigung anders)
    //bw = Math.tan( m2 );
    //if (steigung anders)
    //System.out.println( "\n" + va /*+ "\n" + vb + "\n" + vc */ );

  }
}
 

Robat

Top Contributor
Du bekommst einen Winkel wenn du auf deinem Taschenrechner sin()^-1 drückst. das die umkehrfunktion des sinus, also der arcsin(). auch die Funktion ist der der math klasse implementoert - liefert Aber den wert im Bogenmass. daher musst du mit der Funktion toDegress noch umwandeln.
Java:
Math.toDegrees(Math.asin(double zahl));

Vielleicht hilft dir der Denkanstoß Ja
 

annalena

Mitglied
ja das hat für das dreieck sehr geholfen...nun bin ich beim trapez...
und um die b seite auszurechnen würde die formel entsprechen:
b =h/sin β
jedoch wenn ich meinen beta winkel mit Math.sin(btan) rechne komme ich nicht auf den exakten wert, und kann ihn demzufolge ja nicht verwenden...mhh
in meinem beispiel habe ich beta:36,87° und müsste auf einen sinuns von:rund 0,6 kommen, jedoch kommeich mit Math.sin(btan) auf -0,7374
und mit dem bogenmaß also Math.asin(btan) komme ich auf NaN also zahl kann nicht angezeigt werden also zwei werte die mir missfallen
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
M lineare Sondierung löschen Allgemeine Java-Themen 2
S Warmup für Lineare-Suche mit Zeitmessung Allgemeine Java-Themen 2
A Lineare Interpolation mit zwei Arrays Allgemeine Java-Themen 4
C Prüfen ob sich ein Punkt innerhalb einer Kugel befindet (Java3D,nicht-lineare GLS) Allgemeine Java-Themen 5
Guybrush Threepwood Lineare Diskriminanzanalyse Allgemeine Java-Themen 5
R Frage zu einfügen in generische lineare Liste Allgemeine Java-Themen 7
T JNA, Aufruf der Funktionen einer dll Allgemeine Java-Themen 5
B Sent and Receive Funktionen zwischen Objekten ermöglichen? Allgemeine Java-Themen 8
Robertop Funktionen miteinander verketten Allgemeine Java-Themen 5
D Methoden Methoden anpassen und fehlende Funktionen hinzufügen Allgemeine Java-Themen 475
Neumi5694 Parser - Zerlegen verschachtelter Funktionen Allgemeine Java-Themen 2
M JMuPDF Funktionen Allgemeine Java-Themen 0
S Funktionen von jre7 fehlen in jre8 Allgemeine Java-Themen 2
Tarrew RMI Java RMI - com.sun.proxy.$Proxy1 cannot be cast to Funktionen Allgemeine Java-Themen 0
A Funktionen aufrufen nach Schema x Allgemeine Java-Themen 2
C Benutzereingabe von EXCEL-Funktionen parsen Allgemeine Java-Themen 4
D Annotationen oder anonyme Funktionen? Allgemeine Java-Themen 0
N Algorithmus zum bewerten von mathematischen Funktionen Allgemeine Java-Themen 11
K Eclipse Mathematische Funktionen Allgemeine Java-Themen 8
T Parallelisierung zweier BigInteger-Funktionen Allgemeine Java-Themen 6
S Programmfehler bei grundlegenden Funktionen Allgemeine Java-Themen 6
ruutaiokwu threads bei klassen mit stat. funktionen... Allgemeine Java-Themen 2
S Profiler-Funktionen in eigener Applikation nutzen..? Allgemeine Java-Themen 5
X Quellcode von nativen Funktionen Allgemeine Java-Themen 2
J Zugriff auf gemeinsame Funktionen Allgemeine Java-Themen 4
B webservice stub enthält nicht genug funktionen Allgemeine Java-Themen 2
M Schnelle Scriptsprache für einfache Funktionen? Allgemeine Java-Themen 5
D Kompakte Syntax für Funktionen Allgemeine Java-Themen 7
D Parser-generator für mathematische Funktionen Allgemeine Java-Themen 12
R Problem mit Trigonometrischen Funktionen Allgemeine Java-Themen 16
N forschleife durchläuft funktionen Allgemeine Java-Themen 7
S reelle Funktionen Formel Allgemeine Java-Themen 13
A Funktionen werden im Jar-File nicht ausgeführt Allgemeine Java-Themen 6
M GUI ähnliche Elemt. und Funktionen im Browser - Technologie? Allgemeine Java-Themen 8
H Programmerweiterung durch Datei die Funktionen enthält Allgemeine Java-Themen 5
M Verkettung von 2 Funktionen? Allgemeine Java-Themen 4
A in patterns funktionen aufrufen Allgemeine Java-Themen 3
märliprinz Sortieren und Filtern von Funktionen/Methoden Allgemeine Java-Themen 4
F Aus Java heraus WinAPI Funktionen benutzen Allgemeine Java-Themen 7
W Problem mit sin- und cos-Funktionen Allgemeine Java-Themen 2
S Auf statische Funktionen mit Java Reflections zugreifen Allgemeine Java-Themen 3
C Funktionen einer dll aufrufen Allgemeine Java-Themen 3
C Koordinaten LONG/LAT eines neuen Punktes in bestimmter Entfernen und Winkel berechnen Allgemeine Java-Themen 3
SaftigMelo In einem Winkel Objekt bewegen Allgemeine Java-Themen 2
T Winkel normalisieren (360°) Allgemeine Java-Themen 12
U Java Dreieck Winkel Allgemeine Java-Themen 1
L Winkel eines Vektors berechnen [Anfängerprob] Allgemeine Java-Themen 5
A Winkel bestimmen Allgemeine Java-Themen 5
P Winkel berechnen. Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben