JavaScript
const currencyRates = { USD:1.102539, EUR:1, GBP:0.84329691, AUD:1.61545337, CAD:1.44956315, CHF:1.07099756, JPY:120.4893208 }
const currencyConversion = (from, to, val) => {
// FYI: The results may differ for online currency Converters
// because the exchange rate between BUYING and SELLING a currency is different
return ~~(val / currencyRates[from] * currencyRates[to]);
}
function test(from, to, val, result){
const output = currencyConversion(from, to, val)
return output === result ? ["✔",from, to] : ["✘",from, to,output,result]
}
console.log(test("USD","AUD",1000,1465))
console.log(test("EUR","USD",1000,1102))
console.log(test("EUR","EUR",1000,1000))
console.log(test("EUR","GBP",1000,0843))
console.log(test("EUR","AUD",1000,1615))
console.log(test("USD","EUR",1000,907))
console.log(test("USD","USD",1000,1000))
console.log(test("JPY","USD",1000,9))
console.log(test("GBP","EUR",1000,1185))
console.log(test("AUD","EUR",1000,619))
console.log(test("USD","GBP",1000,764))
console.log(test("GBP","AUD",1000,1915))
console.log(test("AUD","USD",1000,682))
console.log(test("AUD","JPY",1000,74579))
/*
console.log(currencyConversion("EUR","USD",1000),1102)
console.log(currencyConversion("EUR","EUR",1000),1000)
console.log(currencyConversion("EUR","GBP",1000),0843)
console.log(currencyConversion("EUR","AUD",1000),1615)
console.log(currencyConversion("USD","EUR",1000),907)
console.log(currencyConversion("USD","USD",1000),1000)
console.log(currencyConversion("GBP","EUR",1000),1185)
console.log(currencyConversion("AUD","EUR",1000),619)
console.log(currencyConversion("USD","GBP",1000),764)
console.log(currencyConversion("GBP","AUD",1000),1915)
console.log(currencyConversion("AUD","USD",1000),682) */