Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Delphi / Kylix / Turbo Pascal » delphi cosinus

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
24.03.2004, 17:04 Uhr
~huhu
Gast


habe eine frage
will den cosinis satz machen ich brauche alpha

alpha:=((a*a)-(b*b)-(c*c)+2*(b*c));

das würde cosinus alpha sein wie rechne ich nun nur alpha aus ??
auf dem taschen rechner were es ²nd Cos??

könnt ihr mir da helfen

wäre super wen ihr mir helfen könnt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
24.03.2004, 17:10 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


wenn ich mich nicht irre müssest du so rechnen

c^2=a^2+b^2 -2ab*cos(alpha)

also ist alpha= arccos( (a^2+b^2-c^2)/2ab)


Bearbeitung:

wobei alpha dann der winkel ist der von a und b eingeschlossen wird, in der schule hätte man ihn wahrscheinlich gamma genannt weil das der ist der der seite c gegenüber liegt...


--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 24.03.2004 um 17:12 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
24.03.2004, 19:23 Uhr
~nicht ganz
Gast


also die formel die ich umformeln will ist ja
a²=b²+c²-2bc*cos(alpha)

umgeformt wäre das ja da ich ja alles auser cos(alpha) auf die andere seite bringe so

a²-b²-c²+2bc=cos(alpha)

ich habe der variable den namen alpha gegeben also sieht das im programm so aus

alpha=(a^2-b^2-c+2*(bc))

also cos alpha hab ich ja kan ich einfach
eine neue zeile beginnen und die so machen ?
also ich mach ne variable namens alpha2

alpha2:=arcos(alpha);


is zwar umständlich aber müsste doch funktionieren

ich muss nämlich den winkel alpha und beta suchen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
24.03.2004, 19:32 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


naja das ist ja nur ne umbenennung (namen sind schall und rauch, du kannst die seite auch tante_fridas_ketchup nennen... ) wichtig ist das das ganze im gesammtkontext dann wieder stimmt

welche seite du also a b oder c nennst spielt ja eigentlich keine rolle ist mathematisch das gleiche

aber wenn du das so haben willst das auf auf der rechten seite steht ist das auch kein problem... daher auch mein kommentar das man das in der schule wohl gamma genannt hätte

um die formel mal anders zu schreiben damit die eindeutiger ist...


seite_die_nicht_am_winkel_anliegt^2=eine_seite_die_am_winkel_anliegt^2 + andere_seite_die_am_winkel_anliegt^2 - 2*eine_seite_die_am_winkel_anliegt *andere_seite_die_am_winkel_anliegt * cos(winkel_der_zwischen_den_beiden_ihm_anliegenden_seiten_ist);


umgeformt dann

winkel_der_zwischen_den_beiden_ihm_anliegenden_seiten_ist= arccos( (eine_seite_die_am_winkel_anliegt^2 + andere_seite_die_am_winkel_anliegt^2 -seite_die_nicht_am_winkel_anliegt^2)/(2*eine_seite_die_am_winkel_anliegt *andere_seite_die_am_winkel_anliegt))



--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 24.03.2004 um 19:32 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
24.03.2004, 19:37 Uhr
~lol so viel lesestoff
Gast


so ich bin komplet konfus wen ich das da lesen
ich kopier mal die prozedur rein ...

Code:
procedure Tfrm_trigo.btn_berechnenClick(Sender: TObject);
var a,b,c,alpha,flaeche:real;
begin
a:=strtofloat(edt_zahl1.Text);
b:=strtofloat(edt_zahl2.Text);
c:=strtofloat(edt_zahl3.Text);
if ((a+b)>=c) and ((b+c)>=a) and ((a+c)>=b) then
begin
alpha:=arccos(a^2-b^2-c^2+2*(b*c));
lbl_ausgabe.Caption:='Der Winkel Alpha beträgt '+floattostr(alpha);
end
else
begin
showmessage('Das ergibt kein Dreieck!');
end;
end;


das problem ist er nimmt arccos nicht an
es geht hier um ein algemeines dreieck wie du siehst
a+b darf nicht kleiner als C sein da ja sonst die seite c zu kurz ist um an a bzw b anzuschliesen und es würde kein dreieck ergeben sondern ein hacken

so hier hast auch was zu lesen

vieleicht kannst du mir da weiter helfen ach so habe delphi 6 englisch


Bearbeitung von loddab:
code-Tags gesetzt. Ist so leichter lesbar

Dieser Post wurde am 25.03.2004 um 11:36 Uhr von loddab editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
24.03.2004, 19:45 Uhr
~huhu
Gast


also du meinst sagen wir wir nehmen das beispiel mit a,b,c

also wäre es c²=a²+b²-2ab*cos(gamma)

da gamma von a und b eingeschlossen wird
ich will aber alles auser cos(gamma) auf die seite von c² bringen das würde ja dan so aus sehen


c²-a²-b²+2ab=cos(gamma)

ich habe also +a² und +b² mit -a² und -b²auf die andere seite gebraucht und das -2ab mit +2ab auch aif die seite von c² gebracht also steht nur mehr cos(gamma) da wie rechne ich also cos(gamma) in gamma um ?? is doch einfach :P

ihr seid ja PRO(grammierer )

er nimmt arccos nicht an gibts da was anderes ? oder hab ich was falsch gemacht ?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
24.03.2004, 19:50 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


naja ich behersche zwar kein delphi aber ich würde mal spontan sagen wenn er arccos nicht annimmt liegt das entweder daran das du eine mathebibliothek nicht eingebunden hast, oder daran das arccos in delphi anders heisst...
vermutlich acos...

dann ist nach ein fehler in deiner formel...
wenn du den winkel ausrechnen willst musst du durch 2*a*b( oder wie auch immer nun die beiden seiten heissen die am winkel anliegen) teilen

naja das du ja anscheinend alpha ausrechnen willst und bei dir alpha vermutlich der winkel ist der der a seite gegenüberliegt muss dass dann in etwa so aussehen...


alpha:=arccos((b^2+c^2-a^2)/(2*b*c));

jetzt musst du nur noch rausbekommen wie arccos in delphi heisst (wie gesagt ich würde stark auf acos tippen) und welche lib du gegebenfalls einbinden musst damit der arccos kennt...

ferner wird der den winkel vermutlich nicht im bogen sondern im radiantenmass ausrechnen, soll heissen wenn du den winkel in grad haben willst musst du noch mit 180/Pi multiplizieren...
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 24.03.2004 um 19:50 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
24.03.2004, 20:02 Uhr
~huhu
Gast


hm leider funktioniert es immer noch nicht ich versteh das einfach nicht

arccos heist es in delphi
acos in c++


es steht pointer type requiered ... hm ich bin noch niht lang bei delphi dabei
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
24.03.2004, 20:06 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


naja erstens hab ich auch kein plan von delphi und zum anderen hilft pointer typ requiered nicht wirklich viel,
an irgend einer stelle rufst du wohl eine funktion auf die lieber einen pointer hätte, dein compiler müsste dir eingentlich auch sagen an welcher stelle er das nicht mag...

kann denn hier sonst keiner delphi?
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 24.03.2004 um 20:06 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
24.03.2004, 20:20 Uhr
~huhu
Gast


trotzdem danke das du es wenigstens versucht hast

hm fals ich mal fragen zu anderen programiersprachen habe melde ich mich
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ Delphi / Kylix / Turbo Pascal ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: