From eb5d172247d7b2ad4b16a0094b3d7f87989e764d Mon Sep 17 00:00:00 2001 From: Bhavy_Zala Date: Thu, 6 Jun 2024 00:09:38 +0530 Subject: [PATCH] Dsa_quiz game added --- Games/Dsa_quiz_game/README.md | 37 +++ Games/Dsa_quiz_game/index.html | 26 +++ Games/Dsa_quiz_game/script.js | 414 +++++++++++++++++++++++++++++++++ Games/Dsa_quiz_game/style.css | 83 +++++++ README.md | 5 +- assets/images/Dsa_quiz1.png | Bin 0 -> 28929 bytes assets/images/Dsa_quiz2.png | Bin 0 -> 14138 bytes 7 files changed, 562 insertions(+), 3 deletions(-) create mode 100644 Games/Dsa_quiz_game/README.md create mode 100644 Games/Dsa_quiz_game/index.html create mode 100644 Games/Dsa_quiz_game/script.js create mode 100644 Games/Dsa_quiz_game/style.css create mode 100644 assets/images/Dsa_quiz1.png create mode 100644 assets/images/Dsa_quiz2.png diff --git a/Games/Dsa_quiz_game/README.md b/Games/Dsa_quiz_game/README.md new file mode 100644 index 0000000000..1fc0f26a1a --- /dev/null +++ b/Games/Dsa_quiz_game/README.md @@ -0,0 +1,37 @@ +# **Dsa_quiz_game** + +--- + +
+ +## **Description 📃** + +-The DSA Quiz Game is for educational purposes and contains DSA problems. +-It will help strengthen concepts. +-Increase your self-confidence. +-Easy to play. + +## **functionalities 🎮** + +-Contains 50+ DSA questions. +-Randomly selects any 10 questions. +-Shows results after the game. +-Displays the correct answer if your answer is wrong. + +
+ +## **How to play? 🕹ī¸** +-Start by selecting any one option. The game will show you the correct answer if your answer is wrong. + + +
+ +## **Screenshots 📸** + +
+![image](../../assets/images/Dsa_quiz1.png) +![image](../../assets/images/Dsa_quiz2.png) + +
+ + diff --git a/Games/Dsa_quiz_game/index.html b/Games/Dsa_quiz_game/index.html new file mode 100644 index 0000000000..2b9c36c0c3 --- /dev/null +++ b/Games/Dsa_quiz_game/index.html @@ -0,0 +1,26 @@ + + + + + + + Quizz App + + +
+

Simple Quiz

+
+

This is Question

