Професионална програма
Loading...
+ Нов въпрос
MarinaPincheva avatar MarinaPincheva 1 Точки

Equal Pairs -For loop-More exercises

Здравейте,

Моля за помощ относно по-долу цитарото условие. Някой има ли решение?

 

зад. 8

Дадени са 2*n-на брой числа. Първото и второто формират двойка, третото и четвъртото също и т.н. Всяка двойка има стойност – сумата от съставящите я числа. Напишете програма, която проверява дали всички двойки имат еднаква стойност или печата максималната разлика между две последователни двойки. Ако всички двойки имат еднаква стойност, отпечатайте "Yes, value = {Value}" + стойността. В противен случай отпечатайте "No, maxdiff = {Difference}" + максималната разлика.

 

 

Тагове:
0
Programming Basics with JavaScript 11/08/2020 16:27:18
willystyle avatar willystyle 2261 Точки
function solve(input) {
    let pairsCount = Number(input.shift());
    let maxDifference = 0;
    let firstNum = Number(input.shift());
    let secondNum = Number(input.shift());
    let previousSum = firstNum + secondNum;
    for (let i = 1; i < pairsCount; i++) {
        firstNum = Number(input.shift());
        secondNum = Number(input.shift());
        let currentSum = firstNum + secondNum;
        let currentDifference = Math.abs(currentSum - previousSum);
        if (currentDifference > maxDifference) {
            maxDifference = currentDifference;
        }
        previousSum = currentSum;
    }
    console.log(maxDifference ? `No, maxdiff=${maxDifference}` : `Yes, value=${previousSum}`);
}

 

0
MarinaPincheva avatar MarinaPincheva 1 Точки

Благодаря много! Все още в basics не съм се сблъсквала с input.shift, но ще е полезно, малко advance. :)

1