Aktuálně: Postihly zákazy tvou profesi? Poptávka po ajťácích prudce roste, využij slevové akce 80% výuky zdarma!
Pouze tento týden sleva až 80 % na e-learning týkající se Pythonu
birthday
Avatar
wimpy
Člen
Avatar
wimpy:18.5.2014 12:49

Ahoj, poradil by mi někdo techniku, jak v následujícím příkladě použít cyklus for. Cílem je 5x zopakovat zadání a vyhodnocení příkladu. Předem děkuji za radu či odkaz. Viz http://www.wimpy.dukla166.cz/pocitani/.

var zadej_priklad = function()
{
    var sc1 = Math.round(100*Math.random());
    var sc2 = Math.round(100*Math.random());
    soucet = sc1 + sc2;
    var priklad = sc1 + " + " + sc2 + " = " + "<input type=\"text\" id=\"tip\" size=\"5\" /> <input type=\"button\" id=\"kontrola\" value=\"Zkontroluj!\">";
    $('#priklad').append(priklad);
    $("#kontrola").click(kontroluj);
};

var kontroluj = function()
{
        if ($("#tip").val() == soucet) {var obr = "<img src=\"ok.png\"> <br>"}
         else {var obr = "<img src=\"chyba.png\"> <br>"};
          $('#priklad').append(obr);
};

var pocatecni_nastaveni = function()
{
      zadej_priklad();
};

$(document).ready(pocatecni_nastaveni);
 
Odpovědět
18.5.2014 12:49
Avatar
wimpy
Člen
Avatar
wimpy:18.5.2014 17:37

Už v pohodě, pomohl kamarád po mailu. Díky

 
Nahoru Odpovědět
18.5.2014 17:37
Avatar
Neaktivní uživatel:18.5.2014 17:40

Tak napiš jak to ma být, možna někdo bude mít stejný problem. ;)

Editováno 18.5.2014 17:41
Nahoru Odpovědět
18.5.2014 17:40
Neaktivní uživatelský účet
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
wimpy
Člen
Avatar
wimpy:18.5.2014 22:02
var celkovyPocetPokusu = 5;
var pocetPokusu = celkovyPocetPokusu;
var pocetSpravne = 0;
var idClicker = 0;

function klasifikace(){
  $('#container').text('Z celkového počtu pokusů '+ pocetPokusu + ' jste měli ' + pocetSpravne + ' správně');

}

var zadej_priklad = function()
{
    idClicker++;
    var sc1 = Math.round(100*Math.random());
    var sc2 = Math.round(100*Math.random());
    var priklad ="<div class='prikladek' data-tip='test'>"+sc1 + " + " + sc2 + " = <input type=\"text\" class='tipecek' id=\"tip\" size=\"5\"><button id='"+ idClicker + "' data-second=\""+sc2+"\" data-first=\""+sc1+"\" class=\"kontrola\" value=\"Zkontroluj!\">Pocitej</button><br></div>" ;
    $('#priklad').append(priklad);
    setClicks(idClicker);
};


function setClicks(idClicker){

   $("#"+idClicker).click(function(){
        if(celkovyPocetPokusu == 1){
          klasifikace();
          return;
        }
         celkovyPocetPokusu--;
        $('.pocetPokusu').text('Zbývá pokusů: ' + celkovyPocetPokusu);
        var first = $(this).attr('data-first');
        var second = $(this).attr('data-second');
        var tip = $(this).parent().attr('data-tip');
        obr = kontroluj(first,second,tip);
        $(this).parent().append(obr);
        if(tip == parseInt(first) + parseInt(second))
          zadej_priklad();

    });
     $('.tipecek').keyup(function(){
        $(this).parent().attr('data-tip',$(this).val());
      });
}



 function kontroluj(first,second,tip)
{

         if (tip == parseInt(first) + parseInt(second) ) {
           var obr = "<img src=\"ok.png\">";

          pocetSpravne++;
        }
         else {
          var obr = "<img src=\"chyba.png\">";


           };
        return obr;

};

var pocatecni_nastaveni = function()
{

      zadej_priklad();
       setClicks();

};

$(document).ready(pocatecni_nastaveni);
 
Nahoru Odpovědět
18.5.2014 22:02
Avatar
wimpy
Člen
Avatar
wimpy:18.5.2014 22:25

A jednodušeji:

var idCislo = 0;

var zadej_priklad = function()
{
    idCislo++;
    var sc1 = Math.round(100*Math.random());
    var sc2 = Math.round(100*Math.random());
    soucet = sc1 + sc2;
    idTip = "tip"+idCislo;
    idKontrola = "kontrola"+idCislo;
    var priklad = sc1 + " + " + sc2 + " = " + "<input type=\"text\" id='"+idTip+"' size=\"5\" /> <input type=\"button\" id='"+idKontrola+"' value=\"Zkontroluj!\">";
    $("#priklad").append(priklad);
    $("#"+idKontrola).click(kontroluj);
};

var kontroluj = function()
{
        if ($("#"+idTip).val() == soucet) {var obr = "<img src=\"ok.png\"> <br>"}
         else {var obr = "<img src=\"chyba.png\"> <br>"};
        $('#priklad').append(obr);
        $("#"+idKontrola).unbind("click");
        if (idCislo == 4) {
           $('#priklad').append("Konec");
           return;
        };
        zadej_priklad();
};

var pocatecni_nastaveni = function()
{
      zadej_priklad();
};

$(document).ready(pocatecni_nastaveni);
 
Nahoru Odpovědět
18.5.2014 22:25
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.