クエリ文字列を使用して従来のASPコードで数値を受け入れると、プログラムは数値の桁の合計を出力します。
<%
dim n,d,sum
sum = 0
d = 0
n = request.querystring("n") //Taking value from querystring
while n<>0
d = n mod 10
response.write("<br>"&d)
sum = sum + d``
n = Cint(n/10)
wend
response.write("<br>Sum of digits of "&request.querystring("n")&" is :
"&sum)
%>
しかし、問題は、たとえば、いくつかの値に対して正しい答えが表示されないことです。n = 91 ....出力は11になりますが、n = 123 ...の場合出力は6になります。plshelp。
コードを1回変更するだけです。つまり、数を減らすときは/の代わりに演算子\を使用します。
つまり、n = CInt(n / 10)の代わりにn = n \ 10を使用します
したがって、コードはバターとして正常に機能します。
<%
dim n,sum,d
sum = 0
n = request.querystring("n") 'taking value from querystring
while n <> 0
d = n mod 10
sum = sum +d
n = n\10 'using \ for integer division
wend
response.write("Sum of digits of : "&request.querystring("n")&" is = "&sum)
%>
何が起こったのか理解できない人は、以下を参照してください。
そのため、正しい結果が得られませんでした。お役に立てれば!
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加