Det är väl inte så konstigt?
10000 * (-0.0001) = -1
1+ (-1) = 1-1 = 0.
Du försöker dela med 0. Gör inte det.
Mvh
7 svar · 296 visningar · startad av His Divine Shadow
Har gjort en liten räknare här:
http://www.hisdivineshadow.com/misc/causality.asp
Och, när jag matar in siffrorna 10000 och -0,0001 får jag ett "division by zero" error, eller det fick jag på en annan server, på denna server säger det bara "internal error 500"
Här är koden:
[B]formuläret:[/B]
<form action="causality.asp?Calculate=yes" method="post">
<table border="0" cellpadding="1" cellspacing="0">
<tr>
<td>
<font face="Verdana" size="1">Speed of signal:</font>
</td>
</tr>
<tr>
<td>
<%IF request("Calculate") = "yes" THEN%>
<input type="text" name="v" value="<%=Request("v")%>">
<%ELSE%>
<input type="text" name="v" value="1">
<%END IF%>
</td>
</tr>
<tr>
<td>
<font face="Verdana" size="1">relative velocity between transmitter and
reciever(negative numbers if they are moving towards each other): </font>
</td>
</tr>
<tr>
<td>
<%IF request("Calculate") = "yes" THEN%>
<input type="text" name="vo" value="<%=vo%>"><font face="Verdana" size="1">
<%ELSE%>
<input type="text" name="vo" value="">
<%END IF%>
</td>
</tr>
<tr>
<td>
<font face="Verdana" size="1">Result:</font>
</td>
</tr>
<tr>
<td>
<%IF request("Calculate") = "yes" THEN%>
<input type="text" name="answer" value="<%=Result%>" ID="Text1">
<%ELSE%>
<input type="text" name="answer" value="" ID="Text2">
<%END IF%>
</td>
</tr>
<tr>
<td>
<input type="submit" value="Calculate">
</td>
</tr>
</table>
</form>
[B]Koden som räknar:[/B]
v = cdbl(replace(request("v"),".",","))
vo = cdbl(replace(request("vo"),".",","))
Result = ((v + vo)/(1 + (vo * v)))
Det är väl inte så konstigt?
10000 * (-0.0001) = -1
1+ (-1) = 1-1 = 0.
Du försöker dela med 0. Gör inte det.
Mvh
Men då vill jag att svaret blir 0 istället för ett error.
Vill du ha hjälp att hantera nolldivision i koden, eller undrar du varför det blir "division by zero"? Det senare är för att resultatet höger om / blir 0 (om nu inte mina mattekunskaper är helt förlegade).
His Divine Shadow skrev:
Men då vill jag att svaret blir 0 istället för ett error.
Släng in en liten if-sats då!
If vo*v = -1 then
'attans
else
'woo
end if
Jovisst, men skrik inte, jag blir så upprörd
Här skriks inte!