let fs = require('fs'), q, lf='\r\n', c, μ, φ, exit = () => process.exit(0), IdőÓrában = p => ( q = p.eie.split(":"), Number(q[0]) + Number(q[1])/60 + Number(q[2])/3600 ), ε = fs .readFileSync( 'ub2017egyeni.txt' ).toString( 'UTF-8' ).split( lf ).slice( 1, -1 ) .map(v => ([Λ, nΘ, kat, eie, nbsz] = v.split(';'), { Λ, Θ: Number(nΘ), kat, eie, bsz: Number(nbsz) })), Ξ = (ζ, ξ) => console.log(`${ ζ }. feladat: ${ ξ }`), Δ = console.log, δ = s => process.stdout.write(s) Ξ (3, `Egyéni indulók: ${ ε.length } fő`) Ξ (4, `Célba érkező női sportolók: ${ ε.filter( v=> v.kat==='Noi' && v.bsz===100 ).length } fő`) δ (`5. feladat: Kérem a sportoló nevét: `) process.stdin.on('readable', () => { if ( ( β = process.stdin.read().toString('utf-8') ) ) { q = ε.find( v => v.Λ === β.trim() ) Δ( `\tIndult egyéniben a sportoló? ${ q ? `Igen` : `Nem` } ` ) if (q) Δ( `\tTeljesítette a teljes távot? ${ q.bsz===100 ? `Igen` : `Nem` } ` ) c = ε .filter( v => ( v.bsz === 100 && v.kat === 'Ferfi' ) ) .reduce( (acc,i) => ( acc.ossz += IdőÓrában(i), acc.n++, acc ), { ossz: 0, n: 0 } ) Ξ ( 7, `Átlagos idő: ${ c.ossz / c.n} óra` ); Ξ ( 8, `A verseny győztesei:` ); μ = ε.filter(v => (v.kat === 'Noi' && v.bsz===100)).sort( (a, b) => IdőÓrában(a)-IdőÓrában(b) )[0] φ = ε.filter(v => (v.kat === 'Ferfi' && v.bsz===100)).sort( (a, b) => IdőÓrában(a)-IdőÓrában(b) )[0] Δ( `\tNők: ${μ.Λ} (${μ.Θ}.) - ${μ.eie}` ); Δ( `\tFérfiak: ${φ.Λ} (${φ.Θ}.) - ${φ.eie}` ); exit() } })