sakrab
@sakrab
Не будь побежден злом, но побеждай зло добром...

Проверить самого себя?

Всем привет. Почти методом тыка наковырял мини алгоритм (если можно его так назвать), но если я на него гляжу, то не могу понять как он работает =)

Задача 1:
- 2 строки из цифр
- Найти сколько цифр из одного числа есть в другом;

Задача 2:
- 2 строки из цифр (все те же самые)
- Найти сколько цифр из одного числа, находятся по одному индексу в другом числе, т.е.
1234
1256

var x = '1234'
var a = '1235'
var z = 0
var f = 0
for ( var i in a ){	
    for( var j in x ){
        if( x[i]  ==  a[j] ){
            z += 1;
        if( i[0]  ==  j[0] ){
            f += 1;
        }
    }
}


Может кто разъяснить как оно все происходит:
for (var i in a){
    //тут в i попадает 0123
}
for (var j in x){
    //тут в i попадает 0123
}
if(x[i] == a[j]){
    //тут сравниваются по индексу? Если false то for идет по другим индексам?
}


Спасибо. +500 к семейному благополучию.
  • Вопрос задан
  • 243 просмотра
Пригласить эксперта
Ответы на вопрос 1
VladimirAndreev
@VladimirAndreev
php web dev
Задача 1.
var a = 1234;
var b = 1235;
var cnt = [];
for(i in a){
    if(b.indexOf(a[i]) != -1){
        cnt[a[i]] = a[i];
    }
}
console.log(cnt.length);


Задача 2.
var a = 1234;
var b = 1235;
var cnt = 0;
var x = a.lenght>b.lenght ? a:b;
for(i in x){
    if(a[i]==b[i]){
        cnt++;
    }
}
console.log(cnt);


так вроде как проще
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы