Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)

Paste

Pasted as JavaScript by parsilofon ( 5 years ago )
//TAREA: En otro archivo distinto,
// Crear una lista de <ol> y <li> que contengan sólo números.
// Convertir esos números a un array y:
// 1. calcular el promedio y mostrarlo en un <em> pre-creado con el texto "El promedio es..."
// 2. obtener el número más pequeño y mostrarlo en un <em> pre-creado con el texto "El número más pequeño es..."
// 3. obtener el número más grande y mostrarlo en un <em> pre-creado con el texto "El número más grande es..."
// 4. obtener el número que más se repite y mostrarlo en un <em> pre-creado con el texto "El número más frecuente es..."

const $listaOrdenada = document.querySelectorAll("li")
const $promedio = document.querySelector("#promedio")
const $masChico = document.querySelector("#mas-chico")
const $masGrande = document.querySelector("#mas-grande")
const $masRepetido = document.querySelector("#mas-repetido")
const $boton = document.querySelector("#boton")
const crearTexto = document.createTextNode("")
const crearTexto1 = document.createTextNode("")
const crearTexto2 = document.createTextNode("")
const crearTexto3 = document.createTextNode("")


function calcularPromedio(x) {
    let prom = 0
    for (let i = 0; i<x.length; i++) {
        prom += Number(x[i].textContent)
    }
    return prom / x.length
}

function calcularMasGrande(x) {
    let grande = Number(x[0].textContent)
    for (let i = 0; i<x.length; i++) {
        grande = Number(x[i].textContent) > grande ? Number(x[i].textContent) : grande
    }
    return grande
}

function calcularMasChico(x) {
    let chico = Number(x[x.length-1].textContent)
    for (let i = 0; i<x.length; i++) {
        chico = Number(x[i].textContent) < chico ? Number(x[i].textContent) : chico
    }
    return chico
}

function calcularMasRepetido(x) {
    let repe = 0
    let repeArr = []
    for (let i = 0; i < x.length; i++) {
        let contador = 0
        for (k = i+1; k < x.length; k++) {
            if (x[i].textContent === x[k].textContent) { contador++ }            
        }
        repeArr.push(contador)
    }
    for (let h = 0; h < repeArr.length; h++) {
        repe = repeArr[h] > repe ? Number(x[h+1].textContent) : repe 
    }
    return repe
}

$boton.onclick = function() {
    crearTexto.textContent = calcularPromedio($listaOrdenada)
    $promedio.appendChild(crearTexto)
    crearTexto1.textContent = calcularMasChico($listaOrdenada)
    $masChico.appendChild(crearTexto1)
    crearTexto2.textContent = calcularMasGrande($listaOrdenada)
    $masGrande.appendChild(crearTexto2)
    crearTexto3.textContent = calcularMasRepetido($listaOrdenada)
    $masRepetido.appendChild(crearTexto3)
    
}

 

Revise this Paste

Your Name: Code Language: