Hvorfo programmet her afviser Arc Cosinus .
Jeg har lavet tilsvarende prorammer til Excel, Casio - & TexasInstrument
regnemaskiner og der virker de udmærket.
Mvh. Lars Hietala (Nybegynder).
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
REM ***** BASIC *****
Sub ByPass
Overskrift = “BY-PASS af Lars-Erik Hietala”
Tekst = “Indtast venligst Diameter =?”
Dia = Val (InputBox (Tekst,Overskrift))
Tekst = “Indtast venligst BY-PASS =?”
Byp = Val (InputBox (Tekst,Overskrift))
Tekst = “Indtast venligst Overlæg =?”
Ov = Val (InputBox (Tekst,Overskrift))
R1 = (Dia/2)
If R1<5>5 Then:Else R1=5:EndIf
If Byp>=R1 Then Byp=R1:If Byp<R1 Then:Else Byp=R1:EndIf
Fors = (R1-Byp)
Vink = (arccos(Fors/R1*180/Pi)) <<<<<<< HER ER FEJLEN !!! <<<<<<<<<
Kord = (R1sin(VinkPi/180))
Start = (90-Kord)
Hbue = (R1PI)
Bue = (Hbue/180Vink)
Minus = (Bue-Kord)
Klip = (Hbue-Minus+Ov/2)
Så vidt jeg kan se findes arctan(x) i makroprogrammeringssproget. Der kaldes den Atn(x).
Hvis du går ind på Wikipedia (http://en.wikipedia.org/wiki/Inverse_trigonometric_function) kan du finde en formel der viser hvodan man udregner arccos(x) ud fra arctan(x).
Det er naturligvis lidt mere kringlet men du kan få løst dit problem.
'd. 14.7.08
'Her er mit svar på arccosinus,
'der virker.
'Arccos X = 90-Atn(X/(-X*X+1)^(1/2))*180/Pi.
'Tak for hjælpen
'Lars Hietala
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
REM ***** BASIC *****
Sub ByPass
Overskrift = “BY-PASS Plade Udfoldning”
Tekst = “Indtast venligst Diameter =?”
Dia = Val (InputBox (Tekst,Overskrift))
Tekst = “Indtast venligst BY-PASS =?”
Byp = Val (InputBox (Tekst,Overskrift))
Tekst = “Indtast venligst Overlæg =?”
Ov = Val (InputBox (Tekst,Overskrift))
R1 = (Dia/2)
If R1<5>5 Then:Else R1=R1:EndIf
If Byp>=R1 Then Byp=R1:If Byp<R1 Then:Else Byp=Byp:EndIf
If Byp<1 Then Byp=1:If Byp<R1 Then:Else Byp=Byp:EndIf
Omreg = ((R1-Byp)/R1)
'Print Omreg
Vink = (90-Atn(Omreg/(-OmregOmreg+1)^(1/2))180/Pi)
'Print Vink
Kord = (R1sin((Vink)Pi/180))
Start = (90-Kord)
Hbue = (R1PI)
Bue = (Hbue/180Vink)
Minus = (Bue-Kord)
Klip = (Hbue-Minus+Ov)
Besked = " KlipMål = " & Int (2Klip) & " m/m" & Chr(13) & Chr(13)
Besked = Besked & " Ø / By-pass / Overlæg = " & Int (R12) & " / " &_
Int (Byp) & " / " & Int (Ov) &" m/m" & Chr(13) & Chr(13)
Besked = Besked & " Bukkekant / Start / Korde = “& Int (Vink) & " / " &_
Int (Start) & " gr. / " & Int (Kord*2) &” m/m" & Chr(13)
MsgBox (Besked, 0, Overskrift)