検索結果
CorrectAnswer
- 全てのカテゴリ
- 全ての質問
- JavaScriptで選択問題作成(2)
以前ここで問題作成の件で質問させてもらいました。 <h3>問題1</h3> <script type="text/javascript"> <!-- CheckboxProperty_Member = [ [ "福岡","FukuokaCheckbox", true ], [ "大阪","NagasakiCheckbox", false ] ] CorrectAnswer_Member = new Array( ); // 正解 document.write('九州の県は次のうちどれですか?<br>'); document.write('<br>'); document.write('<form name="KyuusyuuForm">'); for(i = 0; i<CheckboxProperty_Member.length; i++){ CorrectAnswer_Member[CheckboxProperty_Member[i][1]] = CheckboxProperty_Member[i][2]; document.write('<label><input id="'+CheckboxProperty_Member[i][1]+'" type="checkbox" onclick="HTMLDocument_CheckboxChecked_Member[this.id] = this.checked;">'+CheckboxProperty_Member[i][0]+'</label><br>'); } document.write('<br>'); document.write('<input type="button" value="解答" onclick="ClickButtonFunc( );" >'); document.write('</form>'); document.write('<br>'); document.write('<div id="Answer"></div>'); HTMLDocument_CheckboxChecked_Member = new Array( ); function ClickButtonFunc( ) { oAnswer = document.getElementById('Answer' ); var ccm = HTMLDocument_CheckboxChecked_Member; // この関数内の短縮形 Alias var check = false; // true; // var err = false; // true; // for(k in CorrectAnswer_Member){ // 厳密非等価比較 if( ccm[k]!==undefined ) check = true; // 厳密等価比較 if( ccm[k]===undefined ) ccm[k] = false; if( ccm[k]!=CorrectAnswer_Member[k] ) err = true; // ↑なぜか厳密非等価比較になるようです。 } if( ! check ){ oAnswer.innerHTML = "チェックされていません。<br>"+ "1つ以上をチェックして下さい。<br>"; }else if( err ){ oAnswer.innerHTML = "不正解です。<br>"+ "正解は「福岡」です。<br>"; }else{ oAnswer.innerHTML = "正解です。<br>"; } } --> </script> の問題を 複数ページに設置しようとしています。 しかし、上記選択問題を同じにすると もちろん問題1と問題2では連動して 問題2の解答をしたら問題1が解答されたりします。 ここ数日ずっと自分でプログラムを変更したりして修正しているのですが 解決できません。 複数選択問題を 同じページに複数問題を作成する方法を教えてください。 つまり 問題1 九州の県はどこですか? 福岡 大阪 問題2 九州の県はどこですか? 愛知 佐賀 問題3 九州の県はどこですか? 大分 長野 みたいな感じです お願いします。
- ベストアンサー
- JavaScript
- takeharu11
- 回答数2
- バグがとけません・・・
現在私はVB2005で4択のクイズ形式のプログラムを作成しています。 データセットに問題、解答群などを格納しています。 それをフォームで表示してラジオボタンで4択のなかから正解と思うものを1つ選びボタンをクリックして次の問題へ移行する・・・というような流れのプログラムです。 今ためにしに問題を十問出題し最後の問題を終えたら10問中何問正解したかを表示するプログラムを作成しています。 データセットの内容はそれぞれ下記のとおりです。 Answer1~4・・・選択肢1~4 SelectAnswer・・・選択した選択肢を格納する CorrectAnswer・・・予めデータセットに格納してある正解 Loadで最初の一問目だけを読み込んで後はボタンを押すごとに問題が進んでいきますが全問正解するようにしても結果表示が正しく表示されません。 どこがバグかわかる方、もしくはさらに効率のいいコードがわかる方がいましたら助けてください。どうかよろしくお願いしますm(_ _)m Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If IO.File.Exists(filePath) Then DataSet1.ReadXml(filePath) End If Question.Text = DataSet1.DataTable1(i).Question Answer1.Text = DataSet1.DataTable1(i).Answer1 Answer2.Text = DataSet1.DataTable1(i).Answer2 Answer3.Text = DataSet1.DataTable1(i).Answer3 Answer4.Text = DataSet1.DataTable1(i).Answer4 '正誤確認 If Answer1.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "ア" ElseIf Answer2.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "イ" ElseIf Answer3.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "ウ" ElseIf Answer4.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "エ" End If If DataSet1.DataTable1(i).SelectAnswer = DataSet1.DataTable1(i).CorrectAnswer Then total = total + 1 End If i = i + 1 End Sub Private Sub NextQuestion_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NextQuestion.Click 'Static i As Integer = 0 'UStatic total As Integer = 0 'MsgBox(i)デバッグ '問題の読み込み Question.Text = DataSet1.DataTable1(i).Question Answer1.Text = DataSet1.DataTable1(i).Answer1 Answer2.Text = DataSet1.DataTable1(i).Answer2 Answer3.Text = DataSet1.DataTable1(i).Answer3 Answer4.Text = DataSet1.DataTable1(i).Answer4 '正誤確認 If Answer1.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "ア" ElseIf Answer2.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "イ" ElseIf Answer3.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "ウ" ElseIf Answer4.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "エ" End If If DataSet1.DataTable1(i).SelectAnswer = DataSet1.DataTable1(i).CorrectAnswer Then total = total + 1 End If '終了 If i = 10 Then MsgBox("あなたの正解数はは10門中" & total & "問です!") Me.Close() End If i = i + 1 Answer1.Checked = True End Sub
- 締切済み
- Visual Basic
- ryousuke33
- 回答数2
- 4択問題の解答に図を使いたいのです。
現在私は画像のような4択の問題を解答し最後に何問正解していたかを表示するプログラムを作成しています。 解答を選択して「次の問題」ボタンをクリックすれば次の問題に移行する・・・というような流れです。 データテーブルに「問題(Question)」「選択肢(Answer1~4)」「解答(SelectAnswr)」「正解(CorrectAnswer」「正解の解説(Explanation)*今質問中では使用させません」を格納しています。 このプログラムでITパスポート試験の問題を出題しようと考えています。 ですがITパスポートの問題は解答郡が図形であったり問題文にも図形がでてきたりしてどのように現在のプログラムとフォームを改造すればいいのか悩んでいます。 もしわかる方がいましたら知恵を貸してください。よろしくお願いします。
- 締切済み
- Visual Basic
- ryousuke33
- 回答数3
- 4択問題のプログラムで「次の問題」に移行する処理で困っています
現在私は画像のような4択の問題のを解答し最後に何問正解していたかを表示するプログラムを作成しています。 データテーブルに「問題(Question)」「選択肢(Answer1~4)」「解答(SelectAnswr)」「正解(CorrectAnswer」「正解の解説(Explanation)*今質問中では使用させません」を格納しています。 画像はプログラムを立ち上げた直後のものです。 「次の問題」ボタンをクリックするとデータテーブルに格納された問題、選択肢が表示され順次解答をしていくのですが今現在の「次の問題」ボタンのプログラムではデータテーブルの「解答」と「正解」に1つずれが生じてしまいます。 「解答」に一番最初に格納されているのが毎回「ア」になってしまいます。 下記に「次の問題」ボタンのプログラムを示します。 Private Sub NextQuestion_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NextQuestion.Click '選択肢を選択可能にする GroupBox1.Enabled = True Question.Text = DataSet1.DataTable1(i).Question Answer1.Text = DataSet1.DataTable1(i).Answer1 Answer2.Text = DataSet1.DataTable1(i).Answer2 Answer3.Text = DataSet1.DataTable1(i).Answer3 Answer4.Text = DataSet1.DataTable1(i).Answer4 '正誤確認 If Answer1.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "ア" ElseIf Answer2.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "イ" ElseIf Answer3.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "ウ" ElseIf Answer4.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "エ" End If If DataSet1.DataTable1(i).SelectAnswer = DataSet1.DataTable1(i).CorrectAnswer Then total = total + 1 End If i = i + 1 '終了 If 10 = i Then MsgBox("あなたの正解数は10門中" & total & "問です!") Me.Close() End If Answer1.Checked = True End Sub *変数iはPublicで宣言しています。 このバグを解消するのに4日ぐらい四苦八苦しているのですが限界が近いです。 知恵をかしてください。おねがいします。
- ベストアンサー
- Visual Basic
- ryousuke33
- 回答数2
- 4択問題のプログラムでランダムに出題する処理で困っています
現在私は画像のような4択の問題を解答し最後に何問正解していたかを表示するプログラムを作成しています。 解答を選択して「次の問題」ボタンをクリックすれば次の問題に移行する・・・というような流れです。 データテーブルに「問題(Question)」「選択肢(Answer1~4)」「解答(SelectAnswr)」「正解(CorrectAnswer」「正解の解説(Explanation)*今質問中では使用させません」を格納しています。 最終的な目標はデータテーブルに問題を300問用意しその中からランダムに100問出題して最後に結果を表示するプログラムを作成することです。 今どうすればランダムに出題しつつ同じ問題が出題されないようにするプラグラムを組めばいいのか壁にぶつかっています。 下記が「次の問題」ボタンのプログラムです。 Private Sub NextQuestion_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NextQuestion.Click ' i が -1 のとき(つまり、初回のクリック) If i = -1 Then '選択肢を選択可能にする GroupBox1.Enabled = True 'NextQuestionのテキスト変換 NextQuestion.Text = "次の問題" ' i が -1以外のとき(つまり、回答後のクリック) Else '正誤確認 If Answer1.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "ア" ElseIf Answer2.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "イ" ElseIf Answer3.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "ウ" ElseIf Answer4.Checked = True Then DataSet1.DataTable1(i).SelectAnswer = "エ" End If If DataSet1.DataTable1(i).SelectAnswer = DataSet1.DataTable1(i).CorrectAnswer Then total = total + 1 End If End If i += 1 ' i をインクリメント(出題を次に進める) ' i が10になった = 回答が10問終わった If i = 10 Then MsgBox("あなたの正解数は10門中" & total & "問です!") Me.Close() Else '問題の読み込み Question.Text = DataSet1.DataTable1(i).Question Answer1.Text = DataSet1.DataTable1(i).Answer1 Answer2.Text = DataSet1.DataTable1(i).Answer2 Answer3.Text = DataSet1.DataTable1(i).Answer3 Answer4.Text = DataSet1.DataTable1(i).Answer4 'ラジオボタンを初期位置に戻す Answer1.Checked = True End If End Sub *変数iはPublicで宣言しています。 *最終目標は100問出題なのですが今は10問で動くプログラムを作成しています。 わかるかたがいましたら知恵をかしてください。 お願いします。
- ベストアンサー
- Visual Basic
- ryousuke33
- 回答数6
- リソースの画像をデータテーブルに格納したファイル名で表示させたいです
現在私はITパスポート試験のテスト練習ができるプログラムを作成しています。 プログラムの流れは4択の選択肢から解答を選択して「次の問題」ボタンをクリックすれば次の問題に移行する・・・というような流れです。 基本的な流れのプログラムは完成したのですがITパスポート問題や解答には図が使われることがありこれらの図を画像としてリソースに取り込み必要に応じてピクチャーボックスに表示させようと試みています。 単純にリソースの画像を表示させるなら PictureBox1.Image = My.Resources.from *fromは画像の名前 というコードで表示させることができるのですが、画像が必要ない問題があったりする場合や次の問題に移行する際新たに画像を読み込む必要があったりします。 そのような問題に対処するためにデータテーブルにファイル名を格納して状況に応じて表示する画像を変えていきたいと考えています。 データテーブルに「問題(Question)」「画像のファイル名(QuestionImageName)」「選択肢(Answer1~4)」「解答(SelectAnswr)」「正解(CorrectAnswer」「正解の解説(Explanation)」を格納しています。 例えば My.Resources.DataSet1.DataTable1(0).QuestionImageName というようにコードを記述してもエラーがでてしまいます。 リソースのファイル指定とデータテーブルのファイル名を結びつける方法が5日間ぐらい調べているのですがどうしてもわかりません。 知恵を貸してください。よろしくお願いします。
- 締切済み
- Visual Basic
- ryousuke33
- 回答数1
- JavaScriptで問題作成
ホームページ上で問題を作成して公開予定です。 その作成の仕方について教えてください。 問題の内容は以下のようなイメージになります。 問題1 九州の県は次のうちどれですか? 福岡 広島 熊本 山梨 長崎 みたいな問題を作成し 解答には複数チェックボックスなどで複数選択できるようにしておき 福岡 熊本 長崎 を選択した場合は 正解 とし 他の選択をした場合は 不正解として 正しい解答を表示させるみたいな問題です。 昔はWeb問題作成ツール http://www.fureai.or.jp/~irie/webquiz/ で一つだけ選択できる問題を作成していたのですが こちらのサイトが閉鎖されているみたいで、色々やり方を 調べていますがわかりません。 教えてください。よろしくお願いします。
- ベストアンサー
- JavaScript
- takeharu11
- 回答数7
- JAVAのプログラムについて
独学でJAVAを勉強中なのですが、 import java.io.*; public class ExserciseD5L3_2{ public static void main(String args[]){ BufferedReader br = new BufferedReader(newInputStreamReader(System.in),1); try{ System.out.println("■■■計算クイズ■■■"); System.out.println("計算してください。"); String Que[] = {"10×50=?","21-7=?","360÷6=?"}; int Ans[] = {500,14,60}; int counter; for(counter = 0; counter <=2; counter++ ){ System.out.println(Que[counter]); System.out.println("答えは?"); String str = br.readLine(); int i = Integer.parseInt(str); if(i == Ans[counter]){ System.out.println("おめでとう!大当たりです。"); } else{ System.out.println("残念!答えは"+Ans[counter]+"です。"); } } } catch(IOException e){ System.out.println("IOエラーが発生しました。"); } catch(NumberFormatException ne){ System.out.println("入力された数値が正しくないようです。"); } } } これを実行すると ■■■計算クイズ■■■ 計算してください。 10×50=? 答えは? 500 おめでとう!大当たりです。 21-7=? 答えは? 14 おめでとう!大当たりです。 360÷6=? 答えは? 60 おめでとう!大当たりです。 となるのですが、これに おめでとう!正解数は3つです。とか正解数は2つですなどのように 正解数も出るようにするにはどのようにしたらいいのでしょうか?
- ベストアンサー
- Java
- GoldMedalist
- 回答数3