Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE HTML>
- <html lang = "pl">
- <head>
- <title> Zadanie 10-11 Marcin Iwanowicz </title>
- <style type = "text/css">
- </style>
- <script type="text/javascript">
- </script>
- </head>
- <body>
- <form name = "formularz" onsubmit = "return false" method = "post">
- <script type = "text/javascript">
- var tablica = [];
- var suma = 0;
- var wynik = 0;
- tablica.push(new Pytanie1("Jakiego koloru jest banan?", "pytanie1", ["Żółtego"],["Zielonego", "Czerwonego"]));
- tablica.push(new Pytanie2("Które z podanych niżej nazw zalicza się do owoców:", "pytanie2", ["Jabłko", "Gruszka"], ["Ziemniak","Arbuz"]));
- tablica.push(new Pytanie3("Czy foton świeci?", "pytanie3", true));
- tablica.push(new Pytanie4("Jakiego koloru jest niebieski samochód?", "pytanie4", "Niebieskiego"));
- tablica.push(new Pytanie5("Dopasuj definicje do poszczególnych pojęć:", "pytanie5", [["niebieski", "niebieski"], ["czerwony", "czerwony"], ["zielony", "zielony"]]));
- function sprawdzOdpowiedzi() {
- for(var i=0;i<tablica.length;i++)
- suma += tablica[i].sprawdz();
- wynik = suma/tablica.length;
- document.getElementById("wyniki").innerHTML = "<p>Wynik: " + wynik*100 + "%";
- document.getElementById("sprawdz").disabled = true;
- }
- function Pytanie1(trescPytania, nazwaPytania, odpPoprawna, odpNiepoprawne) {
- this.trescPytania = trescPytania;
- this.nazwaPytania = nazwaPytania;
- this.odpPoprawna = odpPoprawna;
- this.odpNiepoprawne = odpNiepoprawne;
- //utworzenie tablicy odpowiedzi i przemieszanie jej
- var odpowiedzi = [];
- odpowiedzi.push(odpPoprawna);
- for(i=0;i<this.odpNiepoprawne.length;i++)
- odpowiedzi.push(odpNiepoprawne[i]);
- odpowiedzi.sort(function() {return 0.5 - Math.random()});
- this.odpowiedzi = odpowiedzi;
- document.write("<fieldset>");
- document.write("<legend>" + this.trescPytania + "</legend>");
- for(var i=0;i<odpowiedzi.length;i++) {
- if(odpPoprawna == this.odpowiedzi[i])
- document.write("<input type='radio' name='" + this.nazwaPytania + "' value='poprawna'>" + odpowiedzi[i] + "</input><br />");
- else
- document.write("<input type='radio' name='" + this.nazwaPytania + "' value='niepoprawna'>" + odpowiedzi[i] + "</input><br />");
- }
- document.write("</fieldset>");
- }
- Pytanie1.prototype.sprawdz = function() {
- var wynik = 0;
- var quiz = document.getElementsByName(this.nazwaPytania);
- for(var i=0;i<this.odpowiedzi.length;i++)
- if(quiz[i].checked)
- if(quiz[i].value == "poprawna")
- wynik = 1;
- return wynik;
- }
- function Pytanie2(trescPytania, nazwaPytania, odpPoprawne, odpNiepoprawne) {
- this.trescPytania = trescPytania;
- this.nazwaPytania = nazwaPytania;
- this.odpPoprawne = odpPoprawne;
- this.odpNiepoprawne = odpNiepoprawne;
- //utworzenie tablicy odpowiedzi i przemieszanie jej
- var odpowiedzi = [];
- for(i=0;i<this.odpPoprawne.length;i++)
- odpowiedzi.push(odpPoprawne[i]);
- for(i=0;i<this.odpNiepoprawne.length;i++)
- odpowiedzi.push(odpNiepoprawne[i]);
- odpowiedzi.sort(function() {return 0.5 - Math.random()});
- this.odpowiedzi = odpowiedzi;
- document.write("<fieldset>");
- document.write("<legend>" + this.trescPytania + "</legend>");
- for(var i=0;i<odpowiedzi.length;i++) {
- if(odpPoprawne.includes(this.odpowiedzi[i]))
- document.write("<input type='checkbox' name='" + this.nazwaPytania + "' value='poprawna'>" + odpowiedzi[i] + "</input><br />");
- else
- document.write("<input type='checkbox' name='" + this.nazwaPytania + "' value='niepoprawna'>" + odpowiedzi[i] + "</input><br />");
- }
- document.write("</fieldset>");
- }
- Pytanie2.prototype.sprawdz = function() {
- var suma = 0;
- var wynik = 0;
- var quiz = document.getElementsByName(this.nazwaPytania);
- for(var i=0;i<this.odpowiedzi.length;i++)
- if(quiz[i].checked)
- if(quiz[i].value == "poprawna")
- suma++;
- else if(quiz[i].value == "niepoprawna") {
- suma = 0;
- break;
- }
- wynik = suma/this.odpPoprawne.length;
- return wynik;
- }
- function Pytanie3(trescPytania, nazwaPytania, Prawda) {
- this.trescPytania = trescPytania;
- this.nazwaPytania = nazwaPytania;
- this.Prawda = Prawda;
- document.write("<fieldset>");
- document.write("<legend>" + this.trescPytania + "</legend>");
- document.write("<input type='radio' name='" + this.nazwaPytania + "' value='true'>Prawda</input><br />");
- document.write("<input type='radio' name='" + this.nazwaPytania + "' value='false'>Fałsz</input><br />");
- document.write("</fieldset>");
- }
- Pytanie3.prototype.sprawdz = function() {
- var wynik = 0;
- var prawda = "" + this.czyPrawda;
- var quiz = document.getElementsByName(this.nazwaPytania);
- for(var i=0;i<2;i++)
- if(quiz[i].checked)
- if(quiz[i].value == prawda)
- wynik = 1;
- return wynik;
- }
- function Pytanie4(trescPytania, nazwaPytania, odpPoprawna) {
- this.trescPytania = trescPytania;
- this.nazwaPytania = nazwaPytania;
- this.odpPoprawna = odpPoprawna.trim().toLowerCase();
- document.write("<fieldset>");
- document.write("<legend>" + this.trescPytania + "</legend>");
- document.write("<input type='text' name='" + this.nazwaPytania + "' placeholder='Wpisz odpowiedź tutaj' /><br />");
- document.write("</fieldset>");
- }
- Pytanie4.prototype.sprawdz = function() {
- var wynik = 0;
- var tresc = document.getElementsByName(this.nazwaPytania)[0].value;
- if(tresc.trim().toLowerCase() == this.odpowiedzPoprawna)
- wynik = 1;
- return wynik;
- }
- function Pytanie5(trescPytania, nazwaPytania, definicje) {
- this.trescPytania = trescPytania;
- this.nazwaPytania = nazwaPytania;
- this.definicje = definicje;
- //def1 składuje nazwy, def2 składuje definicje
- this.tab1 = [];
- this.tab2 = [];
- var i, j;
- for(i=0;i<definicje.length;i++) {
- this.tab1.push(definicje[i][0]);
- this.tab2.push(definicje[i][1]);
- }
- //przemieszanie tablic tab1 oraz tab2
- this.tab1.sort(function() {return 0.5 - Math.random()});
- this.tab2.sort(function() {return 0.5 - Math.random()});
- document.write("<fieldset>");
- document.write("<legend>" + this.trescPytania + "</legend>");
- document.write("<ul>");
- for(i=0;i<this.tab1.length;i++) {
- document.write("<li name='" + this.nazwaPytania + "'>" + this.tab1[i] + "</li>");
- document.write("<select name='" + this.nazwaPytania + "'>");
- for(j=0;j<this.tab2.length;j++)
- document.write("<option value='" + this.tab2[j] + "'>" + this.tab2[j] + "</option>");
- document.write("</select>");
- }
- document.write("</ul>");
- document.write("</fieldset>");
- }
- Pytanie5.prototype.sprawdz = function() {
- var wynik = 0;
- var suma = 0;
- var quiz = document.getElementsByName(this.nazwaPytania);
- for(var i=0;i<quiz.length;i++)
- for(var j=0;j<this.definicje.length;j++)
- if(quiz[i].innerHTML == this.definicje[j][0])
- if(quiz[++i][quiz[i].selectedIndex].value == this.definicje[j][1])
- suma++;
- wynik = suma/this.definicje.length;
- return wynik;
- }
- </script>
- <input type="submit" id="sprawdz" value="Sprawdź odpowiedzi" onclick="sprawdzOdpowiedzi();" />
- <div id="wyniki"></div>
- </form>
- </div>
- </body>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement