Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Write a modeMaker function [ 6 points ] Write a function modeMaker ( ) that forms a closure such that the function it returns can

Write a modeMaker function [6 points]
Write a function modeMaker() that forms a closure such that the function it returns can be used with your reduce() function above to find the mode of an array. The mode of an array is the value that appears the most frequently (so in the $arr above, the mode is 5). To do this, you will need an array called $seen that keeps the count of times an element has been examined At the end of the reduce function, the $seen array should look like the following for the $arr above:
Array
(
[10]=>1
[5]=>3
[3]=>1
[1]=>1
[2]=>1
[7]=>1
)
Note that the closure you generate should always be returning the current mode for what it has seen so far (so it will either be the current mode, or the new element passed in). The following is a start for modeMaker:
function modeMaker(){
$seen = array();
return function($current, $new) use (&$seen){
// your code that uses $seen goes here
};
}
$mode = modeMaker();
$arr = array(10,5,3,5,1,2,5,7,4);
print("Mode: ". reduce($arr, $mode)."
")

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access with AI-Powered Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions