- ベストアンサー
正しい値が戻ってきません。どこが間違っているのでしょう。
おはようございます http://www.newcanyon.com/i/tips.html のルールで相性を占うプログラムをここで何度か質問させていただきまして、組み、無事できた!と思ったのですが、実行すると誤った数値が戻ってきます いったいどこが間違っているんでしょうか? ぜひヒントを出していただけると助かります ※ん・記号などの文字は6として計算します 入力フォームは あなたの名前 <INPUT TYPE=text NAME=myname Value="" SIZE=20> 相手の名前 <INPUT TYPE=text NAME=yourname Value="" SIZE=20> から成り Receive.aspは NAME1=Request.Form("myname") NAME2=Request.Form("yourname") NAME=NAME1&NAME2 Dim i,p p=Len(NAME) Dim Suji(100) For i=1 to p Suji(i)=Mid(NAME,i,1) Select Case Suji(i) Case Suji(i)="あ","か","が"… Suji(i)=1 Case Suji(i)="い","き","ぎ"… Suji(i)=2 以下ウ、エ、オの段が続く Case Else Suji(i)=6 End Select Next Dim m,j,k,n,nows m=Len(NAME) n=Len(NAME) For k=1 to n-1 For j=1 to m-1 Suji(j)=Suji(j)+Suji(j+1) nows=k If Suji(j)>=10 Then Suji(j) = Suji(j) mod 10 End If Next Next Aisho=Suji(j-1)&Suji(j) Response.Write S1 & "相性は" & aisho & "%です" %> たとえば、myname=あ yourname=い なら26%が戻ってきます。 selectのところが違うんでしょうか…
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
aspはどういう記述方法か知りませんが、select caseが文法的におかしいと思います。 Select Case Suji(i) Case "あ","か","が"… Suji(i)=1 では? 毎度毎度条件を入力するくらいならselect caseなんて文法自体が無駄なわけですし・・・。
その他の回答 (2)
- unamana19
- ベストアンサー率62% (56/89)
クレペリンの計算方法は、 ------------------------------------------------------ <% ・ ・ ・ ・ For i = 1 To SujiLength - 2 For j = 1 To SujiLength - i Suji(j) = Suji(j) + Suji(j+1) If Suji(j) > 10 Then Suji(j) = Suji(j) - 10 Next Next %> 相性は<%= Suji(1) %><%= Suji(2) %>%です ------------------------------------------------------ このような感じですかね。 [注意]表示の関係上、ソースコードのスペースは全角になっています。
お礼
ありがとうございます。なるほど!そこにiを入れるんですね。 二桁だとうまくいきますが、それ以上ですとなんか変です…?うーんでも考え方、少しつかめました。ちょっと自分で考えて見ます。ほんとにありがとうございました。
補足
うまくいきました!!わたしが足し合わせる行の数をSujiLength - 2だと思い込んでいたので変になっていました…。一段目はselectcaseで出てるんですよね… すみません。本当にありがとうございました。こんな朝からどうもありがとうございました。
- unamana19
- ベストアンサー率62% (56/89)
For i = 1 To p Select Case Mid(NAME,i,1) Case "あ","か","が"… Suji(i)=1 Case "い","き","ぎ"… Suji(i)=2 Case Else Suji(i)=6 Next とりあえずSelectはこんな感じ。
お礼
なるほど、一行省略できるんですね!宣言はとりあえず残すことにしました。ほんとにありがとうございます。
お礼
早速のお返事ありがとうございます!あーなんかselectcase自体の書き方を勘違いしてました。ほんとにありがとうございます。