My question: I don't understand why the last output has two letters inside. Can you please fix my code? Write a function `mostFrequentLetter(string)` that takes a string as an argument and returns the character that appears the most often. In case of a tie, you may return any of the characters. The string will have at least one character. Examples: console.log(mostFrequentLetter("apple")); // "p" console.log(mostFrequentLetter("banana")); // "a" console.log(mostFrequentLetter("What about a longer string?")); // " "   My code:   function countChar(string) { letcountChar = {}; for (leti = 0; i < string.length; i++) { letchar = string[i];//the future key elements if (charincountChar){//create keys countChar[char]++;//create values }else { countChar[char] = 1;//create values } } returncountChar; } function mostFrequentLetter(string) { letmaxCount = countChar(string); letnewArr = Object.entries(maxCount); letmax = newArr[0][1]; letresult = []; for (leti = 0; i < newArr.length; i ++){ letelChar = newArr[i][0] letelNum = newArr[i][1]; if (elNum > max){ max = elNum; result.push(elChar); } } return result.join(); } console.log(mostFrequentLetter("apple"));  console.log(mostFrequentLetter("banana")); console.log(mostFrequentLetter("What about a longer string?"))   My out put: "p" "a" "a", " "

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter15: Recursion
Section: Chapter Questions
Problem 8SA
icon
Related questions
Question

My question: I don't understand why the last output has two letters inside. Can you please fix my code?

Write a function `mostFrequentLetter(string)` that takes a
string as an argument and returns the character that appears the
most often. In case of a tie, you may return any of the characters.
The string will have at least one character.

Examples:
console.log(mostFrequentLetter("apple")); // "p"
console.log(mostFrequentLetter("banana")); // "a"
console.log(mostFrequentLetter("What about a longer string?")); // " "
 
My code:
 
function countChar(string) {
letcountChar = {};

for (leti = 0; i < string.length; i++) {
letchar = string[i];//the future key elements

if (charincountChar){//create keys
countChar[char]++;//create values
}else {
countChar[char] = 1;//create values
}
}
returncountChar;
}

function mostFrequentLetter(string) {
letmaxCount = countChar(string);

letnewArr = Object.entries(maxCount);
letmax = newArr[0][1];
letresult = [];

for (leti = 0; i < newArr.length; i ++){
letelChar = newArr[i][0]
letelNum = newArr[i][1];

if (elNum > max){
max = elNum;
result.push(elChar);
}
}
return result.join();

}

console.log(mostFrequentLetter("apple")); 
console.log(mostFrequentLetter("banana"));
console.log(mostFrequentLetter("What about a longer string?"))
 
My out put:
"p"
"a"
"a", " " 
 
 
/*****
Write a function `most Frequent Letter(string)` that takes
string as an argument and returns the character that appears the
most often. In case of a tie, you may return any of the characters.
The string will have at least one character.
Examples:
console.log(most Frequent Letter("apple")); // "p"
console.log(most Frequent Letter("banana")); // "a"
console.log(most Frequent Letter("What about a longer string?")); //
****/
Transcribed Image Text:/***** Write a function `most Frequent Letter(string)` that takes string as an argument and returns the character that appears the most often. In case of a tie, you may return any of the characters. The string will have at least one character. Examples: console.log(most Frequent Letter("apple")); // "p" console.log(most Frequent Letter("banana")); // "a" console.log(most Frequent Letter("What about a longer string?")); // ****/
function countChar(string) {
let countChar = {};
}
for (let i = 0; i < string.length; i++) {
let char = string[i];//the future key elements
if (char in countChar) {//create keys
countChar[char]++;//create values
}else {
countChar[char] = 1;//create values
}
}
return countChar;
function mostFrequent Letter (string) {
let maxCount = countChar(string);
let newArr = Object.entries (maxCount);
let max = newArr [0] [1];
let result = [];
for (let i = 0; i < newArr.length; i++){
let elChar = newArr[i] [0]
let elNum = newArr[i] [1];
}
if (elNum > max) {
max = elNum;
result.push(elChar);
return result.join();
Transcribed Image Text:function countChar(string) { let countChar = {}; } for (let i = 0; i < string.length; i++) { let char = string[i];//the future key elements if (char in countChar) {//create keys countChar[char]++;//create values }else { countChar[char] = 1;//create values } } return countChar; function mostFrequent Letter (string) { let maxCount = countChar(string); let newArr = Object.entries (maxCount); let max = newArr [0] [1]; let result = []; for (let i = 0; i < newArr.length; i++){ let elChar = newArr[i] [0] let elNum = newArr[i] [1]; } if (elNum > max) { max = elNum; result.push(elChar); return result.join();
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 2 images

Blurred answer
Knowledge Booster
Function Arguments
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning