const AMOUNT = 1000; //Младший вес от старшего отличается на 1000, т.к. эта цифра не меняется я объявил ее как константу

let firstInput  = document.querySelector("#first-input"); //Нашел первый инпут в который пользователь будет вводить данные для дальнейшей работы
let secondInput = document.querySelector("#second-input"); //Нашел второй инпут, по анологии с первым
let firstType   = document.querySelector("#first-type"); //Select, пользователь будет выбирать тип веса для первого инпута
let secondType  = document.querySelector("#second-type"); //Select для выбора веса второго инпута

let countFirstWeight = function() { // Функция которая переводит вес первого инпута во второй инпут
    let number = firstInput.value;

    for(let i = 0; i < firstType.selectedIndex; i++) { // Счетчик, тут я смотрю какой тип выбрал пользователь и перевожу его вес в милиграмы
        number *= AMOUNT;
    }
    for(let i = 0; i < secondType.selectedIndex; i++) { // Перевожу милиграмы из первого счетчика в вес который выбран во втором инпуте
        number /= AMOUNT;
    }

    secondInput.value = number; // Вывожу полученое число во второй инпут
};

let countSecondWeight = function() { // Аналогичная функция, перевожу вес второго инпута в первый
    let number = secondInput.value;

    for(let i = 0; i < secondType.selectedIndex; i++) {
        number *= AMOUNT;
    }
    for(let i = 0; i < firstType.selectedIndex; i++) {
        number /= AMOUNT;
    }

    firstInput.value = number;
}


// Запуск функций countFirstWeight и countSecondWeight при изменениях в инпутах

firstInput.addEventListener("input", countFirstWeight);
secondInput.addEventListener("input", countSecondWeight);
firstType.addEventListener("input", countFirstWeight);
secondType.addEventListener("input", countSecondWeight);