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.