Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const { log } = console
- const differenceBetween = ( x, y ) => x - y
- const greater = ( x, y ) => ( x > y ) ? x : y
- const takeTheBiggestNumberFrom = ( list ) => list.sort( greater )[ 0 ]
- const getFrom = ( list ) => ( {
- the: ( something ) => Math[ something ](...list ),
- yourValues: () => list.join( ', ' )
- } )
- const maxAndMinNumbers = ( getFromList ) => [
- getFromList.the( 'max' ),
- getFromList.the( 'min' )
- ]
- const difference = ( fromList ) => differenceBetween(...maxAndMinNumbers( fromList ) )
- const andShowTheResult = ( getFromList ) => `
- O maior entre os números ${ getFromList.yourValues() } é: ${ getFromList.the( 'max' ) }.
- A diferença entre o maior e o menor (${ getFromList.the( 'min' ) } ) é: ${ difference( getFromList ) }!`
- const orShowTheErrorMessage = ( list ) => `
- Verifique os números ${ list },
- o maior não pode ser 0!
- `
- const showTheBiggestAndTheDifferenceFrom = (...list ) =>
- ( takeTheBiggestNumberFrom( list ) )
- ? andShowTheResult( getFrom( list ) )
- : orShowTheErrorMessage( list )
- log( showTheBiggestAndTheDifferenceFrom( 0, -20 ) )
- log( showTheBiggestAndTheDifferenceFrom( 1, 1 ) )
- log( showTheBiggestAndTheDifferenceFrom( -10 ) )
- log( showTheBiggestAndTheDifferenceFrom( 20, -9 ) )
- log( showTheBiggestAndTheDifferenceFrom( 19, 9 ) )
- log( showTheBiggestAndTheDifferenceFrom( 19 ) )
- log( showTheBiggestAndTheDifferenceFrom( 19, 19 ) )
- log( showTheBiggestAndTheDifferenceFrom( 11, 13, 19 ) ) // 19
- log( showTheBiggestAndTheDifferenceFrom( 19, 13, 11 ) ) // 19
- log( showTheBiggestAndTheDifferenceFrom( 500, 666, 166 ) ) // 19
Add Comment
Please, Sign In to add comment