25. oktober 2005 - 19:01
Der er
19 kommentarer og 1 løsning
find pi med matematik
hvorfor virker følgende kode ikke if cint(Deci) > 0 then Dim N For N = 0 To Deci N = N + 2 Next Dim F For i = 0 To Deci if F = "+" then F = "-" else F = "+" end if Next Dim t For t = 0 To Deci PI = "PI + 1" & F(t) & N(t) Next pi = "4*(1" & PI & ")" Response.Write pi får fejl id en linie hvor PI Defineres
Annonceindlæg fra Deloitte
25. oktober 2005 - 19:09
#1
PI = (PI + 1) & F(t) & N(t)
25. oktober 2005 - 19:18
#2
Jeg formoder at det er denne algoritme du forsøger at kode: Pi = 4*(1 - 1/3 + 1/5 - 1/7 + 1/9 - ...) I så fald er der temmelig langt fra din kode til at have dette. Primært skal din ene loop (N-loopen) omfatte alt den anden kode i stedet for at køre færdig inden at du går videre til resten.
25. oktober 2005 - 20:35
#3
nielle > der forstår jeg ikke, jeg kan jo ikke have det første 1-tal inde i N-loopet fordi så vil 1 tallet gå igen, og det skal jo ikke
25. oktober 2005 - 20:39
#4
Dim F For i = 0 To Deci if F = "+" then F = "-" else F = "+" end if Next Dim N For i = 0 To Deci pi2 = " 1 " & ": " & cint(N) & " " & F(i) N = N + 2 i = i + 1 Next pi = "4*(" & pi2 & ")" Response.Write pi end if %> hvad er problemet nu?? stadig i den hvor F indgår
25. oktober 2005 - 20:40
#5
nej nu er det der hvor pi2 defineres **
25. oktober 2005 - 20:50
#6
sum = 1 For i = 1 To 1000 If i Mod 2 = 0 Then sum = sum + 1 / (2 * i + 1) Else sum = sum - 1 / (2 * i + 1) End If Next pi = 4 * sum
25. oktober 2005 - 20:50
#7
og det er iøvrigt en af de dårligste pi algoritmer overhovedet
25. oktober 2005 - 20:50
#8
dårlig = langsom
25. oktober 2005 - 20:53
#9
<% KvartPi = 0 Sign = -1 For N=1 To 50 Step 2 Sign = -Sign KvartPi = KvartPi + Sign/N Response.Write 4*KvartPi & "<br>" Next %>
25. oktober 2005 - 21:01
#10
jeg valgte at løse således, N = 1 For i = 0 To Deci pi2 = pi2 & F & "1" & ":" & cint(N) N = N + 2 i = i + 1 if F = "+" then F = "-" else F = "+" end if Next men nu mangler jeg bare at kunne fortælle den, at den også skal regne det ud... hvordan konverterer jeg fra string til udregning?? :)
25. oktober 2005 - 21:03
#11
den skal være langsom :D det er det der er det sjove, jeg gav mig selv den opgave da vi beskæftigede os med det i skolen
25. oktober 2005 - 21:07
#12
<% Deci = 10 N = 1 For i = 0 To Deci pi2 = pi2 & F & "1" & "/" & cint(N) N = N + 2 i = i + 1 if F = "+" then F = "-" else F = "+" end if Response.write eval(pi2) & "<br>" Next %>
25. oktober 2005 - 21:08
#13
Det er godt nok endnu langsommere at udregne det på den måde ;^)
25. oktober 2005 - 21:11
#14
kan jeg ikke konvertere min tekststreng til en matematisk kode i asp??
25. oktober 2005 - 21:13
#15
Ikke forstået? Funktionen eval tager din tekststreng og regner resultatet ud. Var det ikke det du ville have?
25. oktober 2005 - 21:17
#16
okay tak... Iøvrigt, hvis du forstår den sætning, så forklar mig det lige, for jeg er ikke helt med 4*1 giver jo 1 hvordan skal man kunne bruge det til noget fornuftigt i forhold til pi... ligemeget om jeg vil have udregningen vildt meget gange op, giver det et for stort tal :P
25. oktober 2005 - 21:20
#17
det var bare mig der var dum... drop svar... Du er vel ikke sådan en mastermind der også kan give mig lidt hjælp hvis jeg vil kode det ind i delphi :D ?
25. oktober 2005 - 21:24
#18
Jeg kan godt forstå formlen - men jeg kan desværre ikke forklare (bevise) den uden at komme ind på noget temmeligt langhåret matematik... :^| Nej, det skulle ikke være noget problem med at lave den i Delphi. Dog er jeg ikke lige klar over om der er nogen Eval() der, så jeg ville hellere fortrække at lave den efter 25/10-2005 20:50:17 eller 25/10-2005 21:07:55.
25. oktober 2005 - 23:25
#19
drop gerne svar :D
26. oktober 2005 - 06:56
#20
Svar :^)
Kurser inden for grundlæggende programmering