title: Calculate weighted average with numbers and weights stored in two arrays
body: <p>There are already questions on Stack Overflow on how to calculate weighted mean of an <code>[Int:Int]</code> dictionary, including fancy ways using <code>reduce</code>. But I now have the numbers and weights stored in two arrays. The numbers are not guaranteed to be identical. <strong>What is the <em>Swift</em> way to do this? Is it possible using Swift features like <code>reduce</code>? I wish there is a way that does not use a <code>for</code> loop.</strong> Thanks!</p>
  
  <pre><code>let numbers = [1, 2, 4, 3, 2]
  let weights = [10, 20, 30, 15, 25]
  </code></pre>