Cevap Geçmişi
«« Soruya geri dön
15.09.16 22:15
Bu örnekte sayıların fazla girilmesi durumu da denetleniyor ve fazla girişlerde de true döndürüyor. Bu kısmı kendine göre düzenlersin.     <p>Şanslı sayı :<input type="text" id="olmasi_gereken" value="35,39,74" /></p>
    <p>Aranacak Kelime :<input type="text" id="ornek" value="9152fed6992dfs8593sdffs94sdfs7476sdfsf95" /></p>
    <input type="submit" value="çöz" onclick="javascript:return renklendir()" />
    <script>
        function renklendir() {
            var sansliSayilar = document.getElementById("olmasi_gereken").value.split(",");
            var strOrnek = document.getElementById("ornek").value;
            var girilen = strOrnek.replace(/[^0-9\.]+/g, "");
            if (girilen.length % 2 != 0) {
                alert("Girilen veride sayıların adedi çift olmalı.");
                return;
            }
            // Girilenleri ikişer gruplandır ve grupları bir diziye ekle.
            var girilenDizi = [];
            var i;
            var eslesenSayisi = 0;
            var m;
            for (i = 0; i < girilen.length; i += 2) {
                m = girilen.substr(i, 2);
                // girilenSayilar dizisindeki tekrar eden sayılar gözardı edilecekse alttaki satırı kullan.
                // if (girilenDizi.indexOf(m) == -1) // girilenDizi'ye daha önce eklenmediyse...
                    girilenDizi.push(m);
            }
            // Dizinin elemanlarına tek tek bak. sansliSayilar dizisi içinnde olanları say.
            for (i = 0; i < girilenDizi.length; i++) {
                if (sansliSayilar.indexOf(girilenDizi[i]) > -1)
                    eslesenSayisi++;
            }
            if (eslesenSayisi == sansliSayilar.length) {
                if (girilenDizi.length > eslesenSayisi)
                    alert("Tümü eşleşiyor ancak girdiğiniz veride " + (girilenDizi.length - eslesenSayisi) + " tane fazla sayı var.");
                else
                    alert("Tümü eşleşiyor");                 return true;             }
            else
                alert("Girilen sayıların " + eslesenSayisi + " tanesi eşleşiyor.")
      
            return false;
        }
    </script>
Ekleyen: cevapsitesi
Değiştiren: cevapsitesi
Cevap olarak seçen: canora
15.09.16 22:13
Bu örnekte sayıların fazla girilmesi durumu da denetleniyor ve bu durumdan dolayı fonksiyon sadece true döndürüyor. Bu kısmı kendine göre düzenleyip false döndürmesi gereken yerleri belirlersin.     <p>Şanslı sayı :<input type="text" id="olmasi_gereken" value="35,39,74" /></p>
    <p>Aranacak Kelime :<input type="text" id="ornek" value="9152fed6992dfs8593sdffs94sdfs7476sdfsf95" /></p>
    <input type="submit" value="çöz" onclick="javascript:return renklendir()" />
    <script>
        function renklendir() {
            var sansliSayilar = document.getElementById("olmasi_gereken").value.split(",");
            var strOrnek = document.getElementById("ornek").value;
            var girilen = strOrnek.replace(/[^0-9\.]+/g, "");
            if (girilen.length % 2 != 0) {
                alert("Girilen veride sayıların adedi çift olmalı.");
                return;
            }
            // Girilenleri ikişer gruplandır ve grupları bir diziye ekle.
            var girilenDizi = [];
            var i;
            var eslesenSayisi = 0;
            var m;
            for (i = 0; i < girilen.length; i += 2) {
                m = girilen.substr(i, 2);
                // girilenSayilar dizisindeki tekrar eden sayılar gözardı edilecekse alttaki satırı kullan.
                // if (girilenDizi.indexOf(m) == -1) // girilenDizi'ye daha önce eklenmediyse...
                    girilenDizi.push(m);
            }
            // Dizinin elemanlarına tek tek bak. sansliSayilar dizisi içinnde olanları say.
            for (i = 0; i < girilenDizi.length; i++) {
                if (sansliSayilar.indexOf(girilenDizi[i]) > -1)
                    eslesenSayisi++;
            }
            if (eslesenSayisi == sansliSayilar.length) {
                if (girilenDizi.length > eslesenSayisi)
                    alert("Tümü eşleşiyor ancak girdiğiniz veride " + (girilenDizi.length - eslesenSayisi) + " tane fazla sayı var.");
                else
                    alert("Tümü eşleşiyor");
            }
            else
                alert("Girilen sayıların " + eslesenSayisi + " tanesi eşleşiyor.")
      
            return true;
        }
    </script>
Ekleyen: cevapsitesi
Değiştiren: cevapsitesi
15.09.16 19:11
Bu örnekte sayıların fazla girilmesi durumu da denetleniyor ve bu durumdan dolayı fonksiyon sadece true döndürüyor. Bu kısmı kendine göre düzenleyip false döndürmesi gereken yerleri belirlersin.     <p>Şanslı sayı :<input type="text" id="olmasi_gereken" value="35,39,74" /></p>     <p>Aranacak Kelime :<input type="text" id="ornek" value="9152fed6992dfs8593sdffs94sdfs7476sdfsf95" /></p>     <input type="submit" value="çöz" onclick="javascript:return renklendir()" />     <script>         function renklendir() {             var sansliSayilar = document.getElementById("olmasi_gereken").value.split(",");             var strOrnek = document.getElementById("ornek").value;             var girilen = strOrnek.replace(/[^0-9\.]+/g, "");             if (girilen.length % 2 != 0) {                 alert("Girilen veride sayıların adedi çift olmalı.");                 return;             }             // Girilenleri ikişer gruplandır ve grupları bir diziye ekle.             var girilenDizi = [];             var i;             var eslesenSayisi = 0;             var m;             for (i = 0; i < girilen.length; i += 2) {                 m = girilen.substr(i, 2);                 // girilenSayilar dizisindeki tekrar eden sayılar gözardı edilecekse alttaki satırı kullan.                 // if (girilenDizi.indexOf(m) == -1) // girilenDizi'ye daha önce eklenmediyse...                     girilenDizi.push(m);             }             // Dizinin elemanlarına tek tek bak. sansliSayilar dizisi içinnde olanları say.             for (i = 0; i < girilenDizi.length; i++) {                 if (sansliSayilar.indexOf(girilenDizi[i]) > -1)                     eslesenSayisi++;             }             if (eslesenSayisi == sansliSayilar.length) {                 if (girilenDizi.length > eslesenSayisi)                     alert("Tümü eşleşiyor ancak girdiğiniz veride " + (girilenDizi.length - eslesenSayisi) + " tane fazla sayı var.";                 else                     alert("Tümü eşleşiyor");             }             else                 alert("Girilen sayıların " + eslesenSayisi + " tanesi eşleşiyor.")             return true;         }     </script>
Ekleyen: cevapsitesi
 
En fazla 3 eski durum gösterilir.