+
+ + + + +
+ +
+
+ + + + \ No newline at end of file diff --git a/Games/Dsa_quiz_game/script.js b/Games/Dsa_quiz_game/script.js new file mode 100644 index 0000000000..52981b7406 --- /dev/null +++ b/Games/Dsa_quiz_game/script.js @@ -0,0 +1,414 @@ +const questions = [ + { + question: "What is the time complexity of accessing an element in an array by its index?", + answers: [ + {text: "O(1)", correct: true}, + {text: "O(n)", correct: false}, + {text: "O(log n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "What data structure is a Last-In-First-Out (LIFO) data structure?", + answers: [ + {text: "Stack", correct: true}, + {text: "Queue", correct: false}, + {text: "Linked List", correct: false}, + {text: "Tree", correct: false}, + ] + }, + { + question: "What is the time complexity of inserting an element at the end of an array?", + answers: [ + {text: "O(1)", correct: false}, + {text: "O(n)", correct: true}, + {text: "O(log n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure uses First-In-First-Out (FIFO) ordering?", + answers: [ + {text: "Queue", correct: true}, + {text: "Stack", correct: false}, + {text: "Linked List", correct: false}, + {text: "Tree", correct: false}, + ] + }, + { + question: "What is the time complexity of inserting an element at the beginning of an array?", + answers: [ + {text: "O(1)", correct: false}, + {text: "O(n)", correct: true}, + {text: "O(log n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure organizes elements in a hierarchical structure?", + answers: [ + {text: "Tree", correct: true}, + {text: "Stack", correct: false}, + {text: "Queue", correct: false}, + {text: "Linked List", correct: false}, + ] + }, + { + question: "What is the time complexity of searching for an element in a binary search tree?", + answers: [ + {text: "O(1)", correct: false}, + {text: "O(n)", correct: false}, + {text: "O(log n)", correct: true}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure allows elements to be accessed in a LIFO (Last-In-First-Out) manner?", + answers: [ + {text: "Stack", correct: true}, + {text: "Queue", correct: false}, + {text: "Linked List", correct: false}, + {text: "Tree", correct: false}, + ] + }, + { + question: "What is the time complexity of inserting an element in the middle of an array?", + answers: [ + {text: "O(1)", correct: false}, + {text: "O(n)", correct: true}, + {text: "O(log n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure does not have a fixed size?", + answers: [ + {text: "Linked List", correct: true}, + {text: "Stack", correct: false}, + {text: "Queue", correct: false}, + {text: "Tree", correct: false}, + ] + }, + { + question: "What is the time complexity of inserting an element at the end of a linked list?", + answers: [ + {text: "O(1)", correct: false}, + {text: "O(n)", correct: true}, + {text: "O(log n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure allows elements to be accessed in a FIFO (First-In-First-Out) manner?", + answers: [ + {text: "Queue", correct: true}, + {text: "Stack", correct: false}, + {text: "Linked List", correct: false}, + {text: "Tree", correct: false}, + ] + }, + { + question: "What is the time complexity of deleting an element at the beginning of a linked list?", + answers: [ + {text: "O(1)", correct: true}, + {text: "O(n)", correct: false}, + {text: "O(log n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure represents a collection of elements, each identified by at least one array index or key?", + answers: [ + {text: "Array", correct: true}, + {text: "Linked List", correct: false}, + {text: "Queue", correct: false}, + {text: "Stack", correct: false}, + ] + }, + { + question: "What is the time complexity of finding an element in a hash table?", + answers: [ + {text: "O(1)", correct: true}, + {text: "O(log n)", correct: false}, + {text: "O(n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure allows for constant time insertion and deletion of elements at both ends?", + answers: [ + {text: "Deque", correct: true}, + {text: "Linked List", correct: false}, + {text: "Queue", correct: false}, + {text: "Stack", correct: false}, + ] + }, + { + question: "What is the time complexity of finding an element in a sorted array using binary search?", + answers: [ + {text: "O(1)", correct: false}, + {text: "O(log n)", correct: true}, + {text: "O(n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure follows the Last-In-First-Out (LIFO) principle?", + answers: [ + {text: "Stack", correct: true}, + {text: "Queue", correct: false}, + {text: "Deque", correct: false}, + {text: "Linked List", correct: false}, + ] + }, + { + question: "What is the time complexity of appending an element to the end of a dynamic array (with resizing)?", + answers: [ + {text: "O(1)", correct: false}, + {text: "O(log n)", correct: false}, + {text: "O(n)", correct: false}, + {text: "Amortized O(1)", correct: true}, + ] + }, + { + question: "Which data structure is based on the principle of First-In-First-Out (FIFO)?", + answers: [ + {text: "Queue", correct: true}, + {text: "Stack", correct: false}, + {text: "Deque", correct: false}, + {text: "Linked List", correct: false}, + ] + }, + { + question: "What is the time complexity of finding the minimum (or maximum) element in a min (or max) heap?", + answers: [ + {text: "O(1)", correct: true}, + {text: "O(log n)", correct: false}, + {text: "O(n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "Which data structure can be used to efficiently implement a priority queue?", + answers: [ + {text: "Heap", correct: true}, + {text: "Stack", correct: false}, + {text: "Queue", correct: false}, + {text: "Linked List", correct: false}, + ] + }, + { + question: "What is the time complexity of inserting an element at the beginning of a linked list?", + answers: [ + {text: "O(1)", correct: true}, + {text: "O(log n)", correct: false}, + {text: "O(n)", correct: false}, + {text: "O(n^2)", correct: false}, + ] + }, + { + question: "What is the purpose of a linked list?", + answers: [ + {text: "To store data in a linear structure with a dynamic size", correct: true}, + {text: "To sort data efficiently", correct: false}, + {text: "To implement recursive algorithms", correct: false}, + {text: "To perform mathematical operations", correct: false}, + ] + }, + { + question: "What is a stack?", + answers: [ + {text: "A data structure that follows the Last-In-First-Out (LIFO) principle", correct: true}, + {text: "A data structure that follows the First-In-First-Out (FIFO) principle", correct: false}, + {text: "A data structure that organizes elements in a hierarchical structure", correct: false}, + {text: "A data structure that allows elements to be accessed in any order", correct: false}, + ] + }, + { + question: "What is the purpose of a binary heap?", + answers: [ + {text: "To implement priority queues efficiently", correct: true}, + {text: "To sort data in ascending order", correct: false}, + {text: "To perform recursive algorithms", correct: false}, + {text: "To store key-value pairs for efficient retrieval", correct: false}, + ] + }, + { + question: "What is a binary tree?", + answers: [ + {text: "A tree data structure in which each node has at most two children", correct: true}, + {text: "A tree data structure in which each node has exactly two children", correct: false}, + {text: "A tree data structure with more than two children per node", correct: false}, + {text: "A tree data structure with no children", correct: false}, + ] + }, + { + question: "What is a binary search tree (BST)?", + answers: [ + {text: "A binary tree in which the left subtree of a node contains only nodes with keys less than the node's key and the right subtree contains only nodes with keys greater than the node's key", correct: true}, + {text: "A binary tree that is sorted in descending order", correct: false}, + {text: "A binary tree that contains duplicate nodes", correct: false}, + {text: "A binary tree in which every node has exactly two children", correct: false}, + ] + }, + { + question: "What is a balanced binary tree?", + answers: [ + {text: "A binary tree in which the height of the left and right subtrees of any node differ by at most one", correct: true}, + {text: "A binary tree that contains only nodes with even keys", correct: false}, + {text: "A binary tree in which every node has exactly two children", correct: false}, + {text: "A binary tree in which all leaf nodes are at the same level", correct: false}, + ] + }, + { + question: "What is a graph?", + answers: [ + {text: "A data structure that consists of a set of nodes (vertices) and a set of edges that connect pairs of nodes", correct: true}, + {text: "A data structure that represents hierarchical relationships between elements", correct: false}, + {text: "A data structure used for storing key-value pairs", correct: false}, + {text: "A data structure that allows for efficient search, insertion, and deletion operations", correct: false}, + ] + }, + { + question: "What is a directed graph?", + answers: [ + {text: "A graph in which the edges have a direction, indicating a one-way connection between nodes", correct: true}, + {text: "A graph in which all nodes are connected to each other", correct: false}, + {text: "A graph in which the edges have weights assigned to them", correct: false}, + {text: "A graph in which the edges do not have a direction, indicating a two-way connection between nodes", correct: false}, + ] + }, + { + question: "What is a weighted graph?", + answers: [ + {text: "A graph in which each edge is assigned a numerical value, called a weight", correct: true}, + {text: "A graph in which the nodes have different sizes", correct: false}, + {text: "A graph in which the nodes have different colors", correct: false}, + {text: "A graph in which each edge is assigned a direction", correct: false}, + ] + }, + { + question: "What is the adjacency matrix of a graph?", + answers: [ + {text: "A two-dimensional array where the value at index [i][j] represents whether there is an edge from node i to node j", correct: true}, + {text: "A tree data structure used for storing key-value pairs", correct: false}, + {text: "A data structure that represents hierarchical relationships between elements", correct: false}, + {text: "A data structure used for representing binary trees", correct: false}, + ] + }, + { + question: "What is the depth-first search (DFS) algorithm used for in graphs?", + answers: [ + {text: "To explore as far as possible along each branch before backtracking", correct: true}, + {text: "To find the shortest path between two nodes in a weighted graph", correct: false}, + {text: "To find the minimum spanning tree of a graph", correct: false}, + {text: "To find the topological ordering of a directed acyclic graph (DAG)", correct: false}, + ] + }, + { + question: "What is the breadth-first search (BFS) algorithm used for in graphs?", + answers: [ + {text: "To explore all the neighbor nodes at the present depth before moving on to the nodes at the next depth level", correct: true}, + {text: "To find the shortest path between two nodes in a weighted graph", correct: false}, + {text: "To find the minimum spanning tree of a graph", correct: false}, + {text: "To find the topological ordering of a directed acyclic graph (DAG)", correct: false}, + ] + }, + { + question: "What is a spanning tree of a graph?", + answers: [ + {text: "A subgraph that is a tree and includes all the vertices of the original graph", correct: true}, + {text: "A tree data structure used for storing key-value pairs", correct: false}, + {text: "A data structure that represents hierarchical relationships between elements", correct: false}, + {text: "A data structure used for representing binary trees", correct: false}, + ] + } + +]; +const questionElement = document.getElementById('question'); +const answerButtons = document.getElementById('answer-btn'); +const nextButton = document.getElementById('next-btn'); +let currentquinx = 0; +let score = 0; +let shuffledQuestions = []; + +function startquiz() { + currentquinx = 0; + score = 0; + nextButton.innerHTML = "Next"; + shuffledQuestions = questions.sort(() => Math.random() - 0.5).slice(0, 10); // Shuffle and select 10 questions + ShowQuestion(); +} + +function ShowQuestion() { + resetState(); + let currentque = shuffledQuestions[currentquinx]; + let questionNo = currentquinx + 1; + questionElement.innerHTML = questionNo + ". " + currentque.question; + currentque.answers.forEach(answer => { + const button = document.createElement('button'); + button.innerHTML = answer.text; + button.classList.add("btn"); + button.addEventListener('click', () => checkAnswer(answer.correct)); + answerButtons.appendChild(button); + if(answer.correct) { + button.dataset.correct = answer.correct; + } + button.addEventListener("click", selectAnswer); + + }) +} + +function resetState() { + nextButton.style.display = 'none'; + while (answerButtons.firstChild) { + answerButtons.removeChild(answerButtons.firstChild); + } +} + +function selectAnswer(e) { + const selectedBtn = e.target; + const isCorrect = selectedBtn.dataset.correct === "true"; + + if (isCorrect) { + selectedBtn.classList.add("correct"); + score++; + } else { + selectedBtn.classList.add("incorrect"); + } + + Array.from(answerButtons.children).forEach(button => { + if (button.dataset.correct === "true") { + button.classList.add("correct"); + } + button.disabled = true; + }); + + nextButton.style.display = "block"; +} + +function ShowScore() { + resetState(); + questionElement.innerHTML = `You scored ${score} out of ${shuffledQuestions.length} !`; + nextButton.innerHTML = "Play Again"; + nextButton.style.display = "block"; +} + +function handleNextButton() { + currentquinx++; + if(currentquinx < shuffledQuestions.length) { + ShowQuestion(); + } else { + ShowScore(); + } +} + +nextButton.addEventListener("click", () => { + if(currentquinx < shuffledQuestions.length) { + handleNextButton(); + } else { + startquiz(); + } +}); + +startquiz(); diff --git a/Games/Dsa_quiz_game/style.css b/Games/Dsa_quiz_game/style.css new file mode 100644 index 0000000000..3fd9887f5c --- /dev/null +++ b/Games/Dsa_quiz_game/style.css @@ -0,0 +1,83 @@ +* +{ + margin: 0; + padding: 0; + font-family: 'Poppins',sans-serif; + box-sizing: border-box; +} +body +{ + background: #001e4d; + +} +.app +{ + background: #fff; + width: 90%; + max-width: 600px; + margin: 100px auto 0; + border-radius: 10px; + padding: 30px; +} +.app h1 +{ + font-weight: 25px; + color: #001e4d; + font-weight: 600px; + border-bottom: 1px solid #333; + padding-bottom: 30px; +} +.quiz +{ + padding: 20px 0; +} +.quiz h2 +{ + font-size: 18px; + color: #001e4d; + font-weight: 600px; +} +.btn +{ + background: #fff; + color: #222; + font-weight: 500px; + width: 100%; + border: 1px solid #222; + padding: 10px; + margin: 10px 0; + text-align: left; + border-radius: 4px; + cursor: pointer; + transition:all 0.5s; +} + +.btn:hover:not([disabled]) { + background: #222; + color: #fff; +} + +.btn:disabled { + cursor: no-drop; +} +#next-btn +{ + background: #001e4d; + color: #fff; + font-weight: 500px; + width: 150px; + border:0; + padding: 10px; + margin: 20px auto 0; + border-radius: 4px; + cursor: pointer; + display: none; +} +.correct +{ + background: #9aeabc; +} +.incorrect +{ + background: #ff9393; +} \ No newline at end of file diff --git a/README.md b/README.md index 37420ce1b6..88370ff9d4 100644 --- a/README.md +++ b/README.md @@ -320,9 +320,8 @@ This repository also provides one such platforms where contributers come over an |[AquaSort_Game](https://github.com/kunjgit/GameZone/tree/main/Games/AquaSort_Game) | |[Turn_on_the_light](https://github.com/kunjgit/GameZone/tree/main/Games/Turn_on_the_light) | | [Tic-Tac-Toe Game](https://github.com/kunjgit/GameZone/tree/main/Games/Tic-Tac-Toe) | -| [Rapid_click_frenzy](https://github.com/kunjgit/GameZone/tree/main/Games/Rapid_click_frenzy) - - +| [Rapid_click_frenzy](https://github.com/kunjgit/GameZone/tree/main/Games/Rapid_click_frenzy) | +|[Dsa_quiz_game](https://github.com/kunjgit/GameZone/tree/main/Games/Dsa_quiz_game) | diff --git a/assets/images/Dsa_quiz1.png b/assets/images/Dsa_quiz1.png new file mode 100644 index 0000000000000000000000000000000000000000..22453aa476df0fa2cdc83ca9c7f9886ada627320 GIT binary patch literal 28929 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 G=KlfT)A@G* literal 0 HcmV?d00001 diff --git a/assets/images/Dsa_quiz2.png b/assets/images/Dsa_quiz2.png new file mode 100644 index 0000000000000000000000000000000000000000..a129e1fe7f82b68fcc77fdcd3ebecba5e47ff34a GIT binary patch literal 14138 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 literal 0 HcmV?d00001