Проблем с входни данни от задача Find Avarage

print
array
gets
tasks
loops

#1

Здравейте,

Имам проблем с взимането на входните данни от задачата Find Avarage.
Кода локално ми гърми със следната грешка:

avarageSum.js:26 arr[i] = gets().split(’ ').map(Number);

Когато го кача в judje минава, но пък връща някакви странни резултати - на първата проверка трябва да върне 1.00, а при мен излиза 277.75. Локално съм проверил начина на пресмятане и излиза вярно.

    const getGets = (arr) => {
        let index = 0;

        return () => {
            const toReturn = arr[index];
            index += 1;
            return toReturn;
        };
    };

    // this is the test
    const test = [
        '4',
        '1',
        '1',
        '1',
    ];

    const gets = this.gets || getGets(test);
    const print = this.print || console.log;

    let numbers = +gets();
    let total = 0;
    let arr = [];

    for (let i = 0; i < numbers; i++) {
        arr[i] = gets().split(' ').map(Number);
    }

    for (let i = 0; i < arr.length; i++) {
        total += arr[i];
    }

    let avg = total / arr.length;
    print(avg.toFixed(2));

#2

Защо split ваш, при положение че ти идват по едно на нов ред?

    for (let i = 0; i < numbers; i++) {
        arr[i] = +gets();
    }

#3

Защото ми изписваше NaN при крайния резултат. След като се коригирах, направих една проверка и се оказа, че в тестовите данни съм изпуснал четвъртия елемент и масива ми се е създавал - 1, 1, 1, NaN

Благодаря :slight_smile: