//AdSenseにリンク

次の2択の質問を4つして診断結果を3種類の中から出すコード

質問1、Javascriptでケーキは好きですか?質問1答え「好き」、「嫌い」 質問2、Javascriptでアイスは好きですか?質問2答え「好き」、「嫌い」 質問3、Javascriptでクッキーは好きですか?質問3答え「好き」、「嫌い」 質問4、Javascriptでチョコレートは好きですか?質問3答え「好き」、「嫌い」 診断結果1「好きが多い場合」、「甘党」 診断結2「好きと嫌いが同数の場合」、「普通党」 診断結果3「嫌いが多い場合」、「甘党じゃない党」


<div id="result"></div>
<script>
  function askQuestion(question, positiveAnswer, negativeAnswer) {
    const answer = prompt(question + " " + positiveAnswer + " or " + negativeAnswer);

    if (answer === null || answer === "" || (answer !== positiveAnswer && answer !== negativeAnswer)) {
      alert("無効な入力です。" + positiveAnswer + "か" + negativeAnswer + "で答えてください。");
      askQuestion(question, positiveAnswer, negativeAnswer); // もう一度質問を繰り返す
    } else {
      return answer;
    }
  }

  function showResult(results) {
    const resultContainer = document.getElementById("result");
    let resultMessage = "診断結果: ";

    if (results.positive > results.negative) {
      resultMessage += results.positiveLabel;
    } else if (results.positive < results.negative) {
      resultMessage += results.negativeLabel;
    } else {
      resultMessage += "普通党";
    }

    resultContainer.innerHTML = resultMessage;
  }

  function performDiagnosis() {
    const results = {
      positive: 0,
      negative: 0,
      positiveLabel: "甘党",
      negativeLabel: "甘党じゃない党"
    };

    const questions = [
      ["Javascriptでケーキは好きですか?", "好き", "嫌い"],
      ["Javascriptでアイスは好きですか?", "好き", "嫌い"],
      ["Javascriptでクッキーは好きですか?", "好き", "嫌い"],
      ["Javascriptでチョコレートは好きですか?", "好き", "嫌い"]
    ];

    for (const question of questions) {
      const answer = askQuestion(question[0], question[1], question[2]);

      if (answer === "好き") {
        results.positive++;
      } else {
        results.negative++;
      }
    }

    showResult(results);
  }

  performDiagnosis(); // 診断を実行
</script